1С Предприятие 7.7. Документация



         

Использование средств встроенного языка


Этот метод является наиболее гибким, а в ряде случаев, и мене трудоемким для разработчика, чем перечисленные выше. Суть его сводится к установке обработчиков действий пользователя, связанны с редактированием и/или удалением «ведущих» объектов, и, на основании доступной с помощью специальных функций информации принятия решения о разрешении или запрещении этого действия.

В таблице приведены некоторые примеры системных предопределенных процедур, предназначенных для «перехвата» действий пользователя.

Процедура     

Перехватываемое действие

ПриУдаленииДокумента

Удаление пользователем документа

ПриУдаленииЭлемекта

Удаление пользователем элемент справочника

ПриУдаленииСчета 

Удаление пользователем бухгалтерского счета

ПриЗаписиКонстанты

Изменение значения константы

ПриОткрытии    

Открытие формы элемента справочника, документа или счета. Функция Выбран() должна вернуть 1, если форма открывается для редактирования.

        

Описание этих процедур, а также процедур и функций, приведенных ниже, смотрите в книге «1С:Предприятие. Описание встроенного языка».

Запретить или разрешить перехваченное действие пользователя возможно на основании обширного набора информации:

• место создания объекта;

• И Б, на которой исполняется 1:Предприятие;

• используемый интерфейс пользователя:

• название прав доступа.

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

Запретить выполнение перехваченного действия можно с помощью процедуры СтатусВоз врата с параметром 0 (ноль). Если эту процедуру использовать в системной предопределенной процедуре ПриОткрытии, то форма не откроется вообще, для открытия формы только для просмотра используйте процедуру ТолькоПросмотр с параметром 1.

Примеры:

// Корректировка значения константы "Директор" разрешено

// только на центральной ИБ

Процедура ПриЗаписиКонстанты( Наин, Знач)

Если (ТекущаяИБЦентралькая() -= 0) И (Наим - "Директ- ,"'' Тогда

Сообщ ^ "Имя директора можно поменять только в центре!*;

Предупреждение(Сообщ, 2);

СтатусВозврата(0);

КонецЕсли;

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




Содержание  Назад  Вперед