Обход строк документа

// Перебор строк документов
Док = СоздатьОбъект(“Документ”);
Док.ВыбратьДокументы(Дата1, Дата2);
Пока Док.ПолучитьДокумент() = 1 Цикл
Если Док.Вид() = “ВидДокумента“ Тогда
// Далее идет собственно обход строк
Док.ВыбратьСтроки();
Пока Док.ПолучитьСтроку() = 1 Цикл
// Обработка строки документа
// Доступ к реквизитам строки документа происходит через Док.Реквизит
КонецЦикла;
КонецЕсли;
КонецЦикла;

Комментарии | опубликовано: 6 Май 2007, 17:45

Перебор документов с помощью запроса

Запрос = СоздатьОбъект(“Запрос”);
ТекстЗапроса = “
|Период с Дата1 по Дата2;
|ОбрабатыватьДокументы Проведенные;
|Реквизит = Документ.ВидДокумента.Реквизит;
|Группировка Реквизит;
|Группировка Документ;
|Группировка НомерСтроки;”;
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Предупреждение(“Запрос по документам не выполнился!”);
Возврат;
КонецЕсли;
// Теперь вся выборка находится в объекте “Запрос”

Комментарии | опубликовано: 4 Май 2007, 15:34

Перебор документов "в лоб"

// Перебор всех документов
Док = СоздатьОбъект(“Документ”);
Док.ВыбратьДокументы(Дата1, Дата2);
Пока Док.ПолучитьДокумент() = 1 Цикл
Если Док.Вид() = “ВидДокумента” Тогда
// Дальнейшая обработка Док.ТекущийДокумент()
КонецЕсли;
КонецЦикла;

// Если нужно обработать документы определенного вида, тогда

Док = СоздатьОбъект(“Документ.ВидДокумента“);
Док.ВыбратьДокументы(Дата1, Дата2);
Пока Док.ПолучитьДокумент() = 1 Цикл
// Дальнейшая обработка Док.ТекущийДокумент()
КонецЦикла;

Комментарии | опубликовано: 2 Май 2007, 11:18


<--- Предыдущая страница Следующая страница --->