![]() |
|
СКД Как изменить список доступных значений параметра при выборе варианта? | ☑ | ||
---|---|---|---|---|
0
Gorr
09.04.15
✎
15:01
|
пытался сделать в событии формы отчета:
&НаСервере Процедура ПриЗагрузкеВариантаНаСервере(Настройки) ДоступныеЗначения = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы.Найти("ГруппаОтбора").ДоступныеЗначения ; Данное решение срабатывает только один раз при открытии отчета. При выборе же варианта уже открытого отчета код отрабатывает без ошибок, но состав списока выбора более не меняется. Приходится переоткрывать отчет. В настройках передаваемых в событие в качестве параметра элемент настроек ДоступныеПараметры вообще Неопределено. |
|||
1
Gorr
09.04.15
✎
17:21
|
Неужели никто не делал подобного?
|
|||
2
Gorr
09.04.15
✎
19:49
|
Быть может как-то можно задать список доступных значений через элемент формы Элементы.КомпоновщикНастроекПользовательскиеНастройки?
|
|||
3
Gorr
09.04.15
✎
20:59
|
Интересно как то можно не закрывая форму обновить в ней данные объекта отчет?
|
|||
4
mistеr
09.04.15
✎
21:36
|
(0) Очевидно в процедуру передаются уже не те настройки.
|
|||
5
Gorr
09.04.15
✎
21:49
|
(4) еще бы знать в какую процедуру - СКД это тайна покрытая мраком - шаг влево, вправо пиши пропало...
|
|||
6
Gorr
09.04.15
✎
21:51
|
Все что надо - установить список доступных строк для выбора пользователя (параметр имеет строковой тип) при установке параметра - вроде бы элементарней некуда!
|
|||
7
Armando
09.04.15
✎
21:59
|
Попробуй работать с настройками, которые передаются в процедуру.
|
|||
8
mistеr
09.04.15
✎
22:21
|
(5) Я хотел сказать, что событие ПриЗагрузкеВариантаНаСервере отрабатывает до загрузки варианта в КомпоновщикНастроек.
Соответственно править нужно переданные настройки. |
|||
9
Gorr
10.04.15
✎
10:54
|
Итак что мы имеем:
1. Настройки переданные в процедуру параметром 2. Отчет.КомпоновщикНастроек.Настройки |
|||
10
Gorr
10.04.15
✎
11:13
|
(8) В переданных настройках значение Настройки.ПараметрыДанных.ДоступныеПараметры Неопределено, а ведь именно у элементов коллекции ДоступныеПараметры и есть такое замечательное свойство ДоступныеЗначения.
Как его определить если его там нет? конструктор Новый ДоступныеПараметрыКомпоновкиДанных - не найден. Эллементы коллекции КоллекцияДоступныхПараметровКомпоновкиДанных только для чтения, т.е. ДоступныеПараметры.Элементы.Добавить так просто не напишешь |
|||
11
Gorr
10.04.15
✎
11:20
|
Быть может после корректировки списка ДоступныеЗначения которые можно получить через Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы[0].ДоступныеЗначения
нужно как-то КомпоновщикНастроек ПЕРЕИНИЦИАЛИЗИРОВАТЬ что-бы изменения дошли до формы отчета? |
|||
12
Gorr
10.04.15
✎
11:22
|
Не верю что никому не приходила в голову идея переопределения списка доступных значений параметров в зависимости от выбранного варианта отчета!!!
|
|||
13
Gorr
10.04.15
✎
12:08
|
||||
14
Gorr
10.04.15
✎
12:09
|
||||
15
Gorr
10.04.15
✎
12:17
|
<A href="http://www.fayloobmennik.net/4774916">paramselection.jpg</A>
по-человечески здесь картинку не вставишь.. |
|||
16
Gorr
10.04.15
✎
12:28
|
Поскольку не всем здесь понятно для чего это может быть необходимо поясню.
Я разработал отчет в котором каждый вариант формируется по своей вложенной схеме. Понятно что значения параметров для каждой из вложенных схем должны быть свои. Но в быстрых настройках пользователя отображаются параметры только основной схемы. Вот отсюда и возникает необходимость динамически управлять списком доступных значений параметров. |
|||
17
Gorr
12.04.15
✎
12:04
|
Быть может можно как-то со стороны интерфейса управлять списком доступых значений (тип строка) элемента управления быстрых пользовательских настроек?
|
|||
18
Gorr
13.04.15
✎
13:22
|
Поскольку ответов 0, а решение было найдено, приведу пример решения задачи ограничения списка доступных значений через интерфейс при выборе варианта. В конфигураторе можно задать все мыслимые значения параметра, а в форме через данные формы установить фильтр на доступные значения:
&НаСервере Процедура ПриЗагрузкеВариантаНаСервере(Настройки) СписокВыбора = ПодчиненныеЭлементы.КомпоновщикНастроекПользовательскиеНастройки.ПодчиненныеЭлементы.КомпоновщикНастроекПользовательскиеНастройкиГруппаКолонок1.ПодчиненныеЭлементы.КомпоновщикНастроекПользовательскиеНастройкиЗначение.СписокВыбора; СписокВыбора.ТипЗначения = Новый ОписаниеТипов("Строка"); СписокВыбора.Очистить(); Список = ПолучитьСписок(); для каждого элемент из Список цикл СписокВыбора.Добавить(элемент.Значение,элемент.Представление); конеццикла; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |