![]() |
![]() |
![]() |
|
СКД: значения по умолчанию | ☑ | ||
---|---|---|---|---|
0
slafor
17.01.20
✎
17:25
|
Тема избитая, материала много, но конкретно по моему вопросу ответа не нашел.
Есть отчет на СКД. В нем, прямо на форме, как я понимаю, присутствует компоновщик настроек. Настройки могут изменяться любым пользователем и для каждого пользователя они сохраняются (конфигурация УПП, сохраняются в справочники Сохраненные настройки). Надо сделать так, чтобы при запуске параметры заполнялись определенными значениями. Не предопределенными, а найденными в базе, скажем, по наименованию или по коду или по какому-либо другому, однозначному признаку. Допустим, параметр Касса1 (см. скриншот) заполняется ссылкой на элемент справочника Кассы - Касса 1. Поискал в интернете, там есть совет разместить следующий код вида: КомпоновкаДанныхПараметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Склад1"); КомпоновкаДанныхПараметр.Значение = Справочники.Склады.НайтиПоНаименованию("Склад 1"); КомпоновкаДанныхПараметр.Использование = Истина; Размещаю в модуле отчета, в процедуре ПриКомпоновкеРезультата - результат нулевой, отчет выводится как и прежде, без Кассы1. Размещаю в процедуре ДоработатьКомпоновщикПередВыводом - результат в отчете ЕСТЬ, но в панели настроек этой кассы нет! Что я делаю не так? Да, и еще - хотелось бы, чтобы пользователь, изменивший значение параметра, получал бы при запуске отчет уже со своими параметрами. Но это впоследствии... пока хотелось бы просто понять, как заполнять их в первый раз. |
|||
1
slafor
17.01.20
✎
17:27
|
Забыл ссылку на скриншот: https://yadi.sk/i/_HaC6mNuNAsAKg .
|
|||
2
pechkin
17.01.20
✎
17:28
|
можно настроить в предприятии, а потом загрузить в конфигуратор
правда в конфигураторе это будет выглядеть как битые ссылки |
|||
3
slafor
17.01.20
✎
17:29
|
(2) А можно подробнее, как это сделать?
|
|||
4
slafor
17.01.20
✎
17:53
|
В общем, проблема остается. В коде, извините, ошибся, потому что скопировал его из примера. Реальный код выглядит так (допустим, хочу изменить Касса 1 на Касса 2):
КомпоновкаДанныхПараметр = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Касса1"); КомпоновкаДанныхПараметр.Значение = Справочники.Кассы.НайтиПоНаименованию("Касса 2"); КомпоновкаДанныхПараметр.Использование = Истина; Если размещаю в процедуре ПриКомпоновкеРезультата - не работает вообще. Если в ДоработатьКомпоновщикПередВыводом() - в отчет действительно вместо Касса 1 выводится Касса 2, но настройки параметров (в скриншоте) при этом остаются прежними. |
|||
5
ssh2006
17.01.20
✎
18:10
|
(4) там у тебя на шаблоне типового отчета. Выгрузи сделанную в режиме предприятие настройку в xml и загрузи в соответствующий макет
|
|||
6
slafor
17.01.20
✎
18:16
|
Еще где-то нашел такой вариант: в процедуре формы ПриОткрытии писать код
ПараметрСКД = ОтчетОбъект.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Касса1"); ПараметрСКД.Использование = Истина; ПараметрСКД.Значение = Справочники.Кассы.НайтиПоНаименованию("Касса 2"); Результат тоже нулевой - т.е. ни в отчете ничего не меняется, ни в параметрах. |
|||
7
slafor
17.01.20
✎
18:19
|
(5) Может он и сделан на шаблоне типового, но как мне настройку-то выгрузить в xml?
|
|||
8
ssh2006
17.01.20
✎
18:44
|
(7) "Как создать отчет на базе типового механизма"
https://its.1c.ru/db/metod8dev#content:3048:hdoc |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |