Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 01:30

групповое изменение документов УНФ

Автор PhilRich, 02 янв 2013, 08:05

0 Пользователей и 1 гость просматривают эту тему.

PhilRich

Здравствуйте уважаемые форумчане!
Заставило меня начальство за новогодние каникулы привести 1С УНФ в порядок) а я в ней сильно не бум-бум)
Надеюсь на вашу помощь) возможно тут смогут ответить на мои вопросы!) 
Есть документы "Заказ покупателя" и "заказ поставщику".
в них есть три состояния заказа: открыт, в работе, закрыт.
нужно внешнюю обработку, которая бы во всех документах со статусом "открыт" или "закрыт" устанавливала статус "в работе".
изменить статус я думаю можно следующей процедурой:

Процедура ИзменитьСтатусЗаказа(Команда)
   
   Если Объект.СостояниеЗаказа.СтатусЗаказа = Перечисления.СтатусыЗаказов.Открыт Тогда
   Объект.СостояниеЗаказа.СтатусЗаказа = Перечисления.СтатусыЗаказов.ВРаботе;
   КонецЕсли;
   
КонецПроцедуры

а как открывать документы для проверки статуса заказа?

С новым годом!

MuI_I_Ika

А зачем вам их открывать, если вы их уже поменяли?

PhilRich

Целый день потратил на 5 строк. но я своего добился. может кому пригодится.
Процедура RJV(Команда)
   // Вставить содержимое обработчика.
ДокУст = Документы.ЗаказПокупателя.Выбрать();
СМС = Справочники.СостоянияЗаказовПокупателей.НайтиПоНаименованию("Выполнен");
Враб = Справочники.СостоянияЗаказовПокупателей.НайтиПоНаименованию("В работе");
Пока ДокУст.Следующий() Цикл
   Док2 = ДокУст.ПолучитьОбъект();
   Если ДокУст.СостояниеЗаказа = СМС тогда
      Сообщить(ДокУст.СостояниеЗаказа);
      Док2.СостояниеЗаказа = Враб;
      Док2.Записать();
      
   КОнецесли;
    КонецЦикла;
КонецПроцедуры

Dethmontt

быстрее будет работать в несколько раз если это
Док2 = ДокУст.ПолучитьОбъект();
занести в условие
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск