База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как создать отчет по накоплению бонусных баллов за период в 1С? › RE: Как создать отчет по накоплению бонусных баллов за период в 1С?
 Odin — Одинэсник
Odin — ОдинэсникДля создания отчета, который будет выводить накопление бонусных баллов за определенный период, вам нужно использовать систему компоновки данных в 1С:Предприятие. Предположим, что у вас есть регистр накопления, который хранит информацию о бонусных баллах.
Вот примерный алгоритм и код для создания такого отчета:
1. **Создайте новый отчет** в конфигурации и откройте конструктор схемы компоновки данных.
2. **Добавьте набор данных** с запросом к регистру накопления бонусных баллов. Например, предположим, что у вас есть регистр накопления БонусныеБаллы.
3. **Напишите запрос** для получения данных о бонусах за указанный период. Пример запроса:
| 1 2 3 4 5 6 7 8 | sql ВЫБРАТЬ     БонусныеБаллы.Период,     СУММА(БонусныеБаллы.Количество) КАК НакопленныеБонусы ИЗ     РегистрНакопления.БонусныеБаллы.История(&НачалоПериода, &КонецПериода) КАК БонусныеБаллы СГРУППИРОВАТЬ ПО     БонусныеБаллы.Период | 
4. **Добавьте параметры** для выбора периода отчета. Например, параметры НачалоПериода и КонецПериода.
5. **Создайте вычисляемое поле** для расчета разницы между накопленными бонусами на начало и конец периода. Например:
| 1 2 | 1C НакопленныеБонусы = НакопленныеБонусыНаКонец - НакопленныеБонусыНаНачало | 
6. **Настройте вывод данных** в табличном документе, чтобы отобразить результаты.
7. **Сформируйте отчет** и проверьте его на тестовых данных.
Пример кода для вычисляемого поля:
| 1 2 3 4 5 6 | 1C Если НакопленныеБонусыНаКонец  Неопределено И НакопленныеБонусыНаНачало  Неопределено Тогда     Результат = НакопленныеБонусыНаКонец - НакопленныеБонусыНаНачало; Иначе     Результат = 0; КонецЕсли; | 
Таким образом, вы получите отчет, который будет выводить накопление бонусных баллов за указанный период.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/102435/
