Подключение объекта к подсистеме
Общие настройки
В зависимости от типа объекта одобрения (справочник или документ) проведем привязку его к одобрению. В подсистеме Интеграция и управление мастер-данными
выбрать раздел: Настройки документов
или Настройки справочников
. В качестве примера возьмем документ Заказ поставщику
.
Для привязки документа к одобрению воспользуемся Справкой, открыв документ из списка журнала Настройки документов в 1С
Выбрать справку Подключение объекта к согласованию
.
Настройки объекта
В конфигурации в определяемый тип — ОбъектыДляСогласования
нужно добавить согласуемый объект;
Настройки формы объекта
Добавить код в модуль формы объекта (Как есть):
ПриЧтенииНаСервере
ДействияСогласованиеУХСервер.НарисоватьПанельСогласованияИОпределитьСостояниеОбъекта(ЭтотОбъект);
ОбработкаОповещения
В случае, если форма не обновляется при согласовании этапа, нужно прописать в процедуре «ОбработкаОповещения» следующее:
Если ИмяСобытия = "ОбъектСогласован" Или ИмяСобытия = "ОбъектОтклонен" Или ИмяСобытия = "МаршрутИнициализирован" Или ИмяСобытия = "СостояниеЗАявкиПриИзменении" Тогда ЭтотОбъект.Прочитать();КонецЕсли;
Служебные процедуры и функции
&НаКлиентеПроцедура ПринятьКСогласованию_Подключаемый() Экспорт ДействияСогласованиеУХКлиент.ПринятьКСогласованию(ЭтотОбъект, Объект.Ссылка);КонецПроцедуры
&НаКлиентеПроцедура ИсторияСогласования_Подключаемый() Экспорт ДействияСогласованиеУХКлиент.ИсторияСогласования(ЭтотОбъект, Объект.Ссылка);КонецПроцедуры
&НаКлиентеПроцедура СогласоватьДокумент_Подключаемый() Экспорт ДействияСогласованиеУХКлиент.СогласоватьДокумент(ЭтотОбъект);КонецПроцедуры
&НаКлиентеПроцедура ОтменитьСогласование_Подключаемый() Экспорт ДействияСогласованиеУХКлиент.ОтменитьСогласование(ЭтотОбъект);КонецПроцедуры
&НаКлиентеПроцедура МаршрутСогласования_Подключаемый() Экспорт ДействияСогласованиеУХКлиент.МаршрутСогласования(ЭтотОбъект, Объект.Ссылка);КонецПроцедуры
Прочее
Для ручного управления элементами подсистемы, можно явно обращаться к ним в коде. Например, для запрета нажатия команды К согласованию
, если объект помечен на удаление в процедуре ПриЧтенииНаСервере
прописываем:
Если Объект.ПометкаУдаления Тогда // ИмяЭлемента = "ФормаОбщаяКомандаУниверсальноеСогласование_ПринятьКСогласованию", // "ПринятьКСогласованию", "ПринятьКСогласованию1" Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(Элементы, ИмяЭлемента) Тогда ЭтотОбъект.Элементы[ИмяЭлемента].Доступность = Ложь; КонецЕсли;КонецЕсли;
Обновление данных
После ввода изменений в конфигураторе, в пользовательском режиме в подсистеме: Интеграция и управление мастер данными
— Настройки документов(справочников)
– нажать команду Обновить по данным текущий ИБ
.
Открыть нужный объект в настройках документа (справочника) и заполнить необходимые реквизиты:
В документе появится кнопка с командой На согласование
, а также перечень статусов, изменяющихся в процессе согласования