Содержание:
1. Как произвести настройку СКД (Системы компоновки данных)
2. Программная установка параметров в системе программ 1С:Предприятие
3. Обработка параметров при пустых значениях в 1С
1. Как произвести настройку СКД (Системы компоновки данных)
1. Открытие настроек СКД
В конфигураторе откройте отчет и перейдите на вкладку «Система компоновки данных».
2. Добавление параметра
На вкладке «Параметры» создайте новый параметр:
o Укажите его имя, например, ДатаНачала.
o Установите тип данных (например, Дата).
o При необходимости задайте значение по умолчанию.
3. Использование параметра в запросе
В запросе можно использовать параметр следующим образом:
ВЫБРАТЬ
Документы.Дата,
Документы.Сумма
ИЗ
Документ.Продажи КАК Документы
ГДЕ
Документы.Дата >= &ДатаНачала
2. Программная установка параметров в системе программ 1С:Предприятие
Иногда параметры нужно задавать программно перед формированием отчета. Это удобно, если значение параметра зависит от пользовательского ввода, системных настроек или других данных. Для этого используется процедура ПередФормированиемОтчета.
1. Добавление модуля обработки параметров
Откройте модуль объекта отчета и добавьте следующую процедуру:
Процедура ПередФормированиемОтчета(Настройки, Параметры) Экспорт
// Пример установки параметров
Параметры.Вставить("ДатаНачала", '2024-01-01');
Параметры.Вставить("ДатаОкончания", '2024-12-31');
КонецПроцедуры
2. Использование динамических данных
Вы можете задавать параметры на основании других данных. Например:
Процедура ПередФормированиемОтчета(Настройки, Параметры) Экспорт
// Установим дату начала из глобального контекста
Параметры.Вставить("ДатаНачала", НачалоМесяца(ТекущаяДата()));
// Установим пользователя как параметр
ТекущийПользователь = ГлобальныйКонтекст.ТекущийПользователь();
Параметры.Вставить("Пользователь", ТекущийПользователь);
КонецПроцедуры
3. Установка параметров через интерфейс
Если значения параметров задаются пользователем в форме, их можно перенести в СКД. Например:
Процедура ПередФормированиемОтчета(Настройки, Параметры) Экспорт
// Получаем данные из реквизитов формы
Параметры.Вставить("ДатаНачала", ЭтотОбъект.ДатаНачала);
Параметры.Вставить("ДатаОкончания", ЭтотОбъект.ДатаОкончания);
КонецПроцедуры
3. Обработка параметров при пустых значениях в 1С
Важно предусмотреть ситуацию, когда параметры могут быть не заполнены. Например, если пользователь не указал значение, можно задать параметру значение по умолчанию:
Процедура ПередФормированиемОтчета(Настройки, Параметры) Экспорт
Если НЕ Параметры.Содержит("ДатаНачала") Тогда
Параметры.Вставить("ДатаНачала", НачалоГода(ТекущаяДата()));
КонецЕсли;
Если НЕ Параметры.Содержит("ДатаОкончания") Тогда
Параметры.Вставить("ДатаОкончания", КонецГода(ТекущаяДата()));
КонецЕсли;
КонецПроцедуры
Специалист компании ООО "Кодерлайн"
Елена Дубровина