Как создать запрос через ОЛЕ соединение

  • Автор темы nikh848
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N

nikh848

#1
Привет всем, подскажите пож почему не работает запрос из 1с 8.1:
Код:
//глПодключение77 - соединение базу 77 через оле
БухИтоги = глПодключение77.CreateObject("БухгалтерскиеИтоги");
БухИтоги.Запрос(ЭлементыФормы.НачПериода, ЭлементыФормы.КонПериода);
БухИтоги.ВыбратьСчета();
Пока БухИтоги.ПолучитьСчет() = 1 Цикл
БухИтоги.ДО();
ЭлементыФормы.ПолеТекстовогоДокумента1.ДобавитьСтроку(БухИтоги.ДО());
КонецЦикла;
Выводит ошибку:
Метод объекта не обнаружен (Запрос)
БухИтоги.Запрос(ЭлементыФормы.НачПериода, ЭлементыФормы.КонПериода);
Пробовал через ВыполнитьЗапрос - то же самое. В чем может быть причина?
 
W

WildAnther

#2
Так вроде нормально всё. Единственно сомнения наводят ЭлементыФормы.НачПериод. Можно явно представить переменую попробовать.
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#3
таки можно поглядеть в толадчике какие значения в переменных - БухИтоги (действительно ли создался объект нужного типа), ЭлементыФормы.НачПериода, ЭлементыФормы.КонПериода
 
G

Gman

#4
Выводит ошибку:
Метод объекта не обнаружен (Запрос)
Во-первых, использовать надо
ВыполнитьЗапрос(<НачалоПериода>, <КонецПериода>, <ФильтрПоСчетам>, <ФильтрПоКоррСчет>, <Валюта>, <ТипИтогов>, <Периодичность>, <ТипСуммы>)
БухИтоги.Запрос(ЭлементыФормы.НачПериода, ЭлементыФормы.КонПериода);
Во-вторых, в 8.x Дата имеет формат '01.01.2001 00:00:00', а 7.7 Дата '01.01.01', используйте функцию Формат().
 
N

nikh848

#5
Во-первых, использовать надо
ВыполнитьЗапрос(<НачалоПериода>, <КонецПериода>, <ФильтрПоСчетам>, <ФильтрПоКоррСчет>, <Валюта>, <ТипИтогов>, <Периодичность>, <ТипСуммы>)

Во-вторых, в 8.x Дата имеет формат '01.01.2001 00:00:00', а 7.7 Дата '01.01.01', используйте функцию Формат().
Точно, не работал из-за формата даты,
Попробовал в следующем виде и запрос выполнился:

БухИтоги = глПодключение77.CreateObject("БухгалтерскиеИтоги");
БухИтоги.ВыполнитьЗапрос("01.10.09","31.10.09");
БухИтоги.ВыбратьСчета();
Пока БухИтоги.ПолучитьСчет() = 1 Цикл
БухИтоги.ДО();
ЭлементыФормы.ПолеТекстовогоДокумента1.ДобавитьСтроку(БухИтоги.ДО());
КонецЦикла;

Спасибо, за подсказку!
 
Статус
Закрыто для дальнейших ответов.