|
Загрузка ТабличнойЧасти на управляемой форме из реквизита (ТЧ "по умолчанию"). | ☑ | ||
---|---|---|---|---|
0
bplmeddy
10.09.18
✎
10:27
|
Доброго времени суток.
Интересует такой вопрос: имеется некая обработка. В ней имеется табличная часть. При работе с формой обработки, программно создаются новые колонки этой ТЧ (которые не описаны в структуре конфигурации). Есть ли возможность программно загрузить, так сказать "чистую" (та что описана в структуре) ТЧ, не затронув остальную форму (поля ввода и так далее) ? Буду очень благодарен за помощь. |
|||
1
RomaH
naïve
10.09.18
✎
10:31
|
да - добавив в источник данные "остальной формы"
|
|||
2
bplmeddy
10.09.18
✎
10:32
|
(1) Имеете ввиду что все поля нужно описывать реквизитами обработки ?
|
|||
3
Мимохожий Однако
10.09.18
✎
10:37
|
(2) Да. Но твои объяснения невнятные. Вариантов реализации - куча.
|
|||
4
bplmeddy
10.09.18
✎
10:42
|
(3) Хм, попробую так: есть управляемая форма. На ней размещены несколько полей ввода и ТЧ. В реквизитах обработки описана только ТЧ. Во время работы с формой, при некоторых условиях программно создаются колонки ТЧ. Нужно при, например нажатии кнопки, программно созданные колонки убрать, и привести ТЧ к тому виду, который описан структурой конфигурации (реквизит обработки).
|
|||
5
Мимохожий Однако
10.09.18
✎
10:45
|
(4) Расшифруй слова:"который описан структурой конфигурации (реквизит обработки)."
|
|||
6
Мимохожий Однако
10.09.18
✎
10:47
|
Можно создать все колонки в ТЧ сразу и по нужной команде играться с видимостью и доступностью
|
|||
7
bplmeddy
10.09.18
✎
10:55
|
(5) Сама таблица создана реквизитом в обработке.
Скриншот структуры обработки: http://i.piccy.info/i9/ab6e6a6ff33dac7b439d63683ce074a5/1536566116/14130/1248074/REKV.jpg |
|||
8
bplmeddy
10.09.18
✎
11:19
|
Так можно как-то "загрузить" ТЧ "первозданного" вида? Возможно кто-то сталкивался уже с подобной задачей ?
|
|||
9
bplmeddy
10.09.18
✎
11:29
|
Есть кто-нибудь ? :)
|
|||
10
bplmeddy
10.09.18
✎
11:46
|
Людии, ау ? Спасите-помогите :)
|
|||
11
Вафель
10.09.18
✎
11:47
|
запоминай созданные коолнки - потом их удалишь
|
|||
12
bplmeddy
12.09.18
✎
14:10
|
Решение:
&НаСервере Процедура ВидыУстанавливаемыхЦенПриИзмененииНаСервере() МассивНовыхКолонок = ЭтаФорма.ВидыУстанавливаемыхЦен.ВыгрузитьЗначения(); Для Каждого Кол Из МассивНовыхКолонок Цикл нРеквизиты = Новый Массив; нРеквизиты.Добавить(Новый РеквизитФормы(СтрЗаменить(Кол," ",""), Новый ОписаниеТипов("Число"), "Объект.КонтрольЦен", СтрЗаменить(Кол," ",""), Истина)); ИзменитьРеквизиты(нРеквизиты); нЭлемент = Элементы.Добавить(СтрЗаменить(Кол," ",""), Тип("ПолеФормы"), Элементы.КонтрольЦен); нЭлемент.Вид = ВидПоляФормы.ПолеВвода; нЭлемент.ПутьКДанным = "Объект.КонтрольЦен."+СтрЗаменить(Кол," ",""); КонецЦикла; КонецПроцедуры &НаКлиенте Процедура ВидыУстанавливаемыхЦенПриИзменении(Элемент) ВидыУстанавливаемыхЦенПриИзмененииНаСервере(); КонецПроцедуры &НаСервере Процедура УдалитьКолонки() МассивУдаляемыхКолонок = ЭтаФорма.ВидыУстанавливаемыхЦен.ВыгрузитьЗначения(); МассивУдаляемыхРеквизитов = Новый Массив; Для Каждого тЭлемент из МассивУдаляемыхКолонок Цикл Если ЭтаФорма.Элементы.Найти(СтрЗаменить(тЭлемент," ","")) <> Неопределено Тогда МассивУдаляемыхРеквизитов.Добавить("Объект.КонтрольЦен."+СтрЗаменить(тЭлемент," ","")); КонецЕсли; КонецЦикла; ЭтаФорма.ИзменитьРеквизиты(, МассивУдаляемыхРеквизитов); Для Каждого тЭлемент из МассивУдаляемыхКолонок Цикл нЭлемент = ЭтаФорма.Элементы.Найти(СтрЗаменить(тЭлемент," ","")); Если нЭлемент <> Неопределено Тогда Элементы.Удалить(нЭлемент); КонецЕсли; КонецЦикла; КонецПроцедуры &НаКлиенте Процедура ВидыУстанавливаемыхЦенНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) УдалитьКолонки(); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |