Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 08:45

Вопрос по запросам

Автор Nikita126, 08 ноя 2018, 15:54

0 Пользователей и 1 гость просматривают эту тему.

Nikita126

Здравствуйте! Подскажите пожалуйста ,как сделать в запросе :
Запрос = Новый запрос ("ВЫБРАТЬ
                       | Номенклатура.Ссылка КАК Наименование,
                       | Номенклатура.Артикул КАК Артикул,
                       | Номенклатура.Цена КАК Цена,
                       | Номенклатура.Себестоимость КАК Себестоимость,
                       | Номенклатура.Прибыльность КАК Прибыльность,
                       |ИЗ
                       | Справочник.Номенклатура КАК Номенклатура" ) ;


Вывод строк только тех ,где Родитель=ШкафыКупе?

Пробовал так:
Запрос = Новый запрос ("ВЫБРАТЬ
                       | Номенклатура.Ссылка КАК Наименование,
                       | Номенклатура.Артикул КАК Артикул,
                       | Номенклатура.Цена КАК Цена,
                       | Номенклатура.Себестоимость КАК Себестоимость,
                       | Номенклатура.Прибыльность КАК Прибыльность,
                       | Номенклатура.Родитель КАК Родитель
                       |ИЗ
                       | Справочник.Номенклатура КАК Номенклатура
                       |ГДЕ
                       | Номенклатура.Родитель = &ШкафыКупе" ) ;


Выводит ошибку...

LexaK

только для вас
попробуйте так

|ГДЕ
|    Номенклатура.Родитель.Наименование = ""Шкафы куме"" //или как там они у вас точно называются
если помогло нажмите: Спасибо!

Nikita126

Цитата: LexaK от 08 ноя 2018, 16:08
только для вас
попробуйте так

|ГДЕ
|    Номенклатура.Родитель.Наименование = ""Шкафы куме"" //или как там они у вас точно называются


Ошибка
{Справочник.Заказ.Форма.ФормаЭлемента.Форма(243,70)}: Пропущен символ '"' (двойная кавычка)
                     |    Номенклатура.Родитель.Наименование = ""Шкафы куме"" ) ;<<?>> (Проверка: Сервер)
{Справочник.Заказ.Форма.ФормаЭлемента.Форма(243,70)}: Ожидается символ ')'
                     |    Номенклатура.Родитель.Наименование = ""Шкафы куме"" ) ;<<?>> (Проверка: Сервер)
{Справочник.Заказ.Форма.ФормаЭлемента.Форма(243,70)}: Пропущен символ '"' (двойная кавычка)
                     |    Номенклатура.Родитель.Наименование = ""Шкафы куме"" ) ;<<?>> (Проверка: Тонкий клиент)
{Справочник.Заказ.Форма.ФормаЭлемента.Форма(243,70)}: Ожидается символ ')'
                     |    Номенклатура.Родитель.Наименование = ""Шкафы куме"" ) ;<<?>> (Проверка: Тонкий клиент)

oleg-x

Что за ошибку?
Параметр в запросе указали, а задали его?
Если да, то каким образом, какой тип?
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

Nikita126

Цитата: oleg-x от 08 ноя 2018, 16:12
Что за ошибку?
Параметр в запросе указали, а задали его?
Если да, то каким образом, какой тип?

Вот весь код:
&НаСервере
Процедура ШаблонТест1ПриИзмененииНаСервере()
Если Объект.ШаблонТест1 = Истина Тогда
ЭтаФорма.Элементы.ШаблонТест1.Доступность = Ложь;
   
СписокТоваров = новый СписокЗначений;
Запрос = Новый запрос ("ВЫБРАТЬ
                       | Номенклатура.Ссылка КАК Наименование,
                       | Номенклатура.Артикул КАК Артикул,
                       | Номенклатура.Цена КАК Цена,
                       | Номенклатура.Себестоимость КАК Себестоимость,
                       | Номенклатура.Прибыльность КАК Прибыльность,
                       | Номенклатура.Родитель КАК Родитель
                       |ИЗ
                       | Справочник.Номенклатура КАК Номенклатура
   |ГДЕ
   |    Номенклатура.Родитель.Наименование = ""Шкафы куме"" ) ;
Запрос.УстановитьПараметр("ШкафыКупе",СписокТоваров);

    Запрос.УстановитьПараметр("Родитель", "ШаблонШкафыКупе");

Результат = Запрос.Выполнить().Выгрузить();

    Объект.Комплектации.Загрузить(Результат);


   
КонецЕсли
КонецПроцедуры


Kamor

Удалите вот это:
Запрос.УстановитьПараметр("ШкафыКупе",СписокТоваров);
Запрос.УстановитьПараметр("Родитель", "ШаблонШкафыКупе");

Nikita126

СписокТоваров = новый СписокЗначений;
   Запрос = Новый запрос ("ВЫБРАТЬ
                          |   Номенклатура.Ссылка КАК Наименование,
                          |   Номенклатура.Артикул КАК Артикул,
                          |   Номенклатура.Цена КАК Цена,
                          |   Номенклатура.Себестоимость КАК Себестоимость,
                          |   Номенклатура.Прибыльность КАК Прибыльность,
                          |   Номенклатура.Родитель КАК Родитель
                          |ИЗ
                          |   Справочник.Номенклатура КАК Номенклатура
                          |ГДЕ
                     |    Номенклатура.Родитель.Наименование = ""ШаблонШкафыКупе""" ) ;

   Результат = Запрос.Выполнить().Выгрузить();
   
    Объект.Комплектации.Загрузить(Результат);

oleg-x

СписокТоваров = новый СписокЗначений;
Если будешь отбирать по списку товаров, то в запросе надо не = писать, а в()
Ном = &СписокТоваров //Не правильно
Ном В(&СписокТоваров) //Правильно
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

Теги: Запрос  8.3 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск