Имя: Пароль:
1C
1С v8
Обработка проведения, используя данные поля из формы
0 prazdnik4334
 
03.08.12
18:06
Подскажите новичку. Версия 1с.8.2. Есть в форме документа поле Установить/снять оборудование, тип перечисление. Как реализовать обработку проведения документа с условием: если выбрано установить в форме, то вид движения - приход, иначе - расход.
1 Жан Пердежон
 
03.08.12
18:08
реквизит документа добавить надо
2 Asmody
 
03.08.12
18:09
сделать поле формы реквизитом документа
3 х86
 
03.08.12
18:09
(0)перепроведут твои доки с помощью групповой обработки и что будет тогда?

делай вид операции
4 prazdnik4334
 
03.08.12
18:11
Процедура ОбработкаПроведения(Отказ, Режим)
   //{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
   // Данный фрагмент построен конструктором.
   // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

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

   //}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

Выдаёт ошибку. Знаю, что дело в "Объект.УстановкаСнятие", т.к. обработка проведения на сервере, а "Объект.УстановкаСнятие" на клиенте, а как реализовать не знаю.
5 shpioleg
 
03.08.12
19:03
(4) Попробуй
Если ЭтотОбъект.УстановкаСнятие = Перечисления.УстановкаСнятие.Установка Тогда
6 Vesa
 
03.08.12
19:41
(4) Если "УстановкаСнятие" - реквизит документа, то к нему в модуле объекта можно обращаться напрямую.
7 prazdnik4334
 
03.08.12
20:38
Спасибо, попробовал (5) - заработало.
8 shpioleg
 
03.08.12
20:44
(7) ЭтотОбъект лишнее