15.02.2025 Елена Дубровина 4449
Отчет на СКД, программный отбор по списку значений

Содержание:

1.     Настройка структуры СКД

2.     Реализация программного отбора в учетной программе 1С

3.     Настройка интерфейса 1С  

    

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


1. Настройка структуры СКД


Создание набора данных
В конфигураторе откройте объект отчета и перейдите на вкладку «Наборы данных» в настройках СКД. Добавьте новый источник данных, например, запрос к базе данных. Пример запроса:

ВЫБРАТЬ

    Товары.Ссылка КАК Товар,

    Товары.Наименование,

    Товары.Цена

ИЗ

    Справочник.Товары КАК Товары


Настройка параметров отчета  
В СКД создайте параметр для передачи списка значений. Например, назовите его СписокТоваров. 

2. Реализация программного отбора в учетной программе 1С


Для передачи списка значений и фильтрации данных создадим программный отбор.

Добавление условия в запрос
Скорректируйте текст запроса, чтобы использовать параметр. Пример:

ВЫБРАТЬ

    Товары.Ссылка КАК Товар,

    Товары.Наименование,

    Товары.Цена

ИЗ

    Справочник.Товары КАК Товары

ГДЕ

    Товары.Ссылка В (&СписокТоваров)


Обработка параметра в модуле отчета
В модуле объекта отчета обработаем передачу списка значений в параметр СписокТоваров:

Процедура ПередФормированиемОтчета(Настройки, Параметры) Экспорт

    // Пример списка значений

    СписокТоваров = Новый Массив;

    СписокТоваров.Добавить(Справочники.Товары.НайтиПоКоду("00001"));

    СписокТоваров.Добавить(Справочники.Товары.НайтиПоКоду("00002"));

 

    // Передаем список в параметр

    Параметры.Вставить("СписокТоваров", СписокТоваров);

КонецПроцедуры


Обработка ситуаций с пустым списком
Если список значений пуст, нужно предусмотреть поведение запроса. Например:

ИЛИ &СписокТоваров = НЕОПРЕДЕЛЕНО


3. Настройка интерфейса 1С


Добавление интерфейсных элементов
Реализуйте ввод данных в форме отчета, позволяя пользователю указать интересующие элементы, например, через поле выбора или таблицу значений.


Связь интерфейса с параметром
Передайте данные, указанные пользователем, в параметр СписокТоваров. Например:

Процедура ЗаполнитьСписокТоваров(ЭлементыФормы, Значение)

    СписокТоваров = Новый Массив;

    Для Каждого Товар Из Значение Цикл

        СписокТоваров.Добавить(Товар);

    КонецЦикла;

   

    Параметры.Вставить("СписокТоваров", СписокТоваров);

КонецПроцедуры

 

Специалист компании ООО "Кодерлайн"

Елена Дубровина

Наши проекты

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

Внедренное типовое решение:
«1С:Управление корпоративными финансами»

- Осуществлена разработка матрицы прав и ролей для финансового подразделени...

ООО «Аэроэкспресс»
ООО «Аэроэкспресс»

Отрасль:

Внедренное типовое решение:
1С:ERP. Управление холдингом

· Планирование закупок · Управление закупочными процедурами, включая 223 ФЗ ...

ПАО «АрселорМиттал Кривой Рог»
ПАО «АрселорМиттал Кривой Рог»

Отрасль:
Металлургическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием для Украины

- Кадровый учет
- Расчет зарплаты
- Регламентированная отчетность
- Уч...

Автоматизация подсистемы учета взаиморасчетов с агентами и интернет-магазинами на базе «1С:Управление холдингом 8»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
1С:Управление холдингом

– Оформление заказов поставщикам;
– Управление отношениями с поставщика...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в
ИП Любо Виктория Александровна (ООО «Рекреация»)

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Осуществлены разработки:
– отчета по спецификации Заказа;
– загрузки сп...

ООО "АСК ИНЖИНИРИНГ"
ООО "АСК ИНЖИНИРИНГ"

Отрасль:
Машиностроение, приборостроение

Внедренное типовое решение:
1С:Документооборот ПРОФ

Делопроизводство
Учет и хранение документов
Ведение номенклатуры дел
...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

Внедренное типовое решение:
1С:Управление торговлей

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

Внедрение ПП "1С:CRM ПРОФ" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:CRM ПРОФ

- Управление отношениями с клиентами (CRM) ...

Внедрение ПП «1С:Предприятие 8. Аренда и управление недвижимостью на базе "1С:Бухгалтерия 8"» в компании «Бутово Молл»
ООО «Бутово Молл»

Отрасль:
Недвижимость

Внедренное типовое решение:
1С:Аренда и управление недвижимостью на базе «1С:Бухгалтерия 8»

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Оформление зак...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

Фармацевтическое предприятие «Оболенское»
АО «Фармацевтическое предприятие «Оболенское»

Отрасль:
Фармацевтическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием

- Адаптации блоков/подсистем планирования продаж, закупок и казначейства. ...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение