Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

как запросом выполнить выборку по конкретному значению реквизита, например все ТМЦ -Товары

как запросом выполнить выборку по конкретному значению реквизита, например все ТМЦ -Товары
Я
   alpha78
 
16.03.21 - 20:56
Здравствуйте.
как запросом выполнить выборку ТМЦ по конкретному значению реквизита ВидТМЦ = Товары.
Реквизит берет данные из справочника "Виды номенклатуры"
Вот сделал внешнюю обработочку:

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

хоть есть Товары но ничего не выдает. Как быть, заранее спасибо

Выдает ошибку: Не задано значение
   shuhard
 
1 - 16.03.21 - 21:27
(0)[Запрос.УстановитьПараметр("Товар", "Товар"); ]
так не взлетит, вид номенклатуры - справочник
   mikecool
 
2 - 16.03.21 - 21:27
в параметр передавай значение того же типа, что и Номенклатура.ВидНоменклатуры
   alpha78
 
3 - 16.03.21 - 21:45
как лучше оформить код?
   alpha78
 
4 - 16.03.21 - 21:50
попробовал так 
Товар = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар");
    
    добавил строку - опять ничего
   tixis
 
5 - 16.03.21 - 23:03
а что у тебя в переменной товар после выполнения НайтиПоНаименованию("Товар"), переменная заполнена? Тип у переменной какой?
   acht
 
6 - 16.03.21 - 23:18
(5) + у метода НайтиПоНаименованию есть еще параметры. Особенно второй.
   alpha78
 
7 - 16.03.21 - 23:20
строковый
   alpha78
 
8 - 16.03.21 - 23:40
сделал так 
    Т = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар");
    
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
                   |    Номенклатура.Код,
                   |    Номенклатура.Наименование,
                   |    Номенклатура.Артикул,
                   |    Номенклатура.БазоваяЕдиницаИзмерения,
                   |    Номенклатура.ВидНоменклатуры
                   |ИЗ
                   |    Справочник.Номенклатура КАК Номенклатура
                   |ГДЕ
                   |    Номенклатура.ВидНоменклатуры.Наименование = &Тов";
    
    Запрос.УстановитьПараметр("Тов", Т);
    
    ЭлементыФормы.ТабличноеПоле1.Значение =Запрос.Выполнить().Выгрузить();
    ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки();
 все равно пусто, хотя товары есть
   acht
 
9 - 16.03.21 - 23:43
(8) Зачем ты упорно так пытаешся сравнить строку и ссылку?
   Serg_1960
 
10 - 16.03.21 - 23:44
ГДЕ Номенклатура.ВидНоменклатуры = &Тов
   alpha78
 
11 - 16.03.21 - 23:47
после упорных бое получилось, спасибо Сергей

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.