v7: запрос не выполняется через оле
☑
0
Lensky
01.08.11
✎
11:27
БазаОле.ExecuteBatch("глТЗ = СоздатьОбъект(""СписокЗначений"")");
СписокДоговоров77 = БазаОле.глТЗ;
СписокДоговоров77.ДобавитьЗначение(СокрЛП(ExcelЛист.Cells(ТекущаяСтрока, 6).Value));
СписокДоговоров77.ДобавитьЗначение(СокрЛП(ExcelЛист.Cells(ТекущаяСтрока, 7).Value));
СпрOLE = БазаОле.CreateObject("Справочник.Договоры");
ЗапросОле = БазаОле.CreateObject("Запрос");
ДН="01.01.05";
ДК=СокрЛП(ExcelЛист.Cells(ТекущаяСтрока, 10).Value);
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с '" +Формат(ДН, "ДЛФ = Д")+ "' по '"+Формат(ДК, "ДЛФ = Д")+"';
|Договоры = Справочник.Договоры.ТекущийЭлемент;
|НомерДоговора = Справочник.Договоры.НомерДоговора;
|ДопСоглашение = Справочник.Договоры.НомерПП;
|Группировка Договоры без групп;
|Условие(НомерДоговора = глТЗ.ПолучитьЗначение(1));
|"//}}ЗАПРОС
;
Если ЗапросОле.Выполнить(ТекстЗапроса)=0 Тогда
Сообщить("Запрос не выполнен!");
Возврат;
КонецЕсли;
Произошла исключительная ситуация (1С:Предприятие): Условие(НомерДоговора = глТЗ.ПолучитьЗначение(1) <<?>> );
Запрос[7] : Ошибка в выражении 'глТЗ'
глТЗ - переменная в гл. модуле 77 ЭКСПОРТНАЯ
1
Rie
01.08.11
✎
11:33
2
Ёпрст
01.08.11
✎
11:33
(0) в оле-запросе доступен и работает только массив, объявленный в оле базе как экспортный в глобальном модуле.
А вот в элементы этого массива ужо и пихай свой СЗ или ТЗ..
3
Lensky
01.08.11
✎
11:41
спасибо (1)(2)
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан