Как исправить ошибку из-за незаданного параметра в запросе 1С?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как исправить ошибку из-за незаданного параметра в запросе 1С?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #38316
      Фото аватараOdineski
      Участник

        исправить ошибку в запросе | РеестрДокументов.Ссылка КАК Ссылка,
        | РеестрДокументов.НомерДокументаИБ КАК Номер,
        | РеестрДокументов.ДатаДокументаИБ КАК Дата,
        | РеестрДокументов.Статус,
        | РеестрДокументов.Проведен,
        | РеестрДокументов.ПометкаУдаления,
        | РеестрДокументов.ХозяйственнаяОперация,
        | РеестрДокументов.Партнер,
        | ВЫРАЗИТЬ(РеестрДокументов.Контрагент.Ключ КАК Справочник.Контрагенты) КАК Контрагент,
        | РеестрДокументов.Контрагент КАК КонтрагентКлюч,
        | РеестрДокументов.Договор,
        | &Соглашение КАК Соглашение,
        | РеестрДокументов.Организация,
        | РеестрДокументов.Подразделение,
        | РеестрДокументов.МестоХранения КАК МестоХранения,
        | ВЫРАЗИТЬ(РеестрДокументов.МестоХранения.Ключ КАК Справочник.Склады) КАК Склад,
        | РеестрДокументов.Валюта,
        | РеестрДокументов.Сумма КАК СуммаДокумента,
        | РеестрДокументов.Ответственный КАК Менеджер,
        | РеестрДокументов.Автор КАК Автор,
        | РеестрДокументов.Комментарий,
        | РеестрДокументов.НомерПервичногоДокумента КАК НомерВходящегоДокумента,
        | РеестрДокументов.ДатаПервичногоДокумента КАК ДатаВходящегоДокумента,
        | РеестрДокументов.Дополнительно,
        | СостоянияЭД.СостояниеЭДО,
        | СостоянияЭД.ПредставлениеСостояния КАК ПредставлениеСостояния,
        | СостоянияРаспоряжений.Состояние КАК СостояниеWMS,
        | ВЫБОР
        | КОГДА ДокументыСОшибкамиПроверкиКонтрагентов.Документ ЕСТЬ NULL
        | ТОГДА ЛОЖЬ
        | ИНАЧЕ ИСТИНА
        | КОНЕЦ КАК ЕстьОшибкиПроверкиКонтрагентов,
        | ВЫБОР
        | КОГДА РеестрДокументов.Проведен
        | ТОГДА 0
        | КОГДА РеестрДокументов.ПометкаУдаления
        | ТОГДА 1
        | ИНАЧЕ 2
        | КОНЕЦ КАК НестандартнаяКартинка,
        | РеестрДокументов.ДополнительнаяЗапись,
        | РеестрДокументов.ТипСсылки КАК ТипСсылки,
        | ТИПЗНАЧЕНИЯ(РеестрДокументов.Ссылка) КАК ТипЗначения,
        | &СтатусПроверки КАК СтатусПроверки,
        | &ИндикаторПроверки КАК ИндикаторПроверки,
        | РеестрДокументов.СторноИсправление КАК СторноИсправление,
        | ВЫБОР
        | КОГДА НЕ РеестрДокументов.СторноИсправление
        | ТОГДА НЕОПРЕДЕЛЕНО
        | ИНАЧЕ РеестрДокументов.СторнируемыйДокумент
        | КОНЕЦ КАК СторнируемыйИсправляемыйДокумент,
        | РеестрДокументов.ИдентификаторЗаписи КАК ИдентификаторЗаписи,
        | NULL КАК СостояниеОригиналаПервичногоДокумента,
        | ИСТИНА КАК ОбщееСостояние,
        | 0 КАК СостояниеОригиналПолучен,
        | ВЫРАЗИТЬ(«»»» КАК Строка(50)) КАК СостояниеГИСМТ
        |ИЗ
        | РегистрСведений.РеестрДокументов КАК РеестрДокументов
        | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.AWMSBasis_СостоянияРаспоряжений КАК СостоянияРаспоряжений
        | ПО РеестрДокументов.Ссылка = СостоянияРаспоряжений.Документ
        | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияПоОбъектамУчетаЭДО КАК СостоянияЭД
        | ПО СостоянияЭД.СсылкаНаОбъект = РеестрДокументов.Ссылка
        | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДокументыСОшибкамиПроверкиКонтрагентов КАК ДокументыСОшибкамиПроверкиКонтрагентов
        | ПО РеестрДокументов.Ссылка = ДокументыСОшибкамиПроверкиКонтрагентов.Документ
        |ГДЕ
        | РеестрДокументов.ДатаДокументаИБ МЕЖДУ &НачалоПериода И &КонецПериода
        | И (&ИспользованиеПроверкиВозможно = ИСТИНА)
        |»;
        Ошибка создания набора данных «НаборДанныхДинамическогоСписка»
        [ОшибкаНастроекКомпоновкиДанных]
        по причине:
        Не задано значение параметра «ИспользованиеПроверкиВозможно»
        [ОшибкаНастроекКомпоновкиДанных]
        по причине:
        {(23, 4)}: Не задано значение параметра «ИспользованиеПроверкиВозможно»
        И <<?>>&ИспользованиеПроверкиВозможно = ИСТИНА

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

          Ошибка возникает из-за того, что параметр &ИспользованиеПроверкиВозможно не передается в запрос, а в тексте запроса он используется в условии:

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

          Чтобы исправить ошибку, нужно:

          1. Либо передавать параметр &ИспользованиеПроверкиВозможно при выполнении запроса (в коде 1С).

          2. Либо убрать условие с этим параметром из запроса, если параметр не нужен.

          3. Либо заменить условие на проверку с учетом возможности неопределенного параметра.

          Если параметр нужен, то в коде 1С, где создается и выполняется запрос, добавьте:

          Если параметр не нужен, то просто уберите из запроса строку:

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

          Если хотите оставить условие, но параметр может быть неопределен, замените условие на:

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

          Также исправьте строку с пустой строкой:

          | ВЫРАЗИТЬ(«»»» КАК Строка(50)) КАК СостояниеГИСМТ

          на

          | ВЫРАЗИТЬ(ПустаяСтрока() КАК Строка(50)) КАК СостояниеГИСМТ

          Итоговый фрагмент запроса с исправлениями:

          |ГДЕ
          | РеестрДокументов.ДатаДокументаИБ МЕЖДУ &НачалоПериода И &КонецПериода
          | И (НЕ ЗначениеЗаполнено(&ИспользованиеПроверкиВозможно) ИЛИ &ИспользованиеПроверкиВозможно = ИСТИНА)
          |»;

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

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

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С