shkoda @ 12.01.16, 20:19
,
В общем, пришлось отложить это задание и делать другое, но зато когда вернулся к выполнению уже под другим углом взглянул на это всё и вот что получилось
надеюсь может кому поможет в будущем
Если ДокументОснование.Вид()="БольничныйЛист" Тогда
ДатаНачалаБоль = ДокументОснование.ДатаНачала;
ДатаОкончанияБоль = ДокументОснование.ДатаОкончания;
ТабельныйНомер = СокрЛП(Сотрудник.Код);
Состояние("Запуск OLE, ожидайте...");
БазаОле=СоздатьОбъект("V77S.Application");
КаталогБазыОЛе = "\\контора\1C\ЗиК\";
ПользовательОле = "Вася";
ПарольОле = "111";
МонопольныйРежимOLE = ""; // для немонопольного запуска указать пустую строку!
ЗапускБезЗаставки = 1; // для появления заставки (например, чтобы наблюдать
// процесс запуска базы OLE визуально) поставьте здесь "0"
РезультатПодключения = БазаОле.Initialize ( БазаОле.RMTrade , "/d" +
СокрЛП(КаталогБазыОле) + " /n" +
СокрЛП(ПользовательОле)+ " /p" +
СокрЛП(ПарольОле) + МонопольныйРежимOLE,
?(ЗапускБезЗаставки = 1,"NO_SPLASH_SHOW",""));
Если РезультатПодключения = 0 Тогда
Предупреждение("Не удалось подключится к указанной базе - проверьте вводные!");
КонецЕсли;
ОлеЗапрос = БазаОле.CreateObject("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(ОлеЗапрос)
|Период с '"+ДатаОкончанияБоль+"' по '"+ДатаОкончанияБоль+"';
|Владелец = Справочник.Сотрудники.Наименование;
|Наименование = Справочник.Сотрудники.ФизическоеЛицо;
|Оклад = Справочник.Сотрудники.ОсновноеНазначение.Владелец.ОсновноеНазначение.Оклад;
|УникальныйНомер = Справочник.Сотрудники.Код;
|Условие(УникальныйНомер = """+ТабельныйНомер+""");
|Группировка Наименование;
|"//}}ЗАПРОС
;
Если ОлеЗапрос.Выполнить(ТекстЗапроса) = 0 Тогда
Сообщить("При обработке запроса произошла ОШИБКА");
Возврат;
Иначе
//Сообщить("Запрос выполнен УСПЕШНО");
КонецЕсли;
Пока ОлеЗапрос.Группировка("Наименование")=1 Цикл
Оклад = ОлеЗапрос.Оклад;
Владелец = ОлеЗапрос.Владелец;
Сообщить("Оклад сотрудника " + СокрЛП(Владелец) + " в период больгичного с " + ДатаНачалаБоль + " по " + ДатаОкончанияБоль + " равен " + Оклад + " грн.");
КонецЦикла;
ОкладЗаДень = ( Оклад * 12 ) / 365;
СуммаСтар = ОкладЗаДень * КвоДней * (ДокументОснование.ПроцентОплаты / 100);
СуммаСтар = СуммаСтар - (СуммаСтар * 0.18); // НДФЛ
СуммаКУдержанию = Макс(0,СуммаНов-СуммаСтар);
СрЗпСтар = СуммаСтар/КвоДней;
БазаОле = "";
КонецЕсли;
Всем спасибо, тему можно закрывать!