Запрос к итогам по OLE собираю по OLE выписки за день из разных бухгалтерских баз. И вот косяк. Выбираются не все проводки, в конкретном примере 15 из 22. Запрос в "родной" базе работает: Ит = CreateObject("БухгалтерскиеИтоги"); Ит.ИспользоватьСубконто(ВидыСубконто.БанковскиеСчета,,1); Ит.ВыполнитьЗапрос(НачДата, КонДата, "51,52",,, 1, "Проводка", "С"); Ит.ВыбратьСубконто(); Пока Ит.ПолучитьСубконто(1) = 1 Цикл Счет = Ит.Субконто(1).Номер; Сообщить(Счет); Сч = 0; Ит.ВыбратьПериоды(0); Пока Ит.ПолучитьПериод() = 1 Цикл Сч = Сч + 1; Сообщить(Сч); Сообщить(Ит.Операция.СодержаниеПроводки); Дт = Ит.ВыбранаПоДт(); Кт = Ит.ВыбранаПоКт(); Опер = Ит.Операция; СчетДт = Опер.Дебет.Счет; СчетКт = Опер.Кредит.Счет; КонецЦикла; КонецЦикла; а вот по OLE выбирает не все проводки выписки: Ит = БазаOLE.CreateObject("БухгалтерскиеИтоги"); Ит.ИспользоватьСубконто(БазаOLE.ВидыСубконто.БанковскиеСчета,,1); Ит.ВыполнитьЗапрос(НачДата, КонДата, "51,52",,, 1, "Проводка", "С"); Ит.ВыбратьСубконто(); Пока Ит.ПолучитьСубконто(1) = 1 Цикл ...... что за заморочка. Заменены всего 2 строчки алгоритма |
Посмотрел, что не выбирает? С датами ничего не связано? Процедура OLE твою форму не видит... Как собственно, все окружение клиента. |
И вообще, если оле-сервер затягивает с ответом (при долгой выборке, например), клиент может потерять соединение с сервером. Где этот таймаут регулируется - мне неведомо. Итог: не используй втуне. |
используй евал в фильтре по субконто. . Ит = Оле.CreateObject("БухгалтерскиеИтоги"); ОлеФ=Оле.CreateObject("Справочник.Фирмы"); ОлеК=Оле.CreateObject("Справочник.Контрагенты"); ОлеД=Оле.CreateObject("Справочник.Договоры"); ОлеФ.ВыбратьЭлементы(); Пока ОлеФ.ПолучитьЭлемент()=1 Цикл Сообщить(СимволТабуляции+ТекущееВремя()+": выполняется запрос на извлечение бух.данных по "+ОлеФ.Наименование); Ит.ИспользоватьСубконто(Оле.EvalExpr("ВидыСубконто.Контрагенты")); Ит.ИспользоватьСубконто(Оле.EvalExpr("ВидыСубконто.Договоры")); Ит.ИспользоватьРазделительУчета(ОлеФ.ТекущийЭлемент()); |
(1,2)По скорости работает нормально, но по OLE выборка обрывается на 15-ой проводке (сч=15). В родной базе - все ОК. Выбираю за 1 день (3) щас попробую |
(3)c Eval выбирает, но точно также неправильно. Что за лажа такая |
вот щас просто скопировал выписку за другой день, то есть в одном дне 2 одинаковых. Родная база видит все проводки, по OLE только одну выписку |
морочил всем голову, все работает, смотрел в разных базах. ПипеЦ!! Приношу извинения )) |
[quote=USSR;26292180]ПипеЦ!! Приношу извинения )) [/quote] Значит пора в отпуск... |
Текущее время: 04:08. Часовой пояс GMT +3. |