Исходные данные: к примеру, у нас есть отчёт по продажам на основе некоего оборотного регистра, написанный на СКД и имеющий возможность разворота по датам продажи.
Что нужно: вывести те же показатели, но в диаграмме по двум аналогичным периодам сразу (например, за год с развёрткой по месяцам).
Чем решаем: пользовательскими полями, без изменения отчёта в конфигураторе.
Разберём, что, собственно, минимально нужно для построения такого отчёта.
- ОДИН ресурсный показатель (сумма продаж)
- ДВА измерения (год и месяц) - остальные, считаем, и так есть (контрагент, например).
Делаем пользовательские поля (выражения):
- Поле "Сумма" - самое сложное: пишем в выражении детальных записей "ВЫБОР КОГДА Год([Дата продажи]=2010(тут подставляете первый нужный год) ТОГДА [Сумма продажи] КОГДА (то же самое для каждого нужного года) ИНАЧЕ 0 КОНЕЦ". В выражении итоговых - Сумма(выражение детальных). Учитывайте, что в некоторых версиях 8.1 множественные "Выбор Когда Тогда Когда Тогда" могут не работать (зафиксированы такие случаи) и придётся писать вложенные "Выбор Когда Тогда Иначе Конец". это и есть ваше поле, по которому нужно отслеживать изменение :)
- Поле "Год" - НачалоПериода([Дата продажи],"Год") (и сразу в условном оформлении указываем его формат) (или сразу Год([Дата продажи]) - кому как нравится).
- Поле "Месяц" - Формат([Дата продажи],"ДЛФ='MM. MMMM'") - так удобнее всего отображается.
Теперь осталось только вывести диаграмму: точки - месяц, серии - год, показатель - сумма, тип диаграммы, например, с накоплением.
Аналогично можно рассмотреть любой период.
Приложение к статье - файл сохранённой настройки для Универсального отчёта в ЗУП 2.5 8.2 (отчёт по регистру взаиморасчётов с сотрудниками организаций).
UPD 1: Для конструкции "ВЫБОР КОГДА ТОГДА" можно применить в данном случае сокращённый вариант записи:
Выбор Год([Дата продажи])
Когда 2007
Тогда [Сумма продажи]
Когда 2008
Тогда [Сумма продажи]
Когда 2009
Тогда [Сумма продажи]
Когда 2010
Тогда [Сумма продажи]
Когда 2011
Тогда [Сумма продажи]
Иначе 0
Конец
Мои благодарности ildarovich за эту информацию.
UPD 2: тем более спасибо artbear, который заставил меня наконец-то отключиться от вообще вычисления суммы продаж таким извратом :) заело с какого-то старого отчёта. Отдельное вычисление суммы не нужно вообще, можно сразу брать нужное поле. Зато мы теперь знаем про UPD 1!