bereznoy @ 06.11.11, 15:54 <{POST_SNAPBACK}>, РЕализовать можно через перечисления( Перечисления.СтатусЗаказаПокупателя.Значения:Новый, ВРаботе, ЧастичноВРаботе, Изготовлено, и т.д. ) Вынести процедуру с запросом по остаткам в общий модуль и вызывать ее в документе. Для отображения статуса на форме списка документа в табличное поле добавить "Статус". Код в общем модуле примерно такой :
Статус = Неопределено; к = 1; Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Если к <> ВыборкаДетальныеЗаписи.Количество() Тогда Продолжить; КонецЕсли;
Если ВыборкаДетальныеЗаписи.Заказано > 0 И ВыборкаДетальныеЗаписи.ОсталосьОбеспечить = 0 Тогда Статус = Перечисления.СтатусЗаказаПокупателя.Запланировано; КонецЕсли;
Если ВыборкаДетальныеЗаписи.Заказано >0 И НЕ ВыборкаДетальныеЗаписи.ОсталосьОбеспечить = 0 Тогда Статус = Перечисления.СтатусЗаказаПокупателя.ЧастичноЗапланировано; КонецЕсли;
Если ВыборкаДетальныеЗаписи.Заказано = 0 И ВыборкаДетальныеЗаписи.ОсталосьОбеспечить = 0 Тогда Статус = Перечисления.СтатусЗаказаПокупателя.Исполнено; КонецЕсли;
Если ВыборкаДетальныеЗаписи.Свободно > ВыборкаДетальныеЗаписи.Запланировано Тогда Статус = Перечисления.СтатусЗаказаПокупателя.Исполнено; КонецЕсли;
Если ВыборкаДетальныеЗаписи.ОсталосьОтгрузить <= 0 Тогда Статус = Перечисления.СтатусЗаказаПокупателя.Отгружено; КонецЕсли;
к = к + 1; КонецЦикла;
Если Статус <> Неопределено Тогда ДокОб = ЗаказСсылка.ПолучитьОбъект(); Если ДокОб.СтатусЗаказа <> Статус Тогда ДокОб.СтатусЗаказа = Статус; Попытка ДокОб.Записать(РежимЗаписиДокумента.Запись); Исключение КонецПопытки; КонецЕсли; Иначе ДокОб = ЗаказСсылка.ПолучитьОбъект(); Если ДокОб.СтатусЗаказа <> Перечисления.СтатусЗаказаПокупателя.Новый Тогда ДокОб.СтатусЗаказа = Перечисления.СтатусЗаказаПокупателя.Новый; Попытка ДокОб.Записать(РежимЗаписиДокумента.Запись); Исключение КонецПопытки; КонецЕсли; КонецЕсли;
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!