|  0
            - 27.09.2012 - 11:27
         | Доброго времени суток! Подскажите, пожалуйста, как организовать обратный порядок выборки бухгалтерского запроса? мне нужно получать последние документы поступления, а не первые. |  | 
|  1
            - 27.09.2012 - 11:27
         | Мой бух.запрос Ит41_1ДП=СоздатьОбъект("БухгалтерскиеИтоги"); Ит41_1ДП.ИспользоватьСубконто(ВидыСубконто.Номенкл атура,ПеремНоменклатура,2); Ит41_1ДП.ВыполнитьЗапрос(ДобавитьМесяц(ПеремТекДок .ДатаДок,-24),ПеремТекДок,"41.1",,,1,"Операция",); Ит41_1ДП.ВыбратьПериоды(,1); Пока Ит41_1ДП.ПолучитьПериод()=1 Цикл Сообщить("Ит41_1ДП.Операция "+Ит41_1ДП.Операция+" Кол: "+Ит41_1ДП.ДО("К")); КонецЦикла; |  | 
|  2
            - 27.09.2012 - 12:10
         | никак |  | 
|  3
            - 27.09.2012 - 12:15
         | Ит41_1ДП.ПолучитьПериод() вот сюда можно подсовывать даты с конца но внутри даты выборка все равно будет по возрастанию |  | 
|  4
            - 27.09.2012 - 12:25
         | а если нужен изврат, то: Процедура Получаем(Ит41_1ДП) Пока Ит41_1ДП.ПолучитьПериод()=1 Цикл Операция = СоздатьОбъект("Операция"); Операция.НайтиОперацию(Ит41_1ДП.Операция.Документ) ; Количество = Ит41_1ДП.ДО("К"); Получаем(Ит41_1ДП); Сообщить("Ит41_1ДП.Операция " + Операция +" Кол: "+Количество) КонецЦикла КонецПроцедуры //******************************************* Процедура Сформировать() Ит41_1ДП=СоздатьОбъект("БухгалтерскиеИтоги"); Ит41_1ДП.ИспользоватьСубконто(ВидыСубконто.Номенкл атура,ПеремНоменклатура,2); Ит41_1ДП.ВыполнитьЗапрос(ДобавитьМесяц(ПеремТекДок .ДатаДок,-24),ПеремТекДок.ДатаДок,"41.1",,,1,"Операция",); Ит41_1ДП.ВыбратьПериоды(,1); Получаем(Ит41_1ДП) КонецПроцедуры |  | 
|  5
            - 27.09.2012 - 12:32
         | (4)рекурсия? спасибо за ответ, раз обратного порядка нет, то тогда скорее всего ограничусь прямой выборкой в ТЗ и ее обратным перебором. просто при изначально обратной выборке можно было останавливать цикл по мере накопления нужного количества, но думаю не столь критично, т.к. это разовая операция заполнения начальных остатков. |  | 
|  6
            - 27.09.2012 - 12:37
         | да |  | 
|  7
            - 27.09.2012 - 12:40
         | *для эстетов цикл в рекурсии можно заменить на условный оператор |  | 
|  8
            - 27.09.2012 - 13:04
         | Вопрос достаточно диковат... Если вспомнить, как организовано хранение данных: остатки и обороты. Причем остатки всегда на начало периода. Остатки на конец периода есть сумма начальных остатков + обороты. Что совершенно естественно: при добавлении/изменении оборотов в текущем периоде остатки вообще не корректируются, а внутри прошлого периода порождают изменение остатков "вперед" с приемлемо простым (и как следствие, приемлемо быстрым алгоритмом). Попробуйте наоборот, когда хранятся остатки на конец периода... "потому и не кусает"... |  | 
|  9
            - 28.09.2012 - 07:57
         | (8)от души благодарю за развернутый информативный ответ! |  | 
| Интернет-форум Краснодарского края и Краснодара |