Имя: Пароль:
1C
1С v8
Многоуровневая иерархия из запроса
0 vasyaodinesnek
 
18.03.15
09:42
Добрый день.
Допустим, есть запрос:
ВЫБРАТЬ
    ЗаказПокупателя.Ссылка КАК Заказ,
    НАЧАЛОПЕРИОДА(ЗаказПокупателя.Дата, ДЕНЬ) КАК Дата,
    ЗаказПокупателя.Контрагент КАК Контрагент
ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
ГДЕ
    ЗаказПокупателя.Дата МЕЖДУ &ДатаНач И &ДатаКон
ИТОГИ
    Контрагент КАК Заказ
ПО
    Контрагент

Получается дерево вида:
Контрагент
---Заказ
---Заказ
Контрагент
---Заказ
ну и так далее.

Как добавить еще один уровень иерархии, чтобы, например, получилось:
Дата
---Контрагент
------Заказ
1 mehfk
 
18.03.15
09:44
Воспользуйся конструктором запроса
2 hhhh
 
18.03.15
09:59
ПО
   Дата,
   Контрагент
3 vasyaodinesnek
 
18.03.15
11:10
(2) в результате получается
NULL
---Контрагент
------Заказ

я это пробовал и сам, но как засунуть дату наверх, так и не понял.
4 butterbean
 
18.03.15
11:12
что это за хня:
ИТОГИ
    Контрагент КАК Заказ
ПО
    Контрагент
????
надо ИТОГИ ПО Дата,Контрагент,Заказ
5 D_E_S_131
 
18.03.15
11:14
Я бы еще вот это

НАЧАЛОПЕРИОДА(ЗаказПокупателя.Дата, ДЕНЬ) КАК Дата

сменил на

НАЧАЛОПЕРИОДА(ЗаказПокупателя.Дата, ДЕНЬ) КАК ДеньЗаказа
6 GROOVY
 
18.03.15
11:16
На фейхуа заказ в итоги добавлять?
7 palpetrovich
 
18.03.15
11:16
(4) это страшное колдунство :)
8 vasyaodinesnek
 
18.03.15
11:17
(4) если так сделать, то будет:
NULL
---NULL
------Заказ
9 GROOVY
 
18.03.15
11:19
(8)  Я думаю что проблему можно исправить если в ВЫБРАТЬ поля переставить местами.
10 vasyaodinesnek
 
18.03.15
11:22
(9) Оо
Не понял мысль, в каком порядке должно быть?
11 vasyaodinesnek
 
18.03.15
11:28
(9) если я переставлю, получится:
Дата          NULL        NULL
---Дата       Контрагент  Контрагент
------Дата    Контрагент  Заказ

т.е. нужное дерево все равно не выходит
12 hhhh
 
18.03.15
11:32
(8) а какой командой вы выводите

NULL
---NULL
------Заказ

Сообщить? Что там?
13 vasyaodinesnek
 
18.03.15
11:34
(12) консолью запросов в дерево вывожу
14 GROOVY
 
18.03.15
11:34
15 hhhh
 
18.03.15
11:34
Всё правильно у вас. На верхнем уровне только дата, все остальные поля NUll. На втором уровне Дата и Контрагент. И так далее. В общем выводится то, что в ИТОГАИ написали.
16 GROOVY
 
18.03.15
11:36
17 GROOVY
 
18.03.15
11:37
Открою большую тайну, не важно в каком порядке описаны итоги, выборку можно делать в произвольных разрезах.
18 vasyaodinesnek
 
18.03.15
11:42
(14) (15) видимо, я плохо объяснил свою задачу.
из моего исходного примера получается:
http://rghost.ru/8gbxPTzZG/image.png
как нужно:
http://rghost.ru/8CBPQQrYz/image.png
т.е., чтобы в одном столбце образовалась эта самая иерархия
19 GROOVY
 
18.03.15
11:45
(18)  В чем проблема. при выводе в макете укажите что под чем выводится и все. В СКД группировками настраивается.
Запрос не рисует красивый отчет, он данные получает.
20 vasyaodinesnek
 
18.03.15
11:48
(19) да в том и дело, что я собираюсь рисовать дерево на форме, а не отчет.
21 GROOVY
 
18.03.15
11:49
(20)  ДеревоЗначений?
22 GROOVY
 
18.03.15
11:49
Или иерархический динамический список?
23 vasyaodinesnek
 
18.03.15
11:49
(21) дерево значений
24 GROOVY
 
18.03.15
11:51
(23)  Обычные формы?
25 D_E_S_131
 
18.03.15
11:52
Интересно "Контрагент КАК Заказ" уберется из запроса когда-нибудь или нет?
26 vasyaodinesnek
 
18.03.15
11:59
(24) да
27 GROOVY
 
18.03.15
12:06
(26) Выгрузи запрос в Табличное поле, У колонок укажи "На следующей строке" (давно с обычными формами не работал)
28 vasyaodinesnek
 
18.03.15
12:08
(27) проще говоря, с запросом так извернуться, как хотелось бы, не выйдет?
29 un4gtn
 
18.03.15
12:12
бог Groovy прав, то что вы хотите, чтобы все выходило в одной колонке, обычно делается после самого запроса.  когда вы уже получили данные, во время их вывода (если "ручной" отчет) либо настройками группировок в СКД. Стандартными методами в запросе это не сделать (разве что извратившись с объединениями, но игра не стоит нервов).
Я бы посоветовал вам отписаться, в чем вы хотите сделать отчет (судя по скрину, в СКД), мы постараемся помочь.
30 vasyaodinesnek
 
18.03.15
12:16
(29) да в том-то и дело, что я просто хочу вывести на обычную форму ДеревоЗначений в удобоваримом виде, отчет мне как таковой и не нужен, данных будет мало, и настраивать там нечего. Заказы эти я взял просто для короткого и наглядного примера. Большое спасибо всем за помощь.
31 un4gtn
 
18.03.15
14:41
(30) Таки сделай составную колонку, и выводи в нее как твоей душе угодно. Я так и делал.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший