В начало

Проверка работающих сотрудников

           

Есть два справочника: «Контрагенты» и «Сотрудники», соответственно в них размещены сведения об организациях, с которыми приходится сотрудничать и о сотрудниках, которые прилежно трудятся на фирме. Нужно при выборе основного менеджера по работе с некой конкретной фирмой выводить сообщение/предупреждение если человек больше не работает на фирме, но по каким-то причинам его фамилия все еще присутствует в справочнике «Сотрудники».

            Сначала нужно в справочнике «Контрагенты» создать элемент формы, выбрать «ОсновнойМенеджер», найти в разделе его свойств событие «ПриИзменении» и нажать на значок с линзой, после чего откроется модуль формы элемента, в котором собственно и надо написать наше творение, а именно процедуру и функцию.

 

Листинг 1

&НаКлиенте

Процедура ОсновнойМенеджерПриИзменении (Элемент)

      Если Проверка (Объект.ОсновнойМенеджер) = Ложь Тогда

      Предупреждение ("Эта сука

                       |здесь уже не работает!");

      КонецЕсли;

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

 

&НаСервере

Функция Проверка (Менеджер) //Возвращает признак Работающий

      Возврат Менеджер.Работающий;

КонецФункции

           

При этом проверка вроде как осуществляется на клиенте, но данные то запрашиваются с сервера.

Рис. 1. Выбор поля «Основной менеджер»

 

            Таким образом, при выборе поля «Основной менеджер» будет запущена стандартная процедура «ОсновнойМенеджерПриИзменении», которая в свою очередь запустить функцию «Проверка» на стороне сервера и запросить значение поля «Менеджер.Работающий».

Рис. 2. Результат работы программы

 

            ПРИМЕЧАНИЕ: листинг и все такое соответствуют «1С: Предприятие 8.2».