![]() |
ЗиК - поиск последнего документа-исправления отпуска Взял за основу для анализа оставшихся к начислению дней отпусков отчет с инфостарта. В нем для анализа документов исправлений отпусков используется следующая функция: Функция ПолучитьПодчиненныйДокументОтпуск(ДокОсн) ПодчДокОтп = СоздатьОбъект("Документ"); ПодчДокОтп.УстановитьФильтр(1, 0); ПодчДокОтп.ВыбратьПодчиненныеДокументы(,,ДокОсн); Пока ПодчДокОтп.ПолучитьДокумент() = 1 Цикл Если ПодчДокОтп.Вид() = "НачислениеОтпуска" Тогда Возврат ПодчДокОтп.ТекущийДокумент(); КонецЕсли; КонецЦикла; Возврат 0; КонецФункции НО, когда вводится несколько исправлений отпуска, то второе исправление вводится на основании первого и т.д., то есть последующие исправления находятся в подчинении не первоначального документа начисления отпуска, а своего непосредственного предшественника. Как-же правильно написать процедуру? Анализировать подчиненные документы документов-исправлений через рекурсию? |
0-Looking > ну и какие проблемы? там-же дальше при заполнении таблиц все документы, имеющие корректировку, удаляются. в итоге остается только последняя корректировка. |
Текущее время: 19:50. Часовой пояс GMT +3. |