1) Создать две роли - одна чтение (Чтение...), вторая на запись и редактирование (ДобавлениеИзменение...), по аналогии с типовой конфигурацией.
Роль на чтение должна давать роли на чтение и просмотр; а роль на редактирование должна давать роли на чтение, просмотр, редактирование, изменение и установку/изменение пометки на удаления.
Не нужно давать роли на интерактировное удаление.
2) В модуле объекта добавить код в начало процедур - ПередЗаписью и ПриЗаписи (чтобы не выполнялся ряд проверок при обмене данными):
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
3) При необходимости добавить:
- КРИТЕРИИ ОТБОРА - например Контрагент/Договор
- ЖУРНАЛЫ - например Операций
- ПОСЛЕДОВАТЕЛЬНОСТИ
- НУМЕРАТОРЫ
4) Уже использующие типы реквизитов в конфигурации (Организация, Склад, Подразделение и т.д.), называть также, как в остальных документах- это необходимо для единообразия, выполнение типового кода (например: дата запрета по организации) и написания запросов (легче обращаться к одной структуре).
5) Добавить на форму объекта: группы, группы в командную панель и элементы, аналогично типовым документам (это необходимо для единообразия с типовыми документами и для выполнения алгоритмов подсистем БСП):
6) Добавить на форму списка: группы, группы в командную панель, элементы и быстрые отборы, аналогично типовым документам (это необходимо для единообразия с типовыми документами и для выполнения алгоритмов подсистем БСП):
7) Добавить на форму выбора: группы, группы в командную панель, элементы, аналогично типовым документам (это необходимо для единообразия с типовыми документами и для выполнения алгоритмов подсистем БСП):
8) Подключить подсистему "Версионирование".
Необходимо изменить следующие объекты: определяемые типы: ВерсионируемыеДанные и ВерсионируемыеДанныеОбъект; подписки: ЗаписатьВерсиюДокумента; ПриСозданииНаСервере модуля формы; добавить необходимые процедуры в модуль менеджера).
Подробная настройка написана в поддержке БСП.
9) Подключить подсистему "Подключаемые команды" (вывод подменю Печать, Отчеты или Заполнить).
Необходимо изменить следующие объекты: ПриСозданииНаСервере, ПриЧтенииНаСервере, ПриОткрытии модуля формы; вставить обработчики в модуле формы; ПриАктивизацииСтроки модуля формы списка.
Подробная настройка написана в поддержке БСП.
10) Подключить подсистему "Свойства".
Необходимо изменить следующие объекты:
Создать табличную часть ДополнительныеРеквизиты с реквизитами; в форме объекта рекомендуется создать специальную группу полей или страницу с наименованием ГруппаДополнительныеРеквизиты; ПриСозданииНаСервере, ПриОткрытии, ОбработкаОповещения, ПриЧтенииНаСервере, ОбработкаПроверкиЗаполненияНаСервере , ПередЗаписьюНаСервере, ПриСменеСтраницы модуля формы; в модуле формы добавить вспомогательные процедуры;
Подробная настройка написана в поддержке БСП.
11) Подключить подсистему "Дата запрета изменения".
Необходимо изменить следующие объекты:
Подписка на событие (ПроверитьДатуЗапретаИзмененияПередЗаписьюДокумента, ПроверитьДатуЗапретаИзмененияПередУдалением), ПриЧтенииНаСервере модуля формы.
Подробная настройка написана в поддержке БСП.
12) Подключить подсистему "Управление доступом".
В своей статье подробно описал, как добавить подсистему "Управление доступом" для нового документа.
Подробная настройка написана в поддержке БСП.
13) Добавить команды "Печать".
Необходимо изменить следующие объекты:
Добавить документ в процедуру ПриОпределенииОбъектовСКомандамиПечати модуля УправлениеПечатьюПереопределяемый; добавить процедуры в модуль менеджера: ДобавитьКомандыПечати, Печать.
Подробная настройка написана в поддержке БСП.
14) Добавить команды "Создания на основании (Создать на основании)".
Необходимо изменить следующие объекты:
В модуле менеджера добавить процедуры: ДобавитьКомандыСозданияНаОсновании, ДобавитьКомандуСоздатьНаОсновании.
15) В обработку проведения документа модуля объекта, добавить следующий код:
ПроведениеДокументов.ОбработкаПроведенияДокумента(ЭтотОбъект, Отказ);
16) В обработку перед записью документа модуля объекта, добавить следующий код:
ПроведениеДокументов.ПередЗаписьюДокумента(ЭтотОбъект, РежимЗаписи, РежимПроведения);
17) В обработку при записи документа модуля объекта, добавить следующий код:
ПроведениеДокументов.ПриЗаписиДокумента(ЭтотОбъект, Отказ);