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

13.05.17

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

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

Скачать файл

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

               

См. также

SALE! 15%

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    159410    872    399    

861

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

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

15.05.2024    8684    implecs_team    6    

47

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

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

3 стартмани

05.02.2024    6995    56    obmailok    21    

79

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

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

1 стартмани

31.01.2024    3148    5    Yashazz    1    

34

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

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

2 стартмани

11.12.2023    10804    23    John_d    25    

124

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

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

05.12.2023    8016    PROSTO-1C    15    

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