Перейти к содержанию

Функция должна заканчиваться возвратом

Для упрощения чтения кода и учета всех ветвлений последней строкой в функции должен быть возврат значения. Часто, если в конце функции не выполняется Возврат, это, скорее всего, ошибочно.

Пример подозрительной функции

Функция ФункцияСОшибкой(Парам1, Парам2) 
    А = Парам1 + Парам2; 
КонецФункции

Пример исправленного кода

Функция ФункцияБезОшибки(Парам1, Парам2) 
    Возврат Парам1 + Парам2;
КонецФункции

Еще возможно следующее ветвление в функции:

Функция ФункцияСВетвлением(Знач Парам1) 
    Если Условие Тогда
        КакойТоКод();
        Возврат Парам1;
    Иначе 
        Возврат Неопределено;
    КонецЕсли;
КонецФункции

В таком случае код лучше переписать следующим образом

Функция ФункцияСВетвлением(Знач Парам1) 
    Если Условие Тогда
        КакойТоКод();
        Возврат Парам1;
    КонецЕсли; 
    Возврат Неопределено;
КонецФункции

Особенности

Из проверки исключены функции с ключевым словом Асинх / Async.

См. также - Правило Функция должна возвращать значение - Правило Слишком много возвратов внутри функции - Правило Функция всегда возвращает одно и то же константное значение - Правило Проверка, что функция является процедурой