Имя: Пароль:
1C
1С v8
Что в запросе указать чтобы и верхняя иерархия отображалась?
0 12345Kostya
 
24.08.12
17:53

ВЫБРАТЬ
   НоменклатураОрганизации.Ссылка
ПОМЕСТИТЬ ГруппыНоменклатуры
ИЗ
   Справочник.Номенклатура.Организации КАК НоменклатураОрганизации
ГДЕ
   НоменклатураОрганизации.Организация = &Организация
   И НоменклатураОрганизации.Ссылка.ЭтоГруппа = ИСТИНА

СГРУППИРОВАТЬ ПО
   НоменклатураОрганизации.Ссылка
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   Номенклатура.Ссылка
ИЗ
   Справочник.Номенклатура КАК Номенклатура
ГДЕ
   Номенклатура.Ссылка В ИЕРАРХИИ(Выбрать Ссылка из ГруппыНоменклатуры)

Организации это ТЧ у группы, я нахожу нужные группы и хочу отобразить в иерархическом виде все что внутри этих групп, не только что ниже уровня но и выше. Сейчас отображается только то что внутри найденных групп. Вот как сделать чтобы верхние группы все тоже отображались.
1 Нуф-Нуф
 
24.08.12
17:55
или
2 Wobland
 
24.08.12
17:55
мне вот интересно, что организации в ТЧ у номенклатуры делают?
3 Нуф-Нуф
 
24.08.12
17:55
а лучше объединить первый и второй запрос
4 Нуф-Нуф
 
24.08.12
17:55
(2) чай пьют?
5 12345Kostya
 
24.08.12
17:56
Нуф-Нуф или вместо В?
6 12345Kostya
 
24.08.12
17:57
Ну что делают - несколько организаций можно привязать к группе!!!
7 Wobland
 
24.08.12
17:58
(6) я бы на РС сделал. не знаю, почему
8 Нуф-Нуф
 
24.08.12
17:58
ааа.. я не верно понял задачу. имхо никак
9 12345Kostya
 
24.08.12
17:59
никак????????
10 12345Kostya
 
24.08.12
17:59
ц
11 12345Kostya
 
24.08.12
18:01
короче я хочу просто в списке отбор делать и по группа тоже. Для этого я так понимаю что нужны все ссылки с учетом иерархии. А потом ссылки передам в отбор.
12 Нуф-Нуф
 
24.08.12
18:02
давай лучше с того, что в итоге хочешь получить
13 12345Kostya
 
24.08.12
18:06
Есть документ у которого Табл. поле со списком справочника номенклатуры. В шапке при смене организации, нужно делать отбор в этом списке той номенклатуры у которой в группе стоит соответствующая организация. Вот это нужно, еще подробнее?
14 Wobland
 
24.08.12
18:09
(13) ты сами данные хочешь менять при смене организации? бред. в таком случае очищай ТЧ с вопросом и при выборе в ТЧ делай соответствующий отбор
15 12345Kostya
 
24.08.12
18:11
Просто в справочнике номенклатура отбор типовой работает только по элементам, а группы все-равно отображаются, так бы я от туда алгоритм взял, видимо потому что у них нету таких реквизитов там вид номенклатуры, страна происхож.. Но у меня то есть ТЧ у группы.
16 12345Kostya
 
24.08.12
18:11
не данные!! щас...
17 Wobland
 
24.08.12
18:11
каким-то кривым проектированием попахивает, не?
18 12345Kostya
 
24.08.12
18:13
ну может быть я унаследовал это все от предыдущего сотрудника.
19 12345Kostya
 
24.08.12
18:15
причем тут ТЧ, табличное поле тип СправочникСписок.Номенклатура. Оно будет отбираться.
20 Aprobator
 
24.08.12
18:26
хм, а зачем вообще номенклатуру к организации привязывать?
21 12345Kostya
 
24.08.12
18:31
в другом документе есть авто заполнение, завязанное на организации.
22 Aprobator
 
24.08.12
18:38
типа определенная номенклатура может продаваться только от конкретной организации? РС и нефиг фигней страдать.
23 12345Kostya
 
24.08.12
18:39
типа да. А почему фигней?
24 12345Kostya
 
24.08.12
18:40
РС то вроде понятно. А мне же отбор нужен в списке номенклатуры.
25 Aprobator
 
24.08.12
18:40
обращение к регистру пошустрее будет, чем справочники ковырять запросами то.
26 12345Kostya
 
24.08.12
18:41
аа
27 Aprobator
 
24.08.12
18:43
а вообще СКД должно помочь.
28 12345Kostya
 
24.08.12
18:47
Просто кроме списка номенклатуры есть еще 4 ТЧ у который есть реквизит номенклатура. И у них поле номенклатура скрыто, заполняется автоматически (присваивается текущая строка списка при добавлении). У ТЧ есть так же отбор в зависимости от выбранной текущей строки списка номенклатуры. А список номенклатуры нужно сделать чтобы менялся в зависимости от организации. Так вот в списке тут же иерархия и получается что нужно делать и по ней отбор. Но как вопрос остается!!!!!
29 12345Kostya
 
24.08.12
18:47
СКД?
30 Wobland
 
24.08.12
18:48
(27) у него не отчёт, как я понял
31 12345Kostya
 
24.08.12
18:49
не отчет. Документ.
32 Aprobator
 
24.08.12
18:51
(30) вывести данные в коллекцию значений, и уже потом ее обработать.
33 Wobland
 
24.08.12
18:51
(32) не справится
34 Aprobator
 
24.08.12
18:51
ну это уже другой вопрос.
35 12345Kostya
 
27.08.12
09:46
Точно нельзя чтобы все группы иерархии отображались?
36 МишКа
 
27.08.12
09:55
(35) В принципе, можно получить для каждого элемента всех его родителей. Только в запросе этом довольно наворочено будет.
37 12345Kostya
 
27.08.12
09:55
ну кто знает? Ответьте пожалуйста!
38 12345Kostya
 
27.08.12
10:01
А как всех родителей?
т.е. только

элемент.Родитель

ну так тут только один родитель
39 МишКа
 
27.08.12
10:02
элемент.родитель
ОБЪЕДИНИТЬ
элемент.родитель.родитель
ОБЪЕДИНИТЬ
элемент.родитель.родитель.родитель
ОБЪЕДИНИТЬ
элемент.родитель.родитель.родитель.родитель
...
ОБЪЕДИНИТЬ
элемент.родитель.родитель...
40 МишКа
 
27.08.12
10:03
Сколько уровней - столько объединений.
41 12345Kostya
 
27.08.12
10:13
Но как понять сколько уровней? Их же может быть столько сколько пользователь создаст!
42 МишКа
 
27.08.12
10:17
Задай ограничение иерархии для справочника в конфигураторе.
43 МишКа
 
27.08.12
10:18
Или сделай запрос с запасом (например 20 уровней).
44 МишКа
 
27.08.12
10:20
В запросе будут строки со значениями NULL и пустая ссылка. Их надо будет удалить.
45 Wobland
 
27.08.12
10:20
(41) но не более того, сколько укажет разработчик
46 Wobland
 
27.08.12
10:20
(44) то есть сделать фильтр в запросе
47 МишКа
 
27.08.12
10:21
Ну да.
48 12345Kostya
 
27.08.12
13:49
Группы все-равно всегда отображаются все абсолютно. Отбор работает только по элементам.
49 МишКа
 
27.08.12
14:17
Фильтр надо будет ставить потом, на результат объединения.
50 12345Kostya
 
27.08.12
14:22
В смысле? Я думаю что в отбор просто передать ссылки.
51 Wobland
 
27.08.12
14:23
(50) список значений в отбор нужно передать, если речь о ТабПоле
52 12345Kostya
 
27.08.12
14:26
ну да да

Номенклатура.Отбор.Ссылка.ВидСравнения = ВидСравнения.ВСписке;
Запрос.УстановитьПараметр("Организация", ЭлементыФормы.Организация.Значение);
Номенклатура.Отбор.Ссылка.Значение.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"));
Номенклатура.Отбор.Ссылка.Использование = Истина;
53 12345Kostya
 
29.08.12
15:06

ВЫБРАТЬ
  Номенклатура.Ссылка КАК Наименование
ИЗ
  Справочник.Номенклатура КАК Номенклатура
ГДЕ
  Номенклатура.Организации.Организация В(&Организация)
ИТОГИ ПО
  Наименование ИЕРАРХИЯ
АВТОУПОРЯДОЧИВАНИЕ


Что нужно чтобы нижняя ветка не выводилась, как её убрать?
54 12345Kostya
 
29.08.12
15:22
никто не знает?
55 МишКа
 
29.08.12
15:55
Чем тебя (39) не устроил? Решает все твои вопросы
56 12345Kostya
 
29.08.12
16:36
(55) Не устроил тем что не понятно как выгружать такой запрос в Дерево.
57 12345Kostya
 
30.08.12
11:37
up
58 МишКа
 
30.08.12
12:21
Сделать такое дерево, в котором не будет нижних веток, средствами запроса нельзя.
По причине того, что запрос с деревьями не работает (он работает с таблицами).
Конструкция "ИТОГИ" - это концептуально чуждый языку запросов костыль, нарушающий свойство замкнутости (на входе таблица(цы),на выходе таблица).
59 МишКа
 
30.08.12
12:26
+(58) Если совсем точно: нельзя прямым способом. Кривой - слишком длинный, чтобы его приводить.
60 МишКа
 
30.08.12
12:29
Хотя... попробуй в (53) вместо "Номенклатура.Ссылка" "Номенклатура.Родитель".
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.