Бух.итоги: разница в оборотах #85058


#0 by Vitlick
Создаю запрос по Бух.Итогам(Субконто, КорСубконто,Период-месяц). После выполнения запроса сразу вычисляю ДО. Затем разворачиваю по Субконто, КорСубконто,Период и входе детализации считаю ит. сумму деб.оборота, кот.не идет с суммой ДО, вычисленной вначале.
#1 by Diter
Переиндексируй, пересчитай итоги.Если не поможет - давай код запроса и разворота по субконто
#2 by Vitlick
Дело похоже не в пересчете итогов, иднексы восстанавливал: ехес _1sp_DBReindex (база SQL)Привожу текст (в скобках [] - доп. вариант исполнения, но ничиго не меняется):ИТ = СоздатьОбъект("БухгалтерскиеИтоги");Сообщить(ИтСумма);Есть подозрения, что это из-за проводок типа: Д10.1 К60.5 (-
#3 by IAm
Есть подозрения, что это из-за того, что в начале Ит.ДО возвращает общую сумму оборота по 10 счету, а в цикле только обороты в корреспонденции с 60 счетом. Но это только подозрения, не верь им.
#4 by Vitlick
Во-первых, в инструкции ВыполнитьЗапрос явно указано, что считать надо корреспонденции между счетами и толко обороты без остатков.Ну а во-вторых ИТ.ДО < ИтСумма;
#5 by Стеrva
Одновременно по периодам и по корсчетам/корсубконто - самый глючный вариант. Причем в некоторых случаях работает, в некоторых нет. Когда точно начинает глючить лично мне установить пока не удалось - аналогичная конструкция в одном случае работает, в другом нет.Из серии танцев с бубном - Использовать метод КорДО, явно перед циклом сделать ВыбратьСчета, ПолучитьСчет, ВыбратьКорСчета, ПолучитьКорСчет
#6 by Vitlick
Спасибо Стеrva. Какой же я идиот, ну конечно, же КорДО и КорКО.Проблема решена. Всем еще раз спасибо.
#7 by IAm
А, ну да, дебетовый оборот каждого субконто номенклатуры ты помножил на количество периодов. Не ДО а КорДО безусловно. Это во-первых. Во вторых ДО всегда возвращает дебетовый оборот счета, независимо от указанных в "инструкции" коррсчетов.
#9 by Стеrva
В том то и дело, что не всегда. Во-первых, зависит от релиза, во-вторых, от дополнительных условий. Поэтому я всегда "предохраняюсь" - использую только КорДО, КорКО, не надеясь на случай ;)
#10 by Vitlick
теперь ИТ.ДО = ИтСумма
#11 by Vitlick
ИМХО Нет тут никакаих танцев с бубном и разницы релизах.ДО - возвращает оборот в корреспонденции с корсчетом, указанным в ВыполнитьЗапрос в дебет выбранного счета(субконто)КорДО - возвращает оборот в коренспонденции с корсчетом, указанным в ВыполнитьЗапрос и выбранным КорСчетом или КорСубконто в дебет выбранного счета(субконто)
#12 by Стеrva
Есть. Т.е. ДО работает как КорДО. Но не всегда. Это чтобы работать интересней было ;)
#13 by Vitlick
Не может ДО работать как КорДО.В данном случае, я просто забыл о существовании методов КорДО и КорКО. Уже несколько раз на эти грабли наступал. Не часто приходится писать запросы к бух итогам.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям