Имя: Пароль:
1C
1C 7.7
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)
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан