ВНИМАНИЕ! Системные предопределенные процедуры не являются встроенными процедурами языка. Для них зарезервированы только название и синтаксис. Тело процедур должно быть написано самим разработчиком конфигурации в соответствующих программных модулях.
Вызов системных предопределенных процедур (если они использованы в конфигурации) производится неявно самой системой 1С:Предприятие перед обработкой какого-либо интерактивного действия пользователя, например, при вводе нового документа. В этот момент система передает в предопределенную процедуру фактические значения параметров. В теле процедур переданные параметры могут использоваться для обработки события, например, выдачи предупреждающих сообщений, установки статуса возврата и т. п.
С помощью системной функции СтатусВозврата в теле предопределенной процедуры можно устанавливать значение статуса возврата процедуры. Статус возврата используется системой, чтобы определить — выполнить или нет действие того системного события, которое вызвало данную предопределенную процедуру.
Предопределенные процедуры Глобального модуля
Описанные в данном разделе системные предопределенные процедуры должны располагаться только в глобальном программном модуле. Данные процедуры, например, могут использоваться для расширения возможности программного управления правами доступа пользователя к системе.
ПриНачалеРаботыСистемы
Предопределенная процедура при начале работы задачи.
Синтаксис:
ПриНачалеРаботыСистемы()
Англоязычный синоним:
OnStartSystem
Описание:
Вызов предопределенной процедуры ПриНачалеРаботыСистемы производится системой 1С:Предприятие неявно при начале работы с программой. Если в данной предопределенной процедуре установить статус возврата — 0 (например, если время доступа данного пользователя к системе истекло), то пользователь не сможет войти в программу.
Данная предопределенная процедура может располагаться только в глобальном программном модуле.
Пример:
Процедура ПриНачалеРаботыСистемы()
Курс = Константа.ОсновнаяВалюта.Текущ_Курс.Получить(ТекущаяДата();
Предупреждение("Добро пожаловать! Сегодня " + " " + ТекущаяДата() +
РазделительСтрок + "Сейчас установлен курс доллара=" + Курс), 7);
КонецПроцедуры
ПриЗавершенииРаботыСистемы
Предопределенная процедура при завершении работы задачи.
Синтаксис:
ПриЗавершенииРаботыСистемы()
Англоязычный синоним:
OnFinishSystem
Описание:
Вызов предопределенной процедуры ПриЗавершенииРаботыСистемы производится системой 1С:Предприятие неявно при завершении работы пользователя с системой. Если в данной предопределенной процедуре установить статус возврата — 0 (например, если пользователь не выполнил какие-либо штатные операции), то работа системы не будет завершена, т. е. пользователь не сможет выйти из программы.
Данная предопределенная процедура может располагаться только в глобальном программном модуле.
Пример:
Процедура ПриЗавершенииРаботыСистемы()
Предупреждение("До свидания !", 2);
КонецПроцедуры
ПриУдаленииДокумента
Предопределенная процедура при удалении документа и при отмене пометки на удаление.
Синтаксис:
ПриУдаленииДокумента(<УдалДокум>, <Режим>)
Англоязычный синоним:
OnDeleteDoc
Описание:
Вызов предопределенной процедуры ПриУдаленииДокумента производится системой 1С:Предприятие неявно при интерактивном удалении документа и в случае отмены пометки на удаление. В этом случае, условия вызова можно узнать методом ПометкаУдаления документа. Если в данной предопределенной процедуре установить статус возврата — 0 (например, если не истек срок хранения документа), то удаление документа не будет выполнено.
Данная предопределенная процедура может располагаться только в глобальном программном модуле.
Пример:
Процедура ПриУдаленииДокумента(Док, Реж)
Если НазваниеНабораПрав() = "Продавец" Тогда
Если (Док.Вид() = "РасходнаяНакл") И (Реж = 1) Тогда
Предупреждение("У вас нет права удалять накладную!", 2);
СтатусВозврата(0);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
ПриУдаленииЭлемента
Предопределенная процедура при удалении элемента справочника и при отмене пометки на удаление.
Синтаксис:
ПриУдаленииЭлемента(<УдалЭлем>, <Режим>)
Англоязычный синоним:
OnDeleteItem
Описание:
Вызов предопределенной процедуры ПриУдаленииЭлемента производится системой 1С:Предприятие неявно при интерактивном удалении элемента справочника и в случае отмены пометки на удаление. В этом случае, условия вызова можно узнать методом ПометкаУдаления элемента справочника. Если в данной предопределенной процедуре установить статус возврата — 0 (например, если нарушается ссылочная целостность системы), то удаление элемента справочника не будет выполнено.
Данная предопределенная процедура может располагаться только в глобальном программном модуле.
Пример:
Процедура ПриУдаленииЭлемента(Элем, Реж)
Если НазваниеНабораПрав() = "Продавец" Тогда
Если (Элем.Вид() = "Товар") И (Реж = 1) Тогда
Предупреждение("У вас нет права удалять Товар!", 2);
СтатусВозврата(0);
КонецЕсли;
КонецЕсли;
КонецПроцедуры