Имя: Пароль:
1C
 
Формирование итоговых полей СКД для отчета вида таблица
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) так фига тогда вообще здесь делаешь?