Подключение команд на форму с помощью БСП (1С)

Использование библиотеки БСП «Подключаемые команды» для подключения команд на форму.

Испытывалось на платформе 8.3.15.1830 и конфигурации УТ 11.4.8.92.

Источники:
Разработка команд контекстных отчетов (итс, нужна подписка)
Подключить контекстные отчеты к объектам конфигурации (итс, нужна подписка)
Особенности использования 1С БСП «Подключаемые команды» при переходе на версию 2.4 (programstore.ru)


При переходе на версию 1С БСП 2.4, приходится переписывать процедуру инициализации подключения стандартной подсистемы «Подключаемые команды».

Если в предыдущих версиях использовались процедуры общих модулей «УправлениеПечатью», «ВводНаОснование», «МенюОтчеты», то в версии 2.4 требуется вызывать процедуры одного общего модуля «ПодключаемыеКоманды».

 

1. Инициализация подключаемых команд в процедуре ПриСозданииНаСервере в модуле формы объекта (или списка).

В вызываемой процедуре ПодключаемыеКоманды.ПриСозданииНаСервере() происходит:

а) программное добавление всех необходимых команд формы

б) расположение их в нужных подменю

в) назначение в качестве действия команд формы процедуры Подключаемый_ВыполнитьКоманду() 

 

2. Описание подключаемых команд в модуле формы объекта (списка).

Подключаемый_ВыполнитьКоманду() – назначается всем подключаемым командам.

Подключаемый_ВыполнитьКомандуНаСервере() – используется, когда требуется контекстный вызов сервера.

Подключаемый_ОбновитьКоманды() – служит для обновления команд формы.

 

3. В командной панели формы объекта (списка) должны присутствовать отмеченные пункты подменю. Их можно скопировать у стандартных объектов (например, из формы документа ЗаказКлиента).

Это требование не изменилось в версии 2.4

 

4. В модуле менеджера объекта создаются экспортные процедуры для добавления нужных команды на формы объектов.

В версии БСП 2.4 есть небольшие изменения, касающиеся параметров процедур.

 

ДобавитьКомандыСозданияНаОсновании()  – экспортная процедура, в которой заполняется таблица КомандыСозданияНаОсновании. Команды из этой таблицы выводятся на форму в ПодменюСоздатьНаОсновании.

Примечание:

Отчеты ДвиженияДокумента  и МестаИспользования  добавятся автоматически. А отчет СтруктураПодчиненности  нужно добавлять вручную.

Пример:

 

ДобавитьКомандуСоздатьНаОсновании()  – экспортная функция, которая используется для добавления команды создания текущего объекта на основании других объектов.

Т.е. эта функция будет использоваться в модуле менеджера других объектов (в процедурах ДобавитьКомандыСозданияНаОсновании()).

Пример:

 

ДобавитьКомандыОтчетов()  – экспортная процедура, в которой заполняется таблица КомандыОтчетов. Команды из этой таблицы выводятся на форму в ПодменюОтчеты .

Пример:

 

ДобавитьКомандыПечати()  – экспортная процедура, в которой заполняется таблица КомандыПечати. Команды из этой таблицы выводятся на форму в ПодменюПечать .

Пример:


Все предыдущие шаги можно сделать по аналогии типовых объектов. При переходе на версию БСП 2.4 во всех типовых объектах разработчики проводят указанные выше модификации.

Но для вывода на форму СВОИХ (добавленных) объектов этого будет не достаточно, подключаемые команды не появятся на формах. В версии БСП 2.4 необходимо сделать еще следующие доработки:

 

5. В процедуре общего модуля ВариантыОтчетовПереопределяемый.ОпределитьОбъектыСКомандамиОтчетов()  формируется список объектов метаданных, для которых требуется добавить команды открытия отчетов.

В этот список надо добавить новый (не типовой) объект.

Например:

 

6. В процедуре общего модуля СозданиеНаОснованииПереопределяемый.ПриОпределенииОбъектовСКомандамиСозданияНаОсновании()  формируется список объектов метаданных, для которых требуется добавить команды создания на основании.

В этот список надо добавить новый (не типовой) объект.

Например:

 

7. В процедуре общего модуля УправлениеПечатьюПереопределяемый.ПриОпределенииОбъектовСКомандамиПечати()  формируется список объектов метаданных, для которых требуется добавить команды печати.

В этот список надо добавить новый (не типовой) объект.


8. Для формы списка нужно, чтобы была добавлена колонка Ссылка.

Ссылка понадобится, чтобы выполнить команду для текущей строки в методе:

Для этого можно у ссылки установить ИспользоватьВсегда :

Также, отключить у нее пользовательскую видимость:

3 thoughts on “Подключение команд на форму с помощью БСП (1С)

  1. Все работает, но есть один нюанс:
    если добавлять ввод на основании нетипового документа из другого нетипового документа, то в модуле менеджера обязательно должны быть вставлена конструкция в начале:
    #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

    И в конце:
    #КонецЕсли

    Иначе 1с не видит общий модуль ОбщегоНазначенияУТ

  2. очень помогло со списком – ! реквизит ссылка – колонку можно не добавлять. УНФ.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *