Добрый день коллеги.
Задача следующая :
Для расчета некоторых данных в внешнем отчете необходимо использовать числовое значение введенное пользователем перед его формированием (в базе 1с этих данных нет и сохранять их нет необходимости).
Какие варианты приходят на ум:
1) Максимально костыльный способ. Создать в базе константу или РС. Вносим эти данные, выбираем запросом и через вычисляемые поля
обрабатываем. Не подходит в моем случае из-за необходимости изменять конфигурацию.
2) Добавить числовой реквизит на форму отчета. Заполнение перед формированием отчета обязательно. Интуитивно понимаю что набором данных нужно передать в СКД, но как сделать это не знаю.
3) Если иной есть способ, открыт для предложений.
Задача следующая :
Для расчета некоторых данных в внешнем отчете необходимо использовать числовое значение введенное пользователем перед его формированием (в базе 1с этих данных нет и сохранять их нет необходимости).
Какие варианты приходят на ум:
1) Максимально костыльный способ. Создать в базе константу или РС. Вносим эти данные, выбираем запросом и через вычисляемые поля
обрабатываем. Не подходит в моем случае из-за необходимости изменять конфигурацию.
2) Добавить числовой реквизит на форму отчета. Заполнение перед формированием отчета обязательно. Интуитивно понимаю что набором данных нужно передать в СКД, но как сделать это не знаю.
3) Если иной есть способ, открыт для предложений.
По теме из базы знаний
- Смена типа набора данных СКД с сохранением полей
- Автоматическая обработка для смены типа набора данных СКД с сохранением полей
- СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты
- Сохранение настроенного запроса набора данных СКД
- Редактирование СКД, смена типа набора данных
Найденные решения
(5) Можешь сделать так, как советую другие пользователи текущей ветки. Тогда не нужно создавать форму. Пользователь укажет значение в настройках отчета перед формированием.
Код который выше скинул это если у тебя будет форма и на форме будет реквизит. В процедуре перед формированием отчета ты заполнишь параметр этим реквизитом.
Код который выше скинул это если у тебя будет форма и на форме будет реквизит. В процедуре перед формированием отчета ты заполнишь параметр этим реквизитом.
Прикрепленные файлы:
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Может так?:
И в параметрах СКД внешнего отчета создать этот параметр. Далее параметр используешь в запросе
ПараметрКомпоновки = Новый ПараметрКомпоновкиДанных("ЗначениеОтПользователя");
ПараметрСКД = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(ПараметрКомпоновки);
ПараметрСКД.Значение = 1;
ПараметрСКД.Использование = Истина;
И в параметрах СКД внешнего отчета создать этот параметр. Далее параметр используешь в запросе
ПараметрКомпоновки = Новый ПараметрКомпоновкиДанных("ЗначениеОтПользователя");
ПараметрСКД = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(ПараметрКомпоновки);
ПараметрСКД.Значение = 1;
ПараметрСКД.Использование = Истина;
Форму и реквизит на форме создавать не нужно? В модуле объекта код писать? Дополнительный набор данных не нужно создавать?
И в параметрах СКД внешнего отчета создать этот параметр. Далее параметр используешь в запросе
Какой тип параметра выбирать? Почему-то недоступен параметр в вычисляемых полях.
(5) Можешь сделать так, как советую другие пользователи текущей ветки. Тогда не нужно создавать форму. Пользователь укажет значение в настройках отчета перед формированием.
Код который выше скинул это если у тебя будет форма и на форме будет реквизит. В процедуре перед формированием отчета ты заполнишь параметр этим реквизитом.
Код который выше скинул это если у тебя будет форма и на форме будет реквизит. В процедуре перед формированием отчета ты заполнишь параметр этим реквизитом.
Прикрепленные файлы:
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот