Это старая версия документа!
Коротко об дополнительных реквизитах/сведениях
Задача: оснастить документ/справочник дополнительными реквизитами или сведениями.
Нужно у объекта создать табличную часть ДополнительныеРеквизиты с реквизитами:
| Имя | Тип | Подсказка |
|---|---|---|
Свойство | ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения | Дополнительный реквизит |
Значение | Характеристика.ДополнительныеРеквизитыИСведения | Значение дополнительного реквизита |
ТекстоваяСтрока | Строка неограниченной длины | Полный текст строкового дополнительного реквизита |
Реквизиту Значение в свойстве Связи параметров выбора установить связь: Отбор.Владелец (ДополнительныеРеквизиты.Свойство).
1. В форме объекта рекомендуется создать специальную группу полей или страницу с наименованием ГруппаДополнительныеРеквизиты для размещения элементов управления, редактирующих свойства объекта.
2. В обработчике события ПриСозданииНаСервере формы объекта необходимо выполнить вызов:
- ПриСозданииНаСервере
// СтандартныеПодсистемы.Свойства ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", "ГруппаДополнительныеРеквизиты"); УправлениеСвойствами.ПриСозданииНаСервере(ЭтотОбъект, ДополнительныеПараметры); // Конец СтандартныеПодсистемы.Свойства
где ГруппаДополнительныеРеквизиты – имя группы формы, созданной на шаге 2, в которой будут располагаться поля формы, предназначенные для редактирования дополнительных реквизитов. Если этот параметр не указывать, то элементы управления для редактирования свойств будут размещаться в нижней части формы.
3. этот пункт из ИТС пропускаем
4. В модуле формы каждого объекта со свойствами необходимо добавить процедуру
- ФормаОбъекта
#Область ОбработчикиКомандФормы // СтандартныеПодсистемы.Свойства &НаКлиенте Процедура Подключаемый_СвойстваВыполнитьКоманду(ЭлементИлиКоманда, НавигационнаяСсылка = Неопределено, СтандартнаяОбработка = Неопределено) УправлениеСвойствамиКлиент.ВыполнитьКоманду(ЭтотОбъект, ЭлементИлиКоманда, СтандартнаяОбработка); КонецПроцедуры // Конец СтандартныеПодсистемы.Свойства #КонецОбласти
5. В обработчике события ПриОткрытии добавить код:
- ПриОткрытии
// СтандартныеПодсистемы.Свойства УправлениеСвойствамиКлиент.ПослеЗагрузкиДополнительныхРеквизитов(ЭтотОбъект); // Конец СтандартныеПодсистемы.Свойства
6. В обработчике события ОбработкаОповещения добавить код:
- ОбработкаОповещения
// СтандартныеПодсистемы.Свойства Если УправлениеСвойствамиКлиент.ОбрабатыватьОповещения(ЭтотОбъект, ИмяСобытия, Параметр) Тогда ОбновитьЭлементыДополнительныхРеквизитов(); УправлениеСвойствамиКлиент.ПослеЗагрузкиДополнительныхРеквизитов(ЭтотОбъект); КонецЕсли; // Конец СтандартныеПодсистемы.Свойства
7. Добавить вспомогательные процедуры:
- ФормаОбъекта
#Область СлужебныеПроцедурыИФункции // СтандартныеПодсистемы.Свойства &НаСервере Процедура ОбновитьЭлементыДополнительныхРеквизитов() УправлениеСвойствами.ОбновитьЭлементыДополнительныхРеквизитов(ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура ОбновитьЗависимостиДополнительныхРеквизитов() УправлениеСвойствамиКлиент.ОбновитьЗависимостиДополнительныхРеквизитов(ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура Подключаемый_ПриИзмененииДополнительногоРеквизита(Элемент) УправлениеСвойствамиКлиент.ОбновитьЗависимостиДополнительныхРеквизитов(ЭтотОбъект); КонецПроцедуры // Конец СтандартныеПодсистемы.Свойства #КонецОбласти
8. В обработчике события ПриЧтенииНаСервере добавить код:
- ПриЧтенииНаСервере
// СтандартныеПодсистемы.Свойства УправлениеСвойствами.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект); // Конец СтандартныеПодсистемы.Свойства
9. В обработчике события ОбработкаПроверкиЗаполненияНаСервере добавить код:
- ОбработкаПроверкиЗаполненияНаСервере
// СтандартныеПодсистемы.Свойства УправлениеСвойствами.ОбработкаПроверкиЗаполнения(ЭтотОбъект, Отказ, ПроверяемыеРеквизиты); // Конец СтандартныеПодсистемы.Свойства
10. В обработчике события ПередЗаписьюНаСервере добавить код:
- ПередЗаписьюНаСервере
// СтандартныеПодсистемы.Свойства УправлениеСвойствами.ПередЗаписьюНаСервере(ЭтотОбъект, ТекущийОбъект); // Конец СтандартныеПодсистемы.Свойства