Если вы начинающий разработчик - вступайте в мою группу помощник программиста 1С. В ней мы обсуждаем вопросы программирования в 1С для начинающих (Владимир Милькин, школа программирования).

<<< Основы Группировка Условия Упорядочивание Функции
<<< Итоги Соединение Объединение Параметры

Параметры в запросах в языке 1С 8.3, 8.2 (в примерах)

/// Как передать в запрос параметры простых типов в 1с 8.3, 8.2
 
Процедура ПередачаВЗапросПараметровПростыхТипов()
    Запрос = Новый Запрос(
        "
        | ВЫБРАТЬ
        |   РАЗНОСТЬДАТ(&ТекущаяДата, ДАТАВРЕМЯ(2013, 12, 01), ДЕНЬ) 
        |"
    );
 
    Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());
 
    Результат = Запрос.Выполнить();
    ОткрытьЗначение(Результат.Выгрузить(ОбходРезультатаЗапроса.Прямой));
КонецПроцедуры
 
/// Как передать в запрос параметр списочного типа в 1с 8.3, 8.2
 
Процедура ПередачаВЗапросПараметраСписочногоТипа()
    Запрос = Новый Запрос(
        "
        | ВЫБРАТЬ
        |   Наименование
        | ИЗ
        |   Справочник.Номенклатура
        | ГДЕ
        |   Наименование В (&СписокНоменклатуры)
        |"
    );
 
    СписокНоменклатуры = Новый Массив;
    СписокНоменклатуры.Добавить("Товары");
    СписокНоменклатуры.Добавить("Материалы");
 
    Запрос.УстановитьПараметр("СписокНоменклатуры", СписокНоменклатуры);
    Результат = Запрос.Выполнить();
    ОткрытьЗначение(Результат.Выгрузить(ОбходРезультатаЗапроса.Прямой));
КонецПроцедуры
 
/// Как передать в запрос таблицу в качестве параметра в 1с 8.3, 8.2
 
//  -------------   --------------------------------
//  |Люди       |   |   Характеристики              |
//  -------------   ---------------------------------
//  |ИМЯ        |   |   ИМЯ             ВОЗРАСТ     |
//  -------------   ---------------------------------
//  |Алена      |   |   Алена           21          |
//  |Алефтина   |   |   Алефтина        18          |
//  |Владимир   |   |   Павел           25          |
//  |Владислав  |   |   Петр            30          |
//  |           |   |   Порфирий        50          |
//  -------------   ---------------------------------
 
/// Как передать в запрос таблицу в качестве параметра в 1с 8.3, 8.2
 
Процедура ПередачаВЗапросТаблицыВКачествеПараметра()
 
    СписокЛюдей = новый ТаблицаЗначений;
    СписокЛюдей.Колонки.Добавить("Наименование", 
        Новый ОписаниеТипов("Строка"));
    СписокЛюдей.Колонки.Добавить("Возраст",
        Новый ОписаниеТипов("Строка"));
 
    Стр = СписокЛюдей.Добавить();
    Стр.Наименование = "Петр";
    Стр.Возраст = "30";
 
    Стр = СписокЛюдей.Добавить();
    Стр.Наименование = "Павел";
    Стр.Возраст = "25";
 
    Запрос = Новый Запрос(
        "
        | ВЫБРАТЬ
        |   Наименование,
        |   Возраст
        | ИЗ
        |   Справочник.Характеристики
        | ГДЕ
        |   (Наименование, Возраст) В (&СписокЛюдей)
        |"
    );
 
    Запрос.УстановитьПараметр("СписокЛюдей", СписокЛюдей);
 
    Результат = Запрос.Выполнить();
    ОткрытьЗначение(Результат.Выгрузить(ОбходРезультатаЗапроса.Прямой));
КонецПроцедуры
 
/// Как использовать таблицу переданную в запрос в качестве 
/// источника в 1с 8.3, 8.2
 
Процедура ТаблицаПереданнаяВЗапросКакИсточникДанных()
    Страны = новый ТаблицаЗначений;
    Страны.Колонки.Добавить("Название", Новый ОписаниеТипов("Строка"));
 
    Стр = Страны.Добавить();
    Стр.Название = "Россия";
 
    Стр = Страны.Добавить();
    Стр.Название = "Австралия";
 
    Стр = Страны.Добавить();
    Стр.Название = "Новая зеландия";
 
    Запрос = Новый Запрос(
        "
        | ВЫБРАТЬ
        |   Название
        | ПОМЕСТИТЬ
        |   ВременнаяТаблица
        | ИЗ
        |   &Страны Как Страны
        | ;
        | ВЫБРАТЬ
        |   Название
        | ИЗ
        |   ВременнаяТаблица
        |"
    );
 
    Запрос.УстановитьПараметр("Страны", Страны);
 
    Результат = Запрос.Выполнить();
    ОткрытьЗначение(Результат.Выгрузить(ОбходРезультатаЗапроса.Прямой));
КонецПроцедуры

Если вы начинающий разработчик - вступайте в мою группу помощник программиста 1С. В ней мы обсуждаем вопросы программирования в 1С для начинающих (Владимир Милькин, школа программирования).

<<< Основы Группировка Условия Упорядочивание Функции
<<< Итоги Соединение Объединение Параметры

Параметры в запросах в языке 1С 8.3, 8.2 (в примерах)

С уважением, (школа 1С программистов).

Подписывайтесь и получайте новые статьи и обработки на почту (не чаще 1 раза в неделю).

Вступайте в мою группу ВКонтакте, Одноклассниках, Facebook или Google+ — самые последние обработки, исправления ошибок в 1С, всё выкладываю там в первую очередь.

Владимир Милькин
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.