0

Функция СтатусВозврата

Функция выполняет получение или установку статуса возврата предопределенной процедуры

Синтаксис

Функция СтатусВозврата() имеет следующий синтаксис:

число СтатусВозврата([НовыйСтатус])

А также альтернативный англоязычный синтаксис:

number ReturnStatus([NewStatus])

Параметры

Описание параметров функции СтатусВозврата()

Имя параметра Тип Описание
НовыйСтатус Число Новый статус возврата предопределенной процедуры

Зависимость результата функции от значения параметра
= 0 отменить выполнение системного действия
= 1 продолжить выполнение системного действия
* — обязательный параметр

Возвращаемое значение

Число

Описание вариантов возвращаемых значений:

0 — выполнение системного действия будет отменено
1 — системное действие будет выполнено штатным образом (значение по умолчанию)

Описание

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

Пример использования

Пример кода с использованием функции СтатусВозврата()

Процедура ПриНачалеРаботыСистемы()
	
        СпрПользователи = СоздатьОбъект("Справочник.Пользователи");
        ПользовательНайден = СпрПользователи.НайтиПоКоду(ИмяПользователя());
	Если ПользовательНайден = 0 Тогда
            //анонимный доступ запрещен!
            СтатусВозврата(0);
            Возврат;
	КонецЕсли;
	
КонецПроцедуры//ПриНачалеРаботыСистемы()

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *