1с скд варианты отчета программно

pluck 18.11.2014 10:41
Прочитано: 7738

Бухгалтерия 2.0 обычное приложение

Нужно выбирать варианты отчета, никак не могу реализовать правильно, сейчас работает следующим образом — выбираю дату отчет формируется с первым вариантом, выбираю второй вариант, отчет пытается сформироваться, но выдает ошибку что параметры где должны быть заданы даты не заданы

Может нужно как-то сохранить настройки или что-то еще, подскажите

Код 1C v 8.х

Yandex
Возможно, вас также заинтересует
Obscurus 18.11.2014 11:57
Ответ № 1

Так укажите) Смотрите запрос для наборов данных и в используемой схеме компоновки данных.

Кстати, откуда получены варианты отчета? Сдается мне первый для схемы, где нужна дата, а второй где нужен диапазон дата

pluck 18.11.2014 12:55
Ответ № 2

В том то и проблема что каждый раз нужно указывать при смене варианта отчета

E_Migachev 18.11.2014 22:43
Ответ № 3

да, присваивай их программно

или проще — возьми какую-нибудь обработку Шаблон Отчета СКД

Программирование системы 12.02.2018 16:01 3213

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

Программное открытие варианта отчета

К настройкам отчета можно обращаться программно. Если отчет внешний, то сначала его нужно подключить.

Для того чтобы добавить сообщение, необходимо Войти или Зарегистрироваться

Как известно, система компоновки данных в 1С позволяет создавать различные варианты отчетов с заранее подготовленными настройками еще на этапе создания.

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

Для начала подготовим процедуру, которая будет создавать меню с вариантами:

//Добавляем кнопку подменю на панель действий формы. Имя кнопки «ВариантыОтчетов», пользователю. будет видна как «Варианты»
КП = ЭлементыФормы . ДействияФормы ;
НоваяКнопка = КП . Кнопки . Вставить ( 1 , «ВариантыОтчетов» , ТипКнопкиКоманднойПанели . Подменю , «Варианты» , ) ;

НовоеДействие = Новый Действие ( «ИзменитьВариант» ) ; //Создаем действие, которое потом назначим на кнопки с вариантами

Счетчик = 1 ; //посчитаем кнопки, у них должны быть разные имена

//Добавляем кнопки для каждого варианта настроки СКД
//Отображение кнопки берем из представления настройки
//Назначаем в качестве действия кнопки действие, созданное выше
Для каждого Настройка Из СхемаКомпоновкиДанных . ВариантыНастроек Цикл

НоваяКнопка = КП . Кнопки . ВариантыОтчетов . Кнопки . Добавить ( «Вариант» + Строка ( Счетчик ) , ТипКнопкиКоманднойПанели . Действие , Настройка . Представление , НовоеДействие ) ;
Счетчик = Счетчик + 1 ;

Вызовем эту процедуру при открытии формы:

А теперь создаем обработчик события для добавленных кнопок. В предыдущем коде была строчка НовоеДействие = Новый Действие(«ИзменитьВариант»); значит обработчик должен иметь название ИзменитьВариант.

Процедура ИзменитьВариант ( Элемент )

//Обходим в цикле все варианты отчета и проверяем, совпадает ли их представление с заголовком кнопки, на которую нажали.
//Если совпало, значит это и есть искомая настройка
Для каждого Вариант Из СхемаКомпоновкиДанных . ВариантыНастроек Цикл

Если Элемент . Текст = Вариант . Представление тогда

//Загружаем вариант
КомпоновщикНастроек . ЗагрузитьНастройки ( Вариант . Настройки ) ;

//Меняем заголовок формы, чтобы было понятно, что за вариант работает
//Можно и где-то в другом месте отобразить название варианта
ЭтаФорма . Заголовок = ЭтотОбъект . Метаданные ( ) . Представление ( ) + «: » + Вариант . Представление ;

//У меня на форму были выведены дополнительные поля отборов из компоновщика настроек
//Если есть что-то подобное, то такие процедуры писать сюда
//Если нет, то следующую строчку удалить
ЗаполнитьОтборНастроек ( ) ;

//Прерываем цикл, т.к. нашли настройку
Прервать ;

За идею спасибо коллегам с сайта programmist1s.ru

Создание меню выбора вариантов отчета на СКД в 1С : 2 комментария

ЗаполнитьОтборНастроек();
эта функция не определена.

Смотрите мой комментарий над этой функцией.

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

Оцените статью