|
Запрос, сортировка списка номенклатуры по ТЧ справочника | ☑ | ||
---|---|---|---|---|
0
Acemore
31.05.17
✎
10:37
|
Добрый день.
Есть результат запроса со списков номенклатуры, есть необходимо отсортировать в соответствии с порядком строк номенклатуры, заданным в ТЧ справочника. ТЧ может не содержать некоторые элементы результата запроса, в связи с этим, левое соединение обрезает результат основного запроса. Есть идеи? |
|||
1
Acemore
31.05.17
✎
10:38
|
(0) Да, сортировать собираюсь по номеру строки
|
|||
2
lodger
31.05.17
✎
10:39
|
не делать левое соединение.
|
|||
3
Letum
31.05.17
✎
10:40
|
Левое соединение с тч + ЕСТЬNULL(ТЧ.НомерСтроки, 99999999) Как порядок.
|
|||
4
lodger
31.05.17
✎
10:41
|
(3) у тебя nullов не будет при левом соединении.
|
|||
5
Acemore
31.05.17
✎
10:46
|
(3) Так не работает
|
|||
6
Acemore
31.05.17
✎
10:46
|
(2) без соединения все вместе выкатывает
|
|||
7
dezss
31.05.17
✎
10:47
|
А может тогда делать правое соединение?
Я чета не понимаю, каким образом левое может обрезать. Только если делать левое К ТЧ, а если делать левое к результату запроса, то никаких обрезаний просто не может быть, могут быть null-ы. Хотя если накладывать какие-то ограничения в ГДЕ, то левое легким мановением руки превращается во внутреннее. |
|||
8
Acemore
31.05.17
✎
10:52
|
(7)
<code> //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТГотовый.Номенклатура КАК Номенклатура, ВТГотовый.Номенклатура.Родитель КАК ГруппаНоменклатуры, ВТГотовый.Номенклатура.ЕдиницаИзмеренияМест КАК Единица, СпискиНоменклатурыСписокНоменклатуры.НомерСтроки КАК Порядок ИЗ ВТГотовый КАК ВТГотовый ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СпискиНоменклатуры.СписокНоменклатуры КАК СпискиНоменклатурыСписокНоменклатуры ПО ВТГотовый.Номенклатура = СпискиНоменклатурыСписокНоменклатуры.Номенклатура ГДЕ СпискиНоменклатурыСписокНоменклатуры.Ссылка = &СписокНоменклатуры </code> результат 12 из 53 |
|||
9
lodger
31.05.17
✎
10:53
|
(8) попробуй полное.
|
|||
10
Acemore
31.05.17
✎
10:54
|
(8) левое так же себя ведет
правое, соответственно, дополняет пустыми строчками Номенклатуру (не из нее же беру), но номера строк отлично проставляет) Только результат теряю |
|||
11
Acemore
31.05.17
✎
10:56
|
(9) Полное как правое ведет - режет начальный результат заппроса под ТЧ
|
|||
12
Acemore
31.05.17
✎
10:57
|
НомерСтроки никак хитро себя не ведет при соединениях?
|
|||
13
Mort
31.05.17
✎
11:01
|
Автор условие накладывает после джойна, поэтому и не взлетает
|
|||
14
lodger
31.05.17
✎
11:02
|
(12) а как он может себя вести? это число в таблице.
|
|||
15
dezss
31.05.17
✎
11:06
|
(8) а теперь расскажи сколько элементов в &СписокНоменклатуры
и в Справочник.СпискиНоменклатуры.СписокНоменклатуры |
|||
16
Acemore
31.05.17
✎
11:08
|
(15) это ссылка на элемент справочника и название ТЧ (ну да, сбивает с мысли))
|
|||
17
Acemore
31.05.17
✎
11:08
|
(13) т.е. в вт ранее список выгрузить?
|
|||
18
Letum
31.05.17
✎
11:10
|
(17) Можно сделать так:
Справочник левое соединение ТЧ по Справочник.Ссылка = ТЧ.Номенклатура И ТЧ.Ссылка = &СписокНоменклатуры |
|||
19
dezss
31.05.17
✎
11:11
|
(16) ну я спрашивал про количество, а не про то, что это...мну с мысли не сбился))
попробуй сперва сделать список Справочник.СпискиНоменклатуры.СписокНоменклатуры с наложенным условием, помести во временную таблицу, а потом левым присоединяй к ВТГотовый. Или как в (18). |
|||
20
Acemore
31.05.17
✎
11:12
|
(13) (19) Да, это сработало.
В ВТ получил список по конкретному справочнику и с ним уже левое соединение. Спасибо! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |