click fraud detection

1C. Добавление функционала дополнительных сведений и дополнительных реквизитов к новому объекту конфигурации

Дата публикации: 23.05.2018

Рассмотрим на примере добавление дополнительных сведений и дополнительных реквизитов к новому документу пр_ДопСведения типовой конфигурации УТ 11.1.2.10.

Потребуются изменения следующих объектов:

  1. Новый документ (добавление табличной части ДополнительныеРеквизиты)
  2. Справочник НаборыДополнительныхРеквизитовИСведений (добавление предопределенного элемента с наименованием по шаблону Документ_<ИмяДокумента>)
  3. Общая команда ДополнительныеСведенияКоманднаяПанель (добавление типа параметра команды)
  4. Форма нового документа (добавление группы ГруппаДополнительныеРеквизиты; доработка модуля формы документа)

Подробнее рассмотрим этот процесс на примере.

Часть 1. Изменение нового документа.

Для хранения значений дополнительных реквизитов в документ пр_ДопСведения добавляем табличную часть ДополнительныеРеквизиты, можно скопировать ее, например, из справочника Номенклатура.

Для хранения значений дополнительных сведений ничего менять не нужно, т.к. в измерении Объект регистра сведений ДополнительныеСведения уже содержится тип ДокументСсылка, это значит, что значением поля Объект может быть любой документ (рис. 1):

Рис. 1. Тип измерения Объект регистра сведений ДополнительныеСведения

 

Часть 2. Изменение справочника НаборыДополнительныхРеквизитовИСведений.

Далее в справочник НаборыДополнительныхРеквизитовИСведений добавляем предопределенный элемент с наименованием Документ_пр_ДопСведения (рис.2):

Рис. 2. Предопределенный элемент справочника НаборыДополнительныхРеквизитовИСведений

 

Часть 3. Изменение общей команды ДополнительныеСведенияКоманднаяПанель.

Далее для того, чтобы на форме документа появился значок для перехода к дополнительным сведениям, в общей команде ДополнительныеСведенияКоманднаяПанель добавляем в Тип параметра команды тип ДокументСсылка.пр_ДопСведения (рис. 3):

Рис. 3. Добавление типа в общую команду ДополнительныеСведенияКоманднаяПанель

 

Часть 4. Изменение формы нового документа.

Для реализации функционала дополнительных реквизитов добавляем на форму документа пр_ДопСведения группу ГруппаДополнительныеРеквизиты, ее можно скопировать из формы элемента справочника Номенклатура (рис. 4):

Рис. 4. Добавление группы на форму документа

Далее в модуле формы документа определяем процедуры (можно скопировать из модуля формы элемента справочника Номенклатура):

  1. Процедура ПриСозданииНаСервере

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

               НастроитьЭлементыДополнительныхРеквизитов();             

УправлениеСвойствами.ПриСозданииНаСервере(ЭтаФорма, Объект, "ГруппаДополнительныеРеквизиты");

КонецПроцедуры

 

  1. Процедура ОбработкаОповещения

 

&НаКлиенте

Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)

Если УправлениеСвойствамиКлиент.ОбрабатыватьОповещения(ЭтаФорма, ИмяСобытия, Параметр) Тогда

                               ОбновитьЭлементыДополнительныхРеквизитов();

КонецЕсли;

КонецПроцедуры

 

  1. Процедура ОбновитьЭлементыДополнительныхРеквизитов

 

&НаСервере

Процедура ОбновитьЭлементыДополнительныхРеквизитов()

УправлениеСвойствами.ОбновитьЭлементыДополнительныхРеквизитов(ЭтаФорма);

               НастроитьЭлементыДополнительныхРеквизитов();             

КонецПроцедуры

 

  1. Процедура НастроитьЭлементыДополнительныхРеквизитов

 

&НаСервере

Процедура НастроитьЭлементыДополнительныхРеквизитов()

Для Каждого Элемент Из Элементы.ГруппаДополнительныеРеквизиты.ПодчиненныеЭлементы Цикл

Если Элемент.Вид = ВидПоляФормы.ПолеВвода Тогда

Если Элемент.МногострочныйРежим <> Истина Тогда

Элемент.РастягиватьПоГоризонтали = Ложь;

Иначе

Элемент.ПоложениеЗаголовка= ПоложениеЗаголовкаЭлементаФормы.Лево;

Элемент.РастягиватьПоВертикали= Ложь;

Элемент.РастягиватьПоГоризонтали = Истина;

КонецЕсли;

ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеФлажка Тогда

Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Право;

КонецЕсли;

КонецЦикла;

КонецПроцедуры

 

  1. Процедура Подключаемый_РедактироватьСоставСвойств

 

&НаКлиенте

Процедура Подключаемый_РедактироватьСоставСвойств(Команда)

УправлениеСвойствамиКлиент.РедактироватьСоставСвойств(ЭтаФорма);

КонецПроцедуры

 

  1. Процедура ПередЗаписьюНаСервере

 

&НаСервере

Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)

УправлениеСвойствами.ПередЗаписьюНаСервере(ЭтаФорма, ТекущийОбъект);

КонецПроцедуры

 

Теперь в пользовательском режиме появилась возможность добавлять дополнительные сведения и дополнительные реквизиты к новому документу пр_ДопСведения (рис. 5):

Рис. 5. Форма нового документа

 

Автор: Дина Королева.

 

Аренда разработчика 1С

Опытные специалисты, 1 400 руб./час

Подробнее

Другие записи в блоге

22.10.2018
Рассмотрим задачу, когда колонку СКД нужно выводить в зависимости от выполнения какого-то условия.Рассмотрим на примере внешнего отчета (без формы отчета, только СКД), условие вывода колонки задано в...
22.10.2018
Рассмотрим задачу, когда отчет на СКД нужно расшифровать другим отчетом. Рассмотрим на примере конфигурации УТ 11.4.1.271.Для этого нужно добавить строки кода в процедуру ОбработкаРасшифровки общего...
22.10.2018
Рассмотрим задачу, когда нужно обновить типовую конфигурацию, в которую внесены изменения. Рассмотрим на примере конфигурации ЗУП, в которой в документ НачислениеЗарплаты был добавлен новый реквизит...

Подпишитесь на блог

Все интересные статьи нашего блога на Вашем почтовом ящике!

Подписка
 

Сервис звонка с сайта RedConnect