8.х Как передать ТЗ в запрос

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Ivan2014, 22 июн 2014.

  1. TopicStarter Overlay
    Ivan2014
    Offline

    Ivan2014 Опытный в 1С

    Регистрация:
    10 апр 2014
    Сообщения:
    384
    Симпатии:
    2
    Баллы:
    29
    Пытаюсь передать таблицу значений в запрос:
    Код:
    Запрос=Новый Запрос;
    Запрос.Текст=
    "ВЫБРАТЬ
    |    ТЗНоменклатураСоответствияВиртуальная.Соответствие КАК Соответствие
    |ИЗ
    |    &ТЗНоменклатураСоответствияВиртуальная КАК ТЗНоменклатураСоответствияВиртуальная";
    Запрос.УстановитьПараметр("ТЗНоменклатураСоответствия",ТЗНоменклатураСоответствия);
    Но не передается. Где я ошибаюсь?
    Спасибо.
  2. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.984
    Симпатии:
    398
    Баллы:
    104
    Имя нужно указывать то которое в запросе указываете.
    Код:
    Запрос.УстановитьПараметр("ТЗНоменклатураСоответствияВиртуальная",ТЗНоменклатураСоответствия);
    Ivan2014 нравится это.
  3. TopicStarter Overlay
    Ivan2014
    Offline

    Ivan2014 Опытный в 1С

    Регистрация:
    10 апр 2014
    Сообщения:
    384
    Симпатии:
    2
    Баллы:
    29
    Все равно не передается ТЗ. Что мог еще не учесть?
  4. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.984
    Симпатии:
    398
    Баллы:
    104
    Все там передается. Внимательнее прочитайте синтакс-помощник. В качестве источника данных для запроса может выступать табличная часть, результат запроса или таблица значений. Данные могут быть выбраны только во временную таблицу.
    Ivan2014 нравится это.
  5. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Для того чтобы работать с данными ТЗ в запросе, ее нужно выбрать в временную таблицу, а далее, в зависимости от логики вашего алгоритма, выбирать из временной таблицы данные или соединять ее с какой либо еще таблицей.

    Есть одно "note" - типы данных в ТЗ должны быть определены заранее, так же ограничены длины строковых данных (255)
    --- Объединение сообщений, 24 июн 2014 ---
    Код:
    Запрос=Новый Запрос;
    Запрос.Текст="
    |/////////////////* Выборка из источника в временную таблицу *////////////////
    |ВЫБРАТЬ
    |  НоменклатураСоответствия.Соответствие КАК Соответствие
    |ПОМЕСТИТЬ ВТ_ТаблицаДанных
    |ИЗ
    |    &ТЗНоменклатураСоответствия КАК НоменклатураСоответствия
    |;
    |////////////////////////////* Выборка из временной таблицы *//////////////////////////
    |ВЫБРАТЬ
    |  ВТ_ТаблицаДанных.Соответствие КАК Соответствие
    |ИЗ
    |    ВТ_ТаблицаДанных
    |";
    Запрос.УстановитьПараметр("ТЗНоменклатураСоответствия", ТЗНоменклатураСоответствия);
    
    Последнее редактирование: 24 июн 2014
  6. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.984
    Симпатии:
    398
    Баллы:
    104
    Думаю вот здесь сейчас пойдет недопонимание у автора :D

Поделиться этой страницей