Заполнение таб. частей сертификата по алгоритму

В подсистеме предусмотрено расширение механизма заполнения вет. документа (ВСД) с помощью дополнительных алгоритмов.

Принцип

На основной и дополнительной вкладках товаров вет. документа присутствует подменю Перезаполнить, располагается на панели инструментов. Существует два способа добавить дополнительные кнопки в это подменю:

Способ 1

Данный способ годится только для типовых конфигураций, поддерживающих механизм дополнительных внешних обработок.

 - Создать внешнюю обработку.
 - В модуле объекта создать процедуру Инициализировать:<1c>Процедура Инициализировать(Объект, Имя, Расшифровка) Экспорт

// Объект - объект заполняемого документа (ВСД) // Имя - имя обработки, как оно указано в справочнике обработок // Расшифровка - дополнительные параметры из справочника обработок

КонецПроцедуры </1c>

 - Добавить эту обработку в справочник дополнительных отчетов и обработок -> обработки табличных частей и привязать к документу АСП_ВетеринарныйДокумент, к требуемой табличной части (товары или доп. товары).
Способ 2

Способ подходит для любых других конфигураций.
В общем модуле присутствует процедура<1c>Функция ПолучитьДеревоКнопокЗаполненияТабличныхЧастей(Ссылка, Действие) Экспорт ДеревоКнопок = АСП_Функции.ИнициализироватьДеревоДополнительныхКнопок();

Товары = АСП_Функции.ДобавитьСтрокуВДеревоКнопок(ДеревоКнопок, "Товары"); АСП_Функции.ДобавитьСтрокуВДеревоКнопок(Товары, "ЗаполнениеТоваров1", ТипКнопкиКоманднойПанели.Действие, "По алгоритму", Действие);

ДопТовары = АСП_Функции.ДобавитьСтрокуВДеревоКнопок(ДеревоКнопок, "ДопТовары"); АСП_Функции.ДобавитьСтрокуВДеревоКнопок(ДопТовары, "ЗаполнениеДопТоваров1", ТипКнопкиКоманднойПанели.Действие, "По алгоритму", Действие);

Возврат ДеревоКнопок; КонецФункции </1c> она вызывается в том случае, если типовой механизм отсутствует (определяется автоматически). При нажатии кнопки срабатывает другая процедура<1c>Процедура ОбработатьНажатиеНаДополнительнуюКнопкуЗаполненияТЧ(СтрокаКнопки, ЭтотОбъект) Экспорт Если СтрокаКнопки.Имя = "ЗаполнениеТоваров1" Тогда // ИначеЕсли СтрокаКнопки.Имя = "ЗаполнениеДопТоваров1" Тогда // КонецЕсли; КонецПроцедуры </1c> в которой допускается указать требуемый алгоритм.

Примеры
0.00
(0 голосов)