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

Выбрать свойства номенклатуры в запросе

Выбрать свойства номенклатуры в запросе
Я
   Kalina
 
30.03.21 - 12:31
Добрый день, никак не соображу как выбрать все свойства Номенклатуры Запросом
чтобы результат был вида
Номенклатура Свойство1 Свойство2 Свойство3 Свойство4
Буду признателен за подробный, разжеваный ответ :)
С Уважением Kalina
   mikecool
 
1 - 30.03.21 - 12:34
Используй СКД, Люк!
   dka80
 
2 - 30.03.21 - 12:38
(1) в СКД так ты тоже не выведешь. Будет иерархия
   mikecool
 
3 - 30.03.21 - 12:40
(2) почему?
   dka80
 
4 - 30.03.21 - 12:41
Потому что ТС хочет вывести в виде таблицы. Тогда и в СКД нужно выводить таблицу. В строки ты поместишь Номенклатуру, а в колонки и ресурсы что?
   Kassern
 
5 - 30.03.21 - 12:43
(4) А зачем тебе ресурсы? Номенклатура, Артикул, материал, страна производитель и т.д. все в строки, в чем проблема?
   dka80
 
6 - 30.03.21 - 12:47
(5) т.е. ТС хочет вывести не допсвойства, а реквизиты объекта?
   Kassern
 
7 - 30.03.21 - 13:13
(6) даже если это будут доп реквизиты из ТЧ, то если список не огромный, можно через левое соединение с номенклатурой их вывести, предварительно отобрав по нужному свойству в соединении
   dka80
 
8 - 30.03.21 - 13:46
(8) вообщем, вопросов много. Поэтому и способы реализации могут быть разными
   Kalina
 
9 - 30.03.21 - 15:02
(8) Мне б один какой-нибудь, желательно по-проще, я думал что-то типа вложенного запроса - выбрать сначала все из РС ЗначенияСвойствОбъектов, но как потом это по Свойствам разложить - никак не соображу, чтобы одной записью получилось
   dka80
 
10 - 30.03.21 - 15:13
(9) у тебя предопределенное количество свойств?
   Cthulhu
 
11 - 30.03.21 - 15:15
(9): сначала бы от тебя постановку (описание проблемы) попроще (поадекватнее).
это реквизиты справочника? или допюсвойства? или реквизиты таб.састи? или доб.свойства строки таб.части? а если допюсвойства - см. характеристики и/или регистр сведений - какие?
   mikecool
 
12 - 30.03.21 - 15:52
выбрать список свойств, засунуть в ВТ
выбрать номенклатуру, полное соединение с ВТ свойств
левое соединение со значениями свойсв - повторить по кол-ву свойств
профит
   Kassern
 
13 - 30.03.21 - 15:59
(9) Как вариант что-то типа такого, только по каждому свойству:
ВЫБРАТЬ
    Товары.Ссылка КАК Номенклатура,
    НоменклатураДополнительныеРеквизиты.Значение КАК Сезон
ИЗ
    Справочник.Номенклатура КАК Товары
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
        ПО Товары.Ссылка = НоменклатураДополнительныеРеквизиты.Ссылка
            И (НоменклатураДополнительныеРеквизиты.Свойство = &СвойствоСезон)
   Kalina
 
14 - 30.03.21 - 16:20
(11) Есть Справочник Номенклатура, в нем Элементы (ПленкаБОПП), у каждого Элемента 3 свойства, Толщина, Ширина, Вид, все известно и все статично, нужно получить табличку, где каждая строка имеет вид - Номенклатура.Наименование, Толщина, Ширина, Вид
потом эту таблицу в Excel, потом в Весы
вот и вся задача :)
   программистище
 
15 - 30.03.21 - 16:23
(14) делай как (13) сказал и будет счастье
   Kassern
 
16 - 30.03.21 - 16:24
(14) я тебе расписал как это сделать, еще и пример скинул в (13) Поменяй Справочник.Номенклатура.ДополнительныеРеквизиты на твой регистр ЗначенияСвойствОбъектов и добавь еще 2 такие таблички но с разными свойствами. Я так понял у тебя 10ая торговля и эти свойства все в ЗначенияСвойствОбъектов
   Kalina
 
17 - 30.03.21 - 16:39
(16) у меня КА 1.1, не очень понятно куда такие таблички добавлять,  как в (13) - выбирается только одно Свойство, которое в &СвойствоСезон, как то их объединить с остальными х.з. ?
   Kassern
 
18 - 30.03.21 - 16:41
(17) смотри фокус, дальше надеюсь ты сам...
ВЫБРАТЬ
    Товары.Ссылка КАК Номенклатура,
    НоменклатураДополнительныеРеквизиты.Значение КАК Сезон,
    НоменклатураДополнительныеРеквизиты1.Значение КАК Вид
ИЗ
    Справочник.Номенклатура КАК Товары
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
        ПО Товары.Ссылка = НоменклатураДополнительныеРеквизиты.Ссылка
            И (НоменклатураДополнительныеРеквизиты.Свойство = &СвойствоСезон)
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты1
        ПО Товары.Ссылка = НоменклатураДополнительныеРеквизиты1.Ссылка
            И (НоменклатураДополнительныеРеквизиты1.Свойство = &СвойствоВид)
   dka80
 
19 - 30.03.21 - 16:41
(17)
ВЫБРАТЬ
    Товары.Ссылка КАК Номенклатура,
    НоменклатураДополнительныеРеквизиты.Значение КАК Сезон,
    НоменклатураДополнительныеРеквизиты.Значение КАК Сезон2
ИЗ
    Справочник.Номенклатура КАК Товары
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
        ПО Товары.Ссылка = НоменклатураДополнительныеРеквизиты.Ссылка
            И (НоменклатураДополнительныеРеквизиты.Свойство = &СвойствоСезон)
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты2
        ПО Товары.Ссылка = НоменклатураДополнительныеРеквизиты.Ссылка
            И (НоменклатураДополнительныеРеквизиты.Свойство = &СвойствоСезон2)
   Kassern
 
20 - 30.03.21 - 16:43
(19) только не НоменклатураДополнительныеРеквизиты.Значение КАК Сезон2, а НоменклатураДополнительныеРеквизиты2.Значение КАК Сезон2
   dka80
 
21 - 30.03.21 - 16:45
(20) в данном контексте это существенное замечание. Иначе следующий вопрос был бы "не работает!" ))
   Kassern
 
22 - 30.03.21 - 16:45
(21) ага, мол почему свойство задваивается))
   Temai
 
23 - 30.03.21 - 16:46
Делать надо через СКД, добавляешь 2 набора данных и связываешь через закладку "Связи наборов данных". Значения свойств кидаешь в ресурс. вроде так
   Kassern
 
24 - 30.03.21 - 16:49
(23) и какой будет итог по ресурсу свойства вид?
   Kalina
 
25 - 30.03.21 - 16:53
(22) Спасибо, завтра попробую,
   youalex
 
26 - 30.03.21 - 16:58
если у тебя прописаны характеристики в объекте метаданных (или в скд-шном запросе) то в СКД можно вывести доп. свойства как обычные реквизиты от Ссылка.
   Temai
 
27 - 30.03.21 - 16:58
Ошибся, через закладку характеристики делается.
Почитайте эту статью:
https://its.1c.ru/db/metod8dev/content/1795/hdoc
   Kassern
 
28 - 30.03.21 - 17:00
(27) и видим мы там такую табличку
Номенклатура     ВидСвойства     Свойство
Лазерный принтер 5250197-203 Minolta-QMS     Ширина     630
Лазерный принтер 5250197-203 Minolta-QMS     Высота     320
Лазерный принтер 5250197-203 Minolta-QMS     Масса     5 800
Лазерный принтер Canon LBP-810     Масса     4 300
Лазерный принтер Canon LBP-810     Ширина     470
Лазерный принтер Canon LBP-810     Высота     31

а ТС нужно каждое свойство отдельной колонкой...
   Temai
 
29 - 30.03.21 - 17:03
(28) Коллега, еще раз, надо делать через закладку характеристики и значение свойства кидать в ресурс и тогда выводится в отдельную колонку, сам недавно такой отчет делал
   Temai
 
30 - 30.03.21 - 17:04
Могу где то ошибиться, но точно через 2 набора данных и эту закладку
 
 Рекламное место пустует
   Kassern
 
31 - 31.03.21 - 09:39
(30) Будет круто, если скинешь рабочий пример хотя бы для 2х доп реквизитов для номенклатуры, в виде таблицы, а не списка, где ресурсами будут свойства.
   Temai
 
32 - 31.03.21 - 09:55
(31) Без проблем, почту открой
   Kassern
 
33 - 31.03.21 - 10:07
(32) открыл
   Temai
 
34 - 31.03.21 - 10:14
(33) Отправил)
   Kassern
 
35 - 31.03.21 - 10:26
(34) Спасибо, действительно канает) Даж интересно стало, какой отчет быстрее сформируется, через связи наборов, или тупо обычным запросом с отборами.
   Temai
 
36 - 31.03.21 - 10:33
(35) Не за что. Просто если свойств больше чем 2, зае**** писать отборы)
   Kassern
 
37 - 31.03.21 - 10:51
(36) По факту реально удобно, если свойств дохера, буду знать спасибо)
вот что замер производительности говорит:
1) Вариант через наборы. ОбщийМодуль.ВариантыОтчетов.Модуль    1 748    ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);    1    0,093514    61,44
2)Вариант через запрос.  ОбщийМодуль.ВариантыОтчетов.Модуль    1 748    ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);    1    0,033675    35,24
П.С. Единственное, что наименование свое для каждой колонки и разные размеры врятли удастся задать, но это мелочи


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