Данная статья относится к теме настройки видов контактной информации в БСП (библиотеке стандартных подсистем).

Допустим нам требуется создать новый Справочник "Торговые отделы" и в данном справочнике организовать выбор адреса из КЛАДРа (Классификатора адресов России). Данная задача реализуется механизмами БСП.

Порядок действий:

  1. Создаем Справочник ТорговыеОтделы
  2. Добавляем в данный справочник табличную часть КонтактнаяИнформация (все реквизиты ТЧ являются обязательными):

Реквизит табличной части

Тип

Тип

ПеречислениеСсылка.ТипыКонтактнойИнформации

Вид

СправочникСсылка.ВидыКонтактнойИнформации

Представление

Строка, 500

ЗначенияПолей

Строка (неогр. длина)

Страна

Строка, 100

Регион

Строка, 50

Город

Строка, 50

АдресЭП

Строка, 100

ДоменноеИмяСервера

Строка, 100

НомерТелефона

Строка, 20

НомерТелефонаБезКодов

Строка, 20

 

3. Добавляем на форму Справочника группу ГруппаКонтактнаяИнформация (обычная группа).

4. Добавить новый Справочник в Определяемые типы (Общие – Определяемые типы – ВладелецКонтактнойИнформации - Свойства).

5. В модуле формы прописать следующие процедуры:


&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    // СтандартныеПодсистемы.КонтактнаяИнформация
    УправлениеКонтактнойИнформацией.ПриСозданииНаСервере(ЭтаФорма, Объект, "ГруппаКонтактнаяИнформация");
    // Конец СтандартныеПодсистемы.КонтактнаяИнформация
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
    // СтандартныеПодсистемы.КонтактнаяИнформация
    УправлениеКонтактнойИнформацией.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
    // Конец СтандартныеПодсистемы.КонтактнаяИнформация
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    // СтандартныеПодсистемы.КонтактнаяИнформация
    УправлениеКонтактнойИнформацией.ПередЗаписьюНаСервере(ЭтотОбъект, ТекущийОбъект);
    // Конец СтандартныеПодсистемы.КонтактнаяИнформация
   
    ОбъектЗаписан = Истина;
КонецПроцедуры
&НаСервере
Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
    // СтандартныеПодсистемы.КонтактнаяИнформация
    УправлениеКонтактнойИнформацией.ОбработкаПроверкиЗаполненияНаСервере(ЭтотОбъект, Объект, Отказ);
    // Конец СтандартныеПодсистемы.КонтактнаяИнформация
КонецПроцедуры
// СтандартныеПодсистемы.КонтактнаяИнформация
&НаКлиенте
Процедура Подключаемый_КонтактнаяИнформацияПриИзменении(Элемент)
    УправлениеКонтактнойИнформациейКлиент.ПредставлениеПриИзменении(ЭтаФорма, Элемент);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_КонтактнаяИнформацияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    УправлениеКонтактнойИнформациейКлиент.ПредставлениеНачалоВыбора(ЭтаФорма, Элемент, Модифицированность, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_КонтактнаяИнформацияПриНажатии(Элемент, СтандартнаяОбработка)
    УправлениеКонтактнойИнформациейКлиент.НачалоВыбора(ЭтотОбъект, Элемент,, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_КонтактнаяИнформацияОчистка(Элемент, СтандартнаяОбработка)
    УправлениеКонтактнойИнформациейКлиент.Очистка(ЭтотОбъект, Элемент.Имя);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_КонтактнаяИнформацияВыполнитьКоманду(Команда)
    УправлениеКонтактнойИнформациейКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда.Имя);
КонецПроцедуры
&НаСервере
Процедура Подключаемый_ОбновитьКонтактнуюИнформацию(Результат)
    УправлениеКонтактнойИнформацией.ОбновитьКонтактнуюИнформацию(ЭтотОбъект, Объект, Результат);
КонецПроцедуры
// Конец СтандартныеПодсистемы.КонтактнаяИнформация

 

6. Открываем в конфигураторе Справочник ВидыКонтактнойИнформации. Добавляем в предопределенные группу: СправочникТорговыеОтделы и предопределенный элемент Адрес.

7. Обновить виды контактной информации при помощи обработки:


УправлениеКонтактнойИнформацией.ОбновитьВидКИ(Справочники.ВидыКонтактнойИнформации.Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес, Истина, Ложь, Истина, 1);

Теперь на форме появится поле Адрес с кнопкой выбора из КЛАДРа

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


Защитный код
Обновить