|
Запрос для вхождения нескольких товаров | ☑ | ||
---|---|---|---|---|
0
trialex3
30.01.24
✎
22:08
|
Добрый день.Подскажите пожалуйста логику запроса который должен показать все заказы и КП, в которых присутствуют ВСЕ из перечисленных характеристик.
Пока придумал только так. Условия буду добавлять циклом по списку характеристик. Но одним местом чувствую что так неправильно) ВЫБРАТЬ РАЗЛИЧНЫЕ ЗаказКлиента.Ссылка КАК Ссылка ИЗ Документ.ЗаказКлиента КАК ЗаказКлиента ГДЕ 1 = 1 И ЗаказКлиента.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ ЗаказКлиентаТовары.Ссылка КАК Ссылка ИЗ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары ГДЕ ЗаказКлиентаТовары.Характеристика = &Характеристика) И ЗаказКлиента.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ ЗаказКлиентаТовары.Ссылка КАК Ссылка ИЗ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары ГДЕ ЗаказКлиентаТовары.Характеристика = &Характеристика2) ОБЪЕДИНИТЬ ВЫБРАТЬ РАЗЛИЧНЫЕ КП.Ссылка ИЗ Документ.КоммерческоеПредложениеКлиенту КАК КП ГДЕ 2 = 2 И КП.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ КПТовары.Ссылка КАК Ссылка ИЗ Документ.КоммерческоеПредложениеКлиенту.Товары КАК КПТовары ГДЕ КПТовары.Характеристика = &Характеристика) И КП.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ КПТовары.Ссылка КАК Ссылка ИЗ Документ.КоммерческоеПредложениеКлиенту.Товары КАК КПТовары ГДЕ КПТовары.Характеристика = &Характеристика2) |
11 |
||
1
vicof
30.01.24
✎
22:11
|
ГДЕ Характеристика В (&СписокХарактеристик)
|
3 11 30 |
||
2
Волшебник
30.01.24
✎
22:13
|
Ага, смотрю
|
|||
3
trialex3
30.01.24
✎
22:18
|
(1) типа выбрать уникальные ссылки из тч товары где товары.характеристика в (список)? Разве это не условие или?
|
|||
4
Hmster
30.01.24
✎
22:21
|
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка КАК Ссылка, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.Номенклатура) КАК Номенклатура ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ГДЕ РеализацияТоваровУслугТовары.Номенклатура В(&МассивТоваров) СГРУППИРОВАТЬ ПО РеализацияТоваровУслугТовары.Ссылка ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.Номенклатура) = &КоличествоТоваровВМассиве |
6 |
||
5
trialex3
30.01.24
✎
22:21
|
ВЫБРАТЬ
ЗаказКлиентаТовары.Ссылка КАК Ссылка ИЗ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары ГДЕ ЗаказКлиентаТовары.Характеристика В (&МассивХарактеристик) он мне даст все заказы где хотя бы одна характеристика есть |
|||
6
trialex3
30.01.24
✎
22:22
|
(4) в массив 3 товара а в счете эти 3 и еще 2 других. Разве покатит тут сверять на количество?
|
7 |
||
7
Hmster
30.01.24
✎
22:26
|
(6) ты выбираешь строки только с нужными характеристиками, количество характеристик будет от 0 до нужного количества и это мы отбираем в ИМЕЮЩИЕ
|
8 |
||
8
trialex3
30.01.24
✎
22:28
|
(7) Благодарю, сэр :)
|
|||
9
Волшебник
30.01.24
✎
22:28
|
запрос к ТЧ документа — моветон
|
12 26 |
||
10
Волшебник
30.01.24
✎
22:28
|
Сэр порет чушь
|
|||
11
yopQua
30.01.24
✎
22:31
|
эта тема из (0) похоже стала популярной на собеседованиях или еще в каких то тестовых случаях. не первый раз вижу такую задачу, в том числе тут. 95%, что для таких популярных вопросов в нете есть решения. но вот пока читал, пришел вариант вроде того, что использовать Имеющие. Передаешь параметром количество характеристик/товаров или чего там еще, выбираешь с условием из (1), считаешь по ссылке на заказ или чего там Сумма(1) для каждого вхождения и Имеющие = 3, например. (0) Правильно?
гм, пока писал... |
|||
12
trialex3
30.01.24
✎
22:33
|
(9) Именно поэтому я и пришел сюда. Если есть возможность сделать правильно - я только за немного выпрямить свои руки)
|
13 |
||
13
Волшебник
30.01.24
✎
22:35
|
(12) Мы Вам будем рады, если Вы не будете врать
|
14 |
||
14
trialex3
30.01.24
✎
22:38
|
(13) А я ничего и не утаивал, милорд :D
|
15 16 |
||
15
yopQua
30.01.24
✎
22:39
|
(14) откуда задача?)
|
17 18 22 |
||
16
Волшебник
30.01.24
✎
22:39
|
(14) Вы понимаете разницу между утаивать и врать?
|
19 |
||
17
trialex3
30.01.24
✎
22:40
|
(15) из сегодняшнего запроса от отдела продаж. Они ищут все похожие заказы клиентов и КП по некоторому набору характеристик в УПП. Там используют обычный отчет где вручную набивают условия. Попросили перенести в ЕРП.
|
20 23 |
||
18
trialex3
30.01.24
✎
22:41
|
(15) Набор берут обычно из самого заказа. Таким образом находят все заказы которые могу теоретически быть под один объект строитесльства.
|
|||
19
trialex3
30.01.24
✎
22:42
|
(16) б*я буду начальник. век воли не видать - как на духу все говорю
|
24 |
||
20
Волшебник
30.01.24
✎
22:43
|
(17) Или включите программу проверки орфографии, или отключите программу внесения опечаток
|
|||
21
PR
30.01.24
✎
22:43
|
ВЫБРАТЬ
МАКСИМУМ(ЗаказКлиентаТовары.Характеристика = &Характеристика1) КАК Характеристика1, МАКСИМУМ(ЗаказКлиентаТовары.Характеристика = &Характеристика2) КАК Характеристика2, ЗаказКлиентаТовары.Ссылка КАК Ссылка ИЗ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары ГДЕ (ЗаказКлиентаТовары.Характеристика = &Характеристика1 ИЛИ ЗаказКлиентаТовары.Характеристика = &Характеристика2) СГРУППИРОВАТЬ ПО ЗаказКлиентаТовары.Ссылка ИМЕЮЩИЕ МАКСИМУМ(ЗаказКлиентаТовары.Характеристика = &Характеристика1) = ИСТИНА И МАКСИМУМ(ЗаказКлиентаТовары.Характеристика = &Характеристика2) = ИСТИНА |
25 |
||
22
trialex3
30.01.24
✎
22:44
|
(15) ну и в моем понимании это должна быть тч с товарами из заказа + галочки и тч с ссылками на найденные документы. Интерфейс придумал а сам запрос нет ))))
|
|||
23
yopQua
30.01.24
✎
22:44
|
(17) судя по гуглу в УПП 1.3 нет документа Коммерческое предложение
|
27 |
||
24
Волшебник
30.01.24
✎
22:44
|
(19) Да, но нет.
|
|||
25
PR
30.01.24
✎
22:44
|
(21) В принципе " = ИСТИНА" можно и не писать, но тогда конструктор запросов что-то ломается и начинает тупить
|
|||
26
PR
30.01.24
✎
22:45
|
(9) Почему?
Если данные нужно выбирать из ТЧ? |
|||
27
trialex3
30.01.24
✎
22:45
|
(23) у нас заказ покупателя это и счет и кп. а вот в ерп уже разделили на 2 документа
|
28 |
||
28
trialex3
30.01.24
✎
22:47
|
(27) собственно поэтому и искать надо теперь не только в заказе клиента а еще и в КП...
|
|||
29
Волшебник
30.01.24
✎
22:48
|
Моветон не пройдёт
|
|||
30
PR
30.01.24
✎
22:49
|
Там в любом случае точно не (1), там несколько условий по И
Типа в ТЧ есть характеристика1 И в ТЧ есть характеристика2 И... |
|||
31
yopQua
30.01.24
✎
22:50
|
на первый взгляд сходится. хотя и не имеет отношения к запросу
|
|||
32
youalex
31.01.24
✎
05:47
|
ВЫБРАТЬ Количество(*) Количество
ПОМЕСТИТЬ ВТ ИЗ ПланВидовХарактеристик.Характеристики ГДЕ Ссылка В (&Список) ; ВЫБРАТЬ Ссылка ИЗ Документ.ЗаказКлиента.Товары ГДЕ Характеристика В (&Список) СГРУППИРОВАТЬ ПО Ссылка ИМЕЮЩИЕ КОЛИЧЕСТВО (РАЗЛИЧНЫЕ Характеристика) В (ВЫБРАТЬ ВТ.Количество ИЗ ВТ) |
|||
33
Лирик
31.01.24
✎
08:31
|
Помогите сделать запрос
По моему уже было |
|||
34
AlexeyKh
31.01.24
✎
11:49
|
как вариант просто посчитать количества строк ТЧ
1.Всего 2.по массиву Характеристик и вывести только те где 1. = 2. (элементарно-же) вот пример (склад на характеристику замените) Выбрать первые 100 Таб.ссылка //количество(таб.Склад) как КВсего, //Сумма(Выбор когда таб.Склад в (&Склады)тогда 1 иначе 0 конец) как КОтбор из Документ.ЗаказКлиента.товары Таб где таб.ссылка.Проведен //и Таб.ВариантОбеспечения = Значение(Перечисление.ВариантыОбеспечения.Отгрузить) сгруппировать по таб.ссылка имеющие количество(таб.Склад) = Сумма(Выбор когда таб.Склад в (&Склады)тогда 1 иначе 0 конец) упорядочить по таб.ссылка.дата убыв |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |