|
Программное добавление колонок в динамический список | ☑ | ||
---|---|---|---|---|
0
Nicole
19.07.21
✎
10:13
|
Есть форма справочника, есть реквизит формы "Список" типа "Динамический список", есть соответствующий элемент формы "Список".
В процедуре ПриСозданииНаСервере() редактируется Список.ТекстЗапроса, устанавливаются параметры Список.Параметры.УстановитьЗначениеПараметра, далее необходимо добавить в список две колонки - два новых поля списка. РеквизитФормыКолонка1 = Новый РеквизитФормы("Колонка1", ОбщегоНазначения.ОписаниеТипаДата(...), "Список", "Колонка 1"); МассивДобавляемыхРеквизитов = Новый Массив(); МассивДобавляемыхРеквизитов.Добавить(РеквизитФормыКолонка1); ИзменитьРеквизиты(МассивДобавляемыхРеквизитов); На последней строке выскакивает ошибка "Недопустимый путь к реквизиту. Путь: Список". Все как будто написано верно. Или в динамический список добавлять колонки таким образом нельзя? |
|||
1
dubolom
19.07.21
✎
10:47
|
Нельзя. Динамический список - на то и динамический, что генерируется программой динамически.
А в запросе рассчитывать эти колонки - не вариант? |
|||
2
Nicole
19.07.21
✎
11:00
|
(1) Вариант. Они и рассчитываются в запросе. Просто текст запроса с расчетом этих колонок редактируется программно.
|
|||
3
dubolom
19.07.21
✎
11:01
|
(2) Тогда и не надо добавлять колонки специально, они сами добавятся из запроса.
|
|||
4
dubolom
19.07.21
✎
11:02
|
(2) Только реквизиты связанного элемента формы надо добавлять.
|
|||
5
vicof
19.07.21
✎
11:02
|
||||
6
CepeLLlka
19.07.21
✎
11:04
|
(0)Не нужно добавлять реквизиты, нужно добавлять только элементы
|
|||
7
Nicole
19.07.21
✎
11:07
|
(5) (6) Если добавлять только элементы, то возникает ошибка "Недопустимое значение" на строке НовыйЭлемент.ПутьКДанным = "Список.Колонка1";
|
|||
8
dubolom
19.07.21
✎
11:08
|
(7) А отладчик что говорит про колонки списка после изменения запроса?
|
|||
9
Antony8x
19.07.21
✎
11:10
|
(7) Собственно в запрос и добавить поля, где он редактируется программно, а если мешают программно управлять доступностью колонками:
Если ... Тогда Элементы.Таблица.ПодчиненныеЭлементыКолонки.ТвояКлонка.Доступность = Истина; Иначе Элементы.Таблица.ПодчиненныеЭлементыКолонки.ТвояКлонка.Доступность = ЛОЖЬ; КонецЕсли; |
|||
10
Nicole
19.07.21
✎
11:39
|
(9) Так они, собственно, в запрос и добавлены
|
|||
11
Nicole
19.07.21
✎
11:43
|
(8) Ну если смотреть Список.КомпоновщикНастроек.Настройки.ДоступныеПоляВыбора.Элементы, то да, новые программно добавленные поля там присутствуют
|
|||
12
Nicole
19.07.21
✎
12:41
|
Задача решена, всем спасибо. Просто в тексте запроса указала новые псевдонимы для добавляемых полей. Не знаю, в чем было дело - старый запрос отрабатывал без ошибок, одинаковых псевдонимов не было...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |