|
СКД. Сортировка колонок, отдельно внутри группировки. | ☑ | ||
---|---|---|---|---|
0
bolobol
19.09.16
✎
16:13
|
Доброго дня!
Есть такой отчёт (продолжение): По организациям некие суммы и некий список документов. Суммы и документы не связаны между собой при выборке, но каждый документ относится только к одной сумме Организации. Поэтому, получается что в строках отчёта дублируются Организация и Суммы на каждый документ организации. А столбцы документов для сумм - делят список документов. Это логично, но неудобно: Орги / Доки / Сумма1 / Док1 / Сумма2 / Док2 ------------------------------------------- Орг1 / Док1 / 715.00 / Док1 / 115.00 / ---- Орг1 / Док2 / 715.00 / ---- / 115.00 / Док2 Орг2 / ДокА / 444.00 / ---- / 222.00 / ДокА Орг2 / ДокБ / 444.00 / ДокБ / 222.00 / ---- Орг2 / ДокЦ / 444.00 / ДокЦ / 222.00 / ---- Колонка Доки - не нужна. Нужно только деление этой колонки. Но деление выглядит с пропусками некрасиво и "пышно". Хотелось бы в пределах группировки по Организации и Суммам осуществить сортировку колонок Док1 и Док2 независимо друг от друга, чтоб было так: Орги / Сумма1 / Док1 / Сумма2 / Док2 ------------------------------------ Орг1 / 715.00 / Док1 / 115.00 / Док2 Орг1 / 715.00 / ---- / 115.00 / ---- Орг2 / 444.00 / ДокБ / 222.00 / ДокА Орг2 / 444.00 / ДокЦ / 222.00 / ---- Орг2 / 444.00 / ---- / 222.00 / ---- Тогда, и записи лишнии: Орг1 / 715.00 / ---- / 115.00 / ---- Орг2 / 444.00 / ---- / 222.00 / ---- - можно убрать будет... Как это правильно делать? |
|||
1
Митяйский
19.09.16
✎
16:48
|
Правильно через ОБЪЕДИНИТЬ ВСЕ запрос ставить, если между таблицей сумм и таблицей документов прямой связи нет. И не будет тебе дублей.
|
|||
2
bolobol
19.09.16
✎
17:28
|
Да ну ладно вам! Определённо же есть какая-то фишка, подобная срезу последних на все даты)
|
|||
3
Alex unde
19.09.16
✎
17:32
|
я чет не понял что не так.
Напиши как должно быть в итоге? |
|||
4
bolobol
19.09.16
✎
17:44
|
Другими словами? Хм... Например:
У Организации Орг1 имеется два документа: Док1, Док2 У Организации Орг2 имеется три документа: ДокА, ДокБ, ДокЦ У Организаций имеются по два обязательства: Орг1: 715.00 и 115.00 Орг2: 444.00 и 222.00 Документы относятся к одному из обязательств: Орги / Доки / Сумма1 / Док1 / Сумма2 / Док2 ------------------------------------------- Орг1 / Док1 / 715.00 / Док1 / 115.00 / ---- Орг1 / Док2 / 715.00 / ---- / 115.00 / Док2 ------------------------------------------- Орг2 / ДокА / 444.00 / ---- / 222.00 / ДокА Орг2 / ДокБ / 444.00 / ДокБ / 222.00 / ---- Орг2 / ДокЦ / 444.00 / ДокЦ / 222.00 / ---- Очевидно, что в таблице имеются "лишнии" строки, увеличивающие только размер таблицы, но не смысл. Нужно получить вид: Орги / Сумма1 / Док1 / Сумма2 / Док2 ------------------------------------ Орг1 / 715.00 / Док1 / 115.00 / Док2 Орг1 / 715.00 / ---- / 115.00 / ---- Орг2 / 444.00 / ДокБ / 222.00 / ДокА Орг2 / 444.00 / ДокЦ / 222.00 / ---- Орг2 / 444.00 / ---- / 222.00 / ---- И можно будет убрать строки: Орг1 / 715.00 / ---- / 115.00 / ---- Орг2 / 444.00 / ---- / 222.00 / ---- Сократив тем самым излишества в таблице |
|||
5
Alex unde
20.09.16
✎
09:32
|
По моему, в ресурсах можно использовать "Таблица значений" тогда оно должно свернуть. Попробуй, скажи что получится
|
|||
6
Cyberhawk
20.09.16
✎
09:40
|
А теперь внятно на одной картинке покажи, как есть и как должно быть
|
|||
7
Митяйский
20.09.16
✎
10:25
|
ВЫБРАТЬ
Обязательства.Орг, Обязательства.СуммаОбязательства, Обязательства.СсылкаНаДокументСправочникИлиОткудаТамЕщеМоглаВзятьсяЭтаСумма КАК Регистратор ИЗ Документы.Обязательства КАК Обязательства ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ Доки.Орг, 0, Доки.Док ИЗ Документы.Доки КАК Доки |
|||
8
Alex unde
20.09.16
✎
10:29
|
(7) так получится записи:
Орг1 -- Док1 -- Сумма1 -- Орг1 -- Док2 -- Сумма2 -- Орг2 -- Док1 -- 0 -- Доки в одну колонку, а он хочет в две |
|||
9
bolobol
20.09.16
✎
10:32
|
(5) Так вот примерно такой и ждал ответ с примером, типа: на, дарю! ))
|
|||
10
Митяйский
20.09.16
✎
13:32
|
(8) Ну если бы он расписал, по какому принципу одни документы попадают в левую колонку, а другие - в правую, было бы в сто раз проще.
|
|||
11
bolobol
20.09.16
✎
13:35
|
(10) Да не будет проще. Суть-то одна, хоть как в (7), только в два столбца вывести надо, а не последовательно в одном.
|
|||
12
bolobol
20.09.16
✎
13:51
|
Альтернативный вид:
Суммы у Организаций представлены так: Орги / Сумма1 / Сумма2 ---------------------- Орг1 / 715.00 / 115.00 Орг2 / 444.00 / 222.00 К каждой сумме нужно добавить колонку возможных документов, список которых известен: Для Орг1 / 715.00 - Док1 Для Орг1 / 115.00 - Док2 Для Орг2 / 222.00 - ДокА Для Орг2 / 444.00 - ДокБ Для Орг2 / 444.00 - ДокЦ И если рассматривать левое соединение для Орг2, получим: Орги / Доки / Сумма1 / Док1 / Сумма2 / Док2 ------------------------------------------- Орг2 / ДокБ / 444.00 / ДокБ / 222.00 / ДокА Орг2 / ДокБ / 444.00 / ДокЦ / 222.00 / ДокА Понятно, что при 25 документов для суммы 444.00 - для суммы 222.00 колонка будет заполнена 25-ю одинаковыми документами. А если для 222.00 будет ещё и документ ДокЫ, то таблица будет выглядеть совсем некрасиво: Орги / Доки / Сумма1 / Док1 / Сумма2 / Док2 ------------------------------------------- Орг2 / ДокБ / 444.00 / ДокБ / 222.00 / ДокА Орг2 / ДокБ / 444.00 / ДокЦ / 222.00 / ДокА Орг2 / ДокБ / 444.00 / ДокБ / 222.00 / ДокЫ Орг2 / ДокБ / 444.00 / ДокЦ / 222.00 / ДокЫ Вот - свернуть её нужно, или получить свёрнутую... |
|||
13
Nuobu
20.09.16
✎
13:55
|
Чтобы это убрать, нужно воспользоваться номером строки.
Делаешь поле "НомерСтроки", его выводишь в группировку по СТРОКАМ (Огранизация/НомерСтроки) и будет тебе счастье. |
|||
14
bolobol
20.09.16
✎
14:07
|
(13) Это сложный долгий способ, проще которого - вручную обработать результат запроса и в СКД вернуть ТЗ. Отдельный вопрос "Как это сделать?"...
Или я не до конца понял изюминку применения приёма в данной задаче. |
|||
15
Nuobu
20.09.16
✎
14:16
|
(14) Не до конца понял изюминку.
|
|||
16
bolobol
20.09.16
✎
14:23
|
(15) Типа: "самый быстрый человек планеты: а я уже вернулся"?
|
|||
17
Митяйский
20.09.16
✎
14:24
|
Я так понял идет подгонка документов и обязательств по "похожим" суммам?
|
|||
18
bolobol
20.09.16
✎
14:25
|
(17) Идёт подгонка вида отчёта под возможности СКД
|
|||
19
gitotuta
20.09.16
✎
14:54
|
тут нужно соединение по номеру строки
|
|||
20
bolobol
20.09.16
✎
15:00
|
(19) А где тут номер строки?
|
|||
21
bolobol
20.09.16
✎
15:00
|
(19) Или: номеру строки чего с чем?
|
|||
22
Nuobu
20.09.16
✎
15:00
|
(20) Нужно его добавить.
|
|||
23
bolobol
20.09.16
✎
15:08
|
(22) Это-то мы поняли. Так-то мы не тупые)
|
|||
24
Митяйский
20.09.16
✎
15:28
|
Вы не тупые, а на СКД можно и без добавлений модулей и номеров строк обойтись.
http://imgur.com/a/NmMHs Только задача все равно упоротая какая-то. Это должно получиться что-то типа отчета-угадайки для ленивых юзеров, которые своими шаловливыми нафигачили документов, но не проставили в них вовремя нужных реквизитов? И теперь больше нельзя, кроме как по сумме, определить принадлежность документа, а юзерам лень крыжить свои косяки вручную? |
|||
25
bolobol
20.09.16
✎
15:43
|
(24) Это "сумма документов", а нужны строки с кликабельными расшифровками и доп информацией по документам, в общем - отдельными строками документы нужны
|
|||
26
Nuobu
20.09.16
✎
15:46
|
(25) Так ты пробовал номеромСтроки баловаться?
|
|||
27
bolobol
20.09.16
✎
15:47
|
(26) Да, вот-вот времячко проявится докрутить сортировки и гляну результат
|
|||
28
bolobol
20.09.16
✎
16:55
|
Получилось мудрёно, вместо одного запроса - теперь куча объединений, сравнительно небыстрая группировка для нумерации, сравнительно неудобное оформление конечного вида отчёта (приведение его к исходному виду, из которого он был превращён в полотнище одноколоночное), но зато - вместо 98 строк с пропусками - 31 ясная понятная строка!
Всем спасибо за участие, расходимся)) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |