1C-CodeОшибки 1С → Недостаточно фактических параметров

Недостаточно фактических параметров — что проверить

Сообщение платформы: Недостаточно фактических параметров

Функцию вызвали с меньшим числом аргументов, чем у неё обязательных параметров. Находится при проверке модуля.

Отчего это бывает

1. У параметра нет значения по умолчанию

Функция Посчитать(Сумма, Ставка)
// вызов:
Посчитать(1000);            // Ставка не передана

Чтобы параметр стал необязательным, ему задают значение по умолчанию: Функция Посчитать(Сумма, Ставка = 20).

2. Пропущенный аргумент в середине

Найти(Отбор, , Истина);     // так пропускают средний
Найти(Отбор, Неопределено, Истина);

3. Сигнатура изменилась, а вызовы — нет

// добавили параметр в функцию, а вызывают её из десяти мест

Поиск ссылок по конфигурации (Ctrl+Alt+F7 по имени функции) показывает все места вызова. Проверка модуля найдёт их сама, но только в открытом модуле.

Что сделать

Смотрите на объявление функции: параметры без знака равенства — обязательные. Если вы меняете сигнатуру существующей функции, проще добавить новый параметр СО значением по умолчанию в конец — тогда старые вызовы продолжат работать.

Проверить себя на практике. В тренажёре те же ошибки возникают на настоящем интерпретаторе языка 1С: сообщения дословно те же, что у платформы, но исправить их можно сразу в браузере, без установки и без риска для рабочей базы.

Открыть тренажёр

Разобраться глубже

Другие частые ошибки

Поле объекта не обнаружено Значение не является значением объектного типа Переменная не определена Метод объекта не обнаружен Индекс находится за границами массива Деление на ноль