Методика расчета отклонений данных между любыми двумя датами в отчете на СКД

13.05.17

Разработка - СКД

Иногда требуется сравнить данными между двумя указанными датами. В данной статье описана методика расчета таких отклонений между двумя, указанными пользователем датами (с помощью СКД).

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Методика расчета отклонений данных между любыми двумя датами в отчете на СКД:
.erf 7,26Kb
9
9 Скачать (1 SM) Купить за 1 850 руб.

                Расчет отклонений (разницы) по показателям между двумя выбранными датами в таблице на СКД и создание отчета в нестандартном виде

                Хочу поделиться своим опытом решения подобного вопроса. Постановка задачи стояла таким образом, чтобы отчет формировался в виде таблицы по датам, и по указанным же пользователем датам справа от дат календаря выводилась сумма отклонений между показателями указанных дат.

                Первое, что нам понадобится – разумеется, в схеме СКД создать два набора данных – один с датами календаря, а другой с самим запросом по получению нужных данных. Во втором запросе не забываем указать параметры дат календаря для связи обоих наборов.

                Хочу обратить внимание на поле «Отклонение» во втором запросе. Оно еще нам понадобится для построения нужного вида отчета.

На закладке «связи наборов данных» указываем необходимое, при этом источник – это запрос по датам.

                Теперь нам следует указать два параметра для указания дат отклонений. Добавим на закладке два параметра – «ДатаОтклоненийНач» и «ДатаОтклоненийКон».

                Переходим на закладку «Вычисляемые поля». Добавляем вычисляемое поле для необходимого показателя. Назовем его, к примеру, «ОтклонениеОстаткаДенег». И в выражении укажем:

                Определим ресурсы, и не забудем продублировать выражение, описанное для вычисляемого поля, для поля «Отклонение остатка денег».

                Необходимое отклонение получено. Теперь остается только настроить правильно форму требуемого отчета. Перед этим попробуем предварительно создать отчет в виде таблицы, где в строках укажем организацию, а в колонках даты календаря. В качестве выходных полей для таблицы укажем оба ресурса – Остаток денег, и отклонение остатка денег. Больше ничего пока настраивать не будем, и попробуем сформировать отчет.

Итак, видим, что необходимые данные по отклонениям посчитаны, но правильно они посчитаны только в общем итоге справа. Лишние, промежуточные данные по датам календаря нам выводить пользователю не нужно. Займемся настройкой необходимого вида.

Добавляем еще одну колонку «Отклонение» (это поле из запроса, которое мы определили ранее), но она не должна быть вложена в колонку «Дата календаря».

Теперь для строк «организация» удалим в выбранных поля «Автополе», и добавим поля «Организация» и «Остаток денег». Для колонки «Дата календаря» сделаем то же самое, но поля будут «Дата календаря» и «Остаток денег». А вот для колонки «Отклонение» после удаления автополей добавим поля «Отклонение» и «Отклонение остатка денег». Снова формируем отчет.

Требуемый вид получен. Осталось только отключить показ итогов по колонке Отклонение. Это можно сделать в настройке таблицы отчета для колонки «Отклонение» (другие настройки – расположение общих итогов = «нет»).

Итого: данная методика позволяет считать отклонения между любыми датами в отчете.

               

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    187550    1043    403    

978

СКД Программист Платформа 1С v8.3 Система компоновки данных Бесплатно (free)

Хорошая отчетная форма - сродни искусству. Есть какое-то невероятное эстетическое удовольствие в том, чтобы разобраться в логике учета и анализируемых показателях, спроектировать архитектуру хранения данных так, чтобы оптимально собрать эти показатели вместе с аналитическими разрезами в запросе, а затем настроить отображение так, чтобы, глядя на результат, сразу было понятно, что это за отчет и какие задачи он призван решать. Система компоновки данных - это моя первая, главная и, наверное, единственная "рабочая" любовь. Ее я использую везде, где только можно и где нельзя тоже. Хочу поделиться с вами некоторыми практическими приемами в работе с отчетами на СКД, которые, надеюсь, будут полезны.

27.02.2025    10331    ovetgana    50    

87

СКД Программист Платформа 1С v8.3 Система компоновки данных Бесплатно (free)

СКД – инструмент, на базе которого в современных конфигурациях реализованы практически все отчеты. СКД используется в динамических списках, печатных формах и универсальных механизмах. Если построить простейший отчет может каждый разработчик, то с нюансами знакомы далеко не все. Расскажем о неочевидных на первый взгляд приемах, способных значительно повысить качество отчетов.

24.12.2024    7702    Akcium    13    

44

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    14023    implecs    6    

52

Инструментарий разработчика СКД Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

По выбранной схеме компоновки данных генерирует программный код, который генерирует СКД, аналогичную исходной схеме. Есть дополнительные инструменты для просмотра дерева схемы, сравнение исходной схемы и полученной по коду, а также сравнение изменений в сгенерированном коде для исходной схемы и для измененной.

3 стартмани

05.02.2024    9339    65    obmailok    21    

83

Запросы СКД Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    3786    6    Yashazz    2    

34

СКД WEB-интеграция Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Долгое время поддерживаю web-портал, в котором появилась необходимость создавать отчеты. Просмотрев различные фреймворки на js, я решил сделать свое решение, которое позволяло бы быстро разрабатывать и добавлять новые отчеты на web-портал.

2 стартмани

11.12.2023    13019    27    John_d    30    

128
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Поручик 4676 13.05.17 21:50 Сейчас в теме
2. tata_1211 65 13.05.17 22:02 Сейчас в теме
3. Armando 1402 13.05.17 23:56 Сейчас в теме
Возможно это дело вкуса, но выражение вычисляемого поля я бы сделал на мой взгляд более понятным:
Сумма(ВычислитьВыражениеСГруппировкойМассив("ОстатокДенег", , "ДатаКалендаря = &ДатаОтклоненийКон"))
- Сумма(ВычислитьВыражениеСГруппировкойМассив("ОстатокДенег", , "ДатаКалендаря = &ДатаОтклоненийНач"))
d4rkmesa; rayastar; Serj1C; Liris; Lo1jke; +5 Ответить
8. d4rkmesa 02.11.17 20:05 Сейчас в теме
(3) Спасибо, очень дельный комментарий.
4. tata_1211 65 14.05.17 00:03 Сейчас в теме
Не думаю. Позднее аргументирую.
6. tata_1211 65 14.05.17 08:33 Сейчас в теме
(4)вопрос с возражением снят
5. tata_1211 65 14.05.17 08:32 Сейчас в теме
Да, Вы правы. Так тоже работает. И мне Ваше решение кажется более изящным. Спасибо, возьму на вооружение
7. Irwin 567 04.08.17 12:56 Сейчас в теме
Запрос из НаборДанных2 будет выполняться столько раз, сколько дат в наборе ДатыКалендаря. Эффективнее в одном запросе (пример остатков на каждый день в статье: https://infostart.ru/public/306536/ , п.6).
Оставьте свое сообщение