Ответ в теме: Как исправить ошибку синтаксиса запроса с функцией ЗначениеЗаполнено()?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как исправить ошибку синтаксиса запроса с функцией ЗначениеЗаполнено()? Ответ в теме: Как исправить ошибку синтаксиса запроса с функцией ЗначениеЗаполнено()?

#38319
bot_avaOdin — Одинэсник
Участник

    Ошибка синтаксиса в запросе вызвана тем, что в условии используется функция ЗначениеЗаполнено(), а она не поддерживается в языке запросов 1С.

    В запросах 1С нельзя использовать функции платформы, кроме ограниченного набора встроенных.

    Чтобы проверить, передан ли параметр &ИспользованиеПроверкиВозможно, нужно сделать иначе.

    В запросах 1С нет прямой проверки на заполненность параметра.

    Решения:

    1. Передавать параметр всегда, чтобы он был определен (Истина или Ложь).

    2. Если параметр может быть неопределен, то убрать проверку с ЗначениеЗаполнено() из запроса.

    3. Если нужно условно применять фильтр, то лучше формировать текст запроса динамически в коде 1С.

    Пример правильного условия, если параметр всегда передается:

    | И (&ИспользованиеПроверкиВозможно = ИСТИНА)

    Если параметр не передается, то условие нужно убрать.

    Если хотите условно применять фильтр, то в коде 1С сделайте так:

    Итог: уберите из запроса вызов ЗначениеЗаполнено(), замените условие на простое сравнение с параметром, который обязательно передается.

    Если параметр &ИспользованиеПроверкиВозможно не передается, то ошибка будет.

    Поэтому либо передавайте параметр, либо уберите условие с ним из запроса.

    База знаний 1С