|
|
|
Формирование итоговых полей СКД для отчета вида таблица | ☑ | ||
|---|---|---|---|---|
|
0
selenat
09.06.11
✎
11:48
|
Формируем отчет при помощи СКД. Есть запрос, который выдает поля:
Поле1, поле2, поле3, поле4, поле5, поле6, дата1, дата2. Вид отчета - таблица, у которой в группировки строк входят поле1, поле2 и поле 3, а в группироки колонок - поле4, поле5 и поле 6. Ресурсы - МИНИМУМ(дата1), МАКСИМУМ(дата2) и МАКСИМУМ(РазностьДат(дата1, дата2, "ДЕНЬ")). Вопрос состоит в том, как сделать, чтобы в итоговых строке и колонке вычисляемый ресурс вычислялся по датам в этих самых итогах, а не как вычисляемое поле от данных на пересечении строк и колонок. |
|||
|
1
selenat
09.06.11
✎
12:03
|
Добиться правильных итогов в колонке получилось только изменив запрос таким образом, чтобы там появились еще поля
поле7 и поле8, в которых вычисляются итоговые значения МИНИМУМ(дата1) и МАКСИМУМ(дата2) по комбинациям поле1, поле2 и поле3. Сделав такой запрос, я прописываю на вкладке ресурся следующее: МИНИМУМ(дата1), МАКСИМУМ(дата2), МАКСИМУМ(РазностьДат(дата1, дата2, "ДЕНЬ")) рассчитывается по поле1, поле2, поле3, МАКСИМУМ(РазностьДат(поле7, поле8, "ДЕНЬ")) рассчитывается по поле4, поле5, поле6. В этом случае значения на пересечениях строк и колонок получаются правильными и итоговая колонка получается такая, как надо. Но итоговая строка рассчитывается по значениям в строках, а не по датам в самой итоговой строке. |
|||
|
2
selenat
09.06.11
✎
12:07
|
вверх!
|
|||
|
3
selenat
09.06.11
✎
12:30
|
никто ничего не скажет по сабжу?
|
|||
|
4
skigs
09.06.11
✎
12:41
|
Отчет->Другие настройки->Расположение общих итогов по вертикали = "нет"
Твоя группировка->Другие настройки->Расположение общих итогов по вертикали = "Конец" |
|||
|
5
Aprobator
09.06.11
✎
12:47
|
(4) кстати, очень даже может быть.
|
|||
|
6
selenat
09.06.11
✎
13:08
|
(4) а чуть подробнее распишешь? чем мне помогут общие итоги?
Пробую играться с этими настройками итогов, пока не получается.. |
|||
|
7
Aprobator
09.06.11
✎
13:13
|
есть общие итоги по всему отчету, а есть общие итоги по группировке - это разные вещи. Тебе то в принципе нужны общие итоги по группировкам. (все запутано как у Алисы в "Зазеркалье").
|
|||
|
8
selenat
09.06.11
✎
13:15
|
(7) ага. Вон оно как. Щас еще поэкспериментирую.
|
|||
|
9
selenat
09.06.11
✎
13:23
|
Не помогает однако...
|
|||
|
10
selenat
09.06.11
✎
13:58
|
типа ап!
|
|||
|
11
selenat
09.06.11
✎
14:20
|
Ведь должен быть простой способ.
|
|||
|
12
Aprobator
09.06.11
✎
14:28
|
ну поиграйся с простыми формулами типа 1+2 1+3 (прям в ресурсах пропиши) посмотри, как и на каком уровне они действуют с учетом ресурсы по и т.п..
|
|||
|
13
selenat
09.06.11
✎
14:41
|
(12) ну дык я и так это вижу - где и что суммирует, где и от чего максимум берет. Вот как эти умолчания изменить я не понимаю.
Если вернуться к тому, что сделано в (1), что мы имеем? Когда я прописываю в ресурсах "МАКСИМУМ(РазностьДат(поле7, поле8, "ДЕНЬ")) рассчитывается по поле4, поле5, поле6", эта запись почему-то влияет только на итоговую колонку, рассчитывая ее как мне нужно. Значения на пересечениях строк и колонок работают в соответствии с записью "МАКСИМУМ(РазностьДат(дата1, дата2, "ДЕНЬ")) рассчитывается по поле1, поле2, поле3". Если я попытаюсь аналогично решить проблему для итоговых строк, то к чему это приводит. Добавляю в запрос поля поле9, поле10, где рассчитываю итоговые записи дата1 и дата2 для группировок колонок (поле4, поле5, поле6). Если я теперь вместо ресурса "МАКСИМУМ(РазностьДат(дата1, дата2, "ДЕНЬ")) рассчитывается по поле1, поле2, поле3" пропишу ресурс "МАКСИМУМ(РазностьДат(поле9, поле10, "ДЕНЬ")) рассчитывается по поле1, поле2, поле3", то итоговая строка у меня будет правильная. Но неправильными будут значения на пересечении строк и колонок. А прописать разные ресурсы (одни для итоговой строки, другие для пересечения строк и колонок), рассчитывающиеся по одному и тому же набору полей система не позволяет. |
|||
|
14
selenat
09.06.11
✎
15:03
|
пипец. Я то думал, что за то время, пока существует СКД, ее большинство здесь присутствующих знают вдоль и поперек. Но все молчат, как рыба об лед. Если бы сказали, что такое как я хочу сделать нельзя - и то бы легче было.
|
|||
|
15
AaNnDdRrEeYy
09.06.11
✎
15:26
|
(14) Нельзя... легче?
|
|||
|
16
selenat
09.06.11
✎
15:33
|
(15) ок, уточняю. Если бы это сказал человек, про которого я уверен, что он очень хорошо знает возможности СКД, то было бы легче. Определенность какая-то была бы. А то сейчас впечатление, что пытаюсь войти сквозь стену где-то рядом с дверью. И никто другой тоже не знает где же эта дверь...
|
|||
|
17
AaNnDdRrEeYy
09.06.11
✎
15:38
|
(15) да знают где дверь, просто не скажу.
|
|||
|
18
selenat
09.06.11
✎
15:41
|
(17) так фига тогда вообще здесь делаешь?
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |