Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Вывод печатной формы по условию в выборке

Вывод печатной формы по условию в выборке
Я
   FreeSP31
 
03.12.18 - 06:05
Доброго утра всем!
Прошу помощи начинающему.
Ломаю голову над следующей проблемой. Необходимо, чтобы при выводе печатной формы из документа ЧекККМ, в нее переносились некоторые товары.

Есть вот такой запрос:

Запрос.Текст = 
        "ВЫБРАТЬ
        |    ТаблицаТовары.НомерСтроки,
        |    ТаблицаТовары.Номенклатура,
        |   ТаблицаТовары.Сумма,
        |    ТаблицаТовары.Характеристика,
        |    ТаблицаТовары.Количество,
        |    ТаблицаТовары.Упаковка,
        |    ТаблицаТовары.КоличествоУпаковок
        |ПОМЕСТИТЬ ТаблицаТовары
        |ИЗ
        |    &Товары КАК ТаблицаТовары
        |    //////////////////////////////////////////////////////////////////////

        |    
        |    ;
        |    ВЫБРАТЬ
        |    ДокументТовары.Номенклатура.НаименованиеПолное КАК НоменклатураПредставление,
        |   ДокументТовары.ВидНоменклатуры КАК ВидНоменклатуры,
        |   ДокументТовары.Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
        |    ПРЕДСТАВЛЕНИЕ(ДокументТовары.Характеристика) КАК ХарактеристикаПредставление,
        |    ДокументТовары.Количество,
        |    ДокументТовары.Упаковка,
        |    ДокументТовары.КоличествоУпаковок,
        |    ДокументТовары.НомерСтроки,
        |   ДокументТовары.Сумма КАК Цена,
        |    ПРЕДСТАВЛЕНИЕ(ДокументТовары.Номенклатура.ЕдиницаИзмерения) КАК ПредставлениеБазовойЕдиницыИзмерения,
        |    ВЫБОР
        |        КОГДА ДокументТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
        |            ТОГДА ПРЕДСТАВЛЕНИЕ(ДокументТовары.Упаковка.ЕдиницаИзмерения)
        |        ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ДокументТовары.Номенклатура.ЕдиницаИзмерения)
        |    КОНЕЦ КАК ЕдиницаИзмерения
        |ИЗ
        |    ТаблицаТовары КАК ДокументТовары
        |
        |УПОРЯДОЧИТЬ ПО
        |    ДокументТовары.НомерСтроки";

Далее код, который работает:
Если    Выборка.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар Тогда
//Тут идет код вывода печатной формы

КонецЕсли

Но необходимо, чтобы код вывода формы работал при условии:
Если Выборка.ВидНоменклатуры = "Телефон".
Подскажите, пожалуйста, как правильно прописать это условие?
P.S.
Поле ВидНоменклатуры в документе создано, при открытии заполняется. При выборе по типу номенклатуры команда Сообщить(Выборка.ВидНоменклатуры); тоже работает.
 
 
   hhhh
 
1 - 03.12.18 - 06:37
(0) что-то нет у вас тут
      "ВЫБРАТЬ
        |    ТаблицаТовары.НомерСтроки,
        |    ТаблицаТовары.Номенклатура,
        |   ТаблицаТовары.Сумма,
        |    ТаблицаТовары.Характеристика,
        |    ТаблицаТовары.Количество,
        |    ТаблицаТовары.Упаковка,
        |    ТаблицаТовары.КоличествоУпаковок
        |ПОМЕСТИТЬ ТаблицаТовары
 

такого плдя.
   hhhh
 
2 - 03.12.18 - 07:12
(1) такого поля
   FreeSP31
 
3 - 03.12.18 - 11:37
(2)Там поля "Тип номенклатуры" тоже нет.
   hhhh
 
4 - 03.12.18 - 11:57
(3) тип номенклатуры у вас по другому
    |   ДокументТовары.Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
    

заметили?

А ВидНоменклатуры

       |   ДокументТовары.ВидНоменклатуры КАК ВидНоменклатуры,
 
найдите отличие в этих двух строчках.
   FreeSP31
 
5 - 03.12.18 - 12:23
(4) Заметил, спасибо. Изменил на "ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры"

Пишу условие

Если    Выборка.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар Тогда
///Вывожу часть печатной формы

КонецЕсли;

Это условие формирует нужную мне часть.

Когда пишу условие:
Если Выборка.ВидНоменклатуры = "Телефон" Тогда
///Вывожу часть печатной формы

КонецЕсли;

получаю пустоту.
   hhhh
 
6 - 03.12.18 - 12:28
(5) ну, "Телефон" - это ведь тупо текст. А в виде номенклатуры у вас не текст походу. Поэтому сравнение текста с нетекстом - не может у вас такое сравниться.
   FreeSP31
 
7 - 03.12.18 - 12:38
(6) Это точно.
Там поле ввода
И путь к данным: "Объект.Товары.Номенклатура.ВидНоменклатуры" с типом СправочникСсылка.ВидыНоменклатуры
   FreeSP31
 
8 - 03.12.18 - 12:45
(6) Спасибо, Вы натолкнули на правильный путь.
Условие надо было сделать таким:
Если    Выборка.ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Смартфон") Тогда
   hhhh
 
9 - 03.12.18 - 12:46
(7) ну вот и сравнивай с видои номенклатуры
   FreeSP31
 
10 - 03.12.18 - 12:47
(9) Все получилось, еще раз спасибо!
 
 Рекламное место пустует

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