|
В Иерархии. Как сделать ? | ☑ | ||
---|---|---|---|---|
0
Румата
25.05.17
✎
09:03
|
Есть ТЧ в ней есть реквизит "Контрагент", при чем можно выбирать в этом реквизите как группы, так и элементы справочника контрагента. Хочу написать запрос в котором параметр запроса проверяется на иерархию с реквизитом табличной части.
Пишу так : (&НашКонтрагент) в иерархии (ЗадачиПользователяКонтрагенты.Контрагент) Так нельзя. А как мне проверить параметр запроса с реквизитом табличной части ? Спасибо заранее. |
|||
1
Ёпрст
25.05.17
✎
09:07
|
(0) местами поменяй
|
|||
2
Румата
25.05.17
✎
09:14
|
(Ёпрст) А прокатит ? Мне надо проверить чтобы параметр - элемент справочника входил в группу - реквизит табличной части.
т.е. параметр например ИП Сидоров. А в реквизите табличной части выбрана группа справочника контрагенты "Ипэшники". |
|||
3
cw014
25.05.17
✎
09:16
|
Не, не прокатит ИМХО
|
|||
4
Румата
25.05.17
✎
09:19
|
А как тогда переделать запрос, чтобы прокатило ? )
|
|||
5
cw014
25.05.17
✎
09:20
|
(4) Логику работы пересмотреть
|
|||
6
Ёпрст
25.05.17
✎
09:20
|
(2) если в реквизите будет элемент, кто в кого входить должен ?
|
|||
7
azt-yur
25.05.17
✎
09:23
|
Выразить(&НашКонтрагент КАК Справочник.Контрагенты) = ЗадачиПользователяКонтрагенты.Контрагент ИЛИ Выразить(&НашКонтрагент КАК Справочник.Контрагенты).Родитель = ЗадачиПользователяКонтрагенты.Контрагент ИЛИ Выразить(&НашКонтрагент КАК Справочник.Контрагенты).Родитель.Родитель = ЗадачиПользователяКонтрагенты.Контрагент
|
|||
8
Румата
25.05.17
✎
09:33
|
(Ёпрст) тогда проверка на равенство, если элемент будет в реквизите табличной части.
|
|||
9
Румата
25.05.17
✎
09:34
|
(azt-yur) не комильфо, но если других вариантов нет, то ...
|
|||
10
Ёпрст
25.05.17
✎
09:34
|
(8) На равенство ? Ты группу-параметр будешь на равенство с элементом в ТЧ сравнивать ?
|
|||
11
Румата
25.05.17
✎
09:36
|
( Ёпрст) Параметр - элемент, группой быть не может в моем случае
|
|||
12
rincewind
25.05.17
✎
11:02
|
Я бы сделал через временную таблицу, в которую нужно предварительно выбрать элементы с иерархией. Примерно так:
ВЫБРАТЬ Номенклатура.Ссылка КАК Номенклатура ПОМЕСТИТЬ ВремТаб ИЗ Справочник.Номенклатура КАК Номенклатура ГДЕ Номенклатура.Ссылка В ИЕРАРХИИ(&Группа) ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПЕРВЫЕ 1000 РеализацияТоваровУслугТовары.Ссылка, РеализацияТоваровУслугТовары.Номенклатура ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ГДЕ РеализацияТоваровУслугТовары.Номенклатура В (ВЫБРАТЬ ВремТаб.Номенклатура ИЗ ВремТаб КАК ВремТаб) |
|||
13
azt-yur
25.05.17
✎
11:18
|
(12) что то не то вы написали. Во первых автору надо наоборот получить строки для которых параметр является подчиненным, тогда уж в запросе ВТ надо получать по подчиненным элементам из реализации а не по параметру.
И представляете если подчиненных элементов тысячи и все они будут выбираться в запросе. Это ж какой объем данных будет тягаться каждый раз. Лучше варианта чем в (7) я пока не вижу |
|||
14
dezss
25.05.17
✎
11:27
|
И никто еще не сказал про транзитивное замыкание?)
Странно, мне позавчера почти сразу на него навели. Если че, вот ссылка с грамотным описанием. Там даж есть хороший пример в камментах от автора. http://catalog.mista.ru/public/160707/ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |