Иллюстрированный самоучитель по языку системы 1С:Предприятие

Предопределенные процедуры Модуля формы журнала документов

Описанные в данном разделе системные предопределенные процедуры должны располагаться только в Модулях формы журналов документов (см. "Виды программных модулей").

В основном данные процедуры предназначены для расширения возможности программного управления правами доступа к системе.

Предопределенные процедуры не является встроенными процедурами языка. Для них зарезервированы только название и синтаксис. Тело процедур должно быть написано самим разработчиком в соответствующих программных модулях. Вызов предопределенных процедур на исполнение производится в системе 1С:Предприятие неявно при возникновении соответствующего события. Описание предопределенных процедур также см. гл. "Системные предопределенные процедуры".

ПриУстановкеОтбора

Предопределенная процедура при установке отбора.

Синтаксис:

ПриУстановкеОтбора(<ИмяРеквизОтбора>, <3начение>)

Англоязычный синоним:

OnSetSelectInJournal

Параметры:

<ИмяРеквизОтбора> Строковое значение – название общего реквизита документа (как оно задано в конфигураторе), по которому производится отбор (например, "Автор").
<3начение> Значение реквизита отбора. Допустим, у документов существует общий реквизит "Автор", по которому решено провести отбор, значит в этом параметре будет передано конкретное значение этого реквизита, по которому решено провести отбор (например, "Сидоров И. А.").

Описание:

Вызов предопределенной процедуры ПриУстановкеОтбора производится системой 1С:Предприятие неявно при интерактивной попытке установить отбор документов в журнале. Если в данной предопределенной процедуре установить статус возврата – 0 (например, если данному пользователю нельзя устанавливать данное значение отбора документов), установка не будет выполнена.

Данная предопределенная процедура может располагаться в модуле формы журнала и в глобальном программном модуле. Если данная процедура присутствует в модуле формы соответствующего журнала, то будет вызвана она, если нет, то будет вызвана процедура из глобального модуля.

Пример:

Процедура ПриУстановкеОтбора(ИмяОтбора, ЗначОтбора) Если

НазваниеНабораПрав() = "Продавец" Тогда

Если (Имя0тбора = "Автор") И (ЗначОтбора <> ТекущПользователь) Тогда

Предупреждение("У вас нет права просматривать чужие документы!", 2);

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

КонецЕсли;

КонецЕсли;

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

См. также: СтатусВозврата.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.