![]() |
![]() |
![]() |
|
Правильное удаление элемента с формы | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
23.04.21
✎
06:40
|
Делаю процедуру, которая по установленной галке создает список значения программно на форме.
Если галка снимается, список удаляется. Но вот когда ставишь его повторно идет ошибка, - Как правильно удалить, что бы потом создавать снова, при повторных установках галки ? Неуникальное имя реквизита. Имя: "СписокДляXLS" {ВнешняяОбработка.ПанельЗаготовок_0_20_22.Форма.Форма.Форма(1609)}: ИзменитьРеквизиты(ДобавляемыеРеквизиты); {ВнешняяОбработка.ПанельЗаготовок_0_20_22.Форма.Форма.Форма(1636)}: СоздатьСписокДляXLS(); по причине: Неуникальное имя реквизита. Имя: "СписокДляXLS" СпXLS = Элементы.Найти("СписокДляXLS"); Если СпXLS = Неопределено Тогда ДобавляемыеРеквизиты = Новый Массив; ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы("СписокДляXLS", Новый ОписаниеТипов("Строка"))); ИзменитьРеквизиты(ДобавляемыеРеквизиты); // СписокДляXLS = Элементы.Добавить("СписокДляXLS", Тип("ПолеФормы"), Элементы.ГруппаОпцииГоризонтальные_2); СписокДляXLS.Вид = ВидПоляФормы.ПолеВвода; СписокДляXLS.ПутьКДанным = "СписокДляXLS"; СписокДляXLS.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; // ЭтаФорма.Элементы.СписокДляXLS.КнопкаОчистки = Истина; ЭтаФорма.Элементы.СписокДляXLS.КнопкаВыпадающегоСписка = Истина; // ЭтаФорма.Элементы.СписокДляXLS.СписокВыбора.Добавить("COMОбъект", "COMОбъект"); ЭтаФорма.Элементы.СписокДляXLS.СписокВыбора.Добавить("ТабличныйДокумент", "ТабличныйДокумент"); Иначе Элементы.Удалить(СпXLS); КонецЕсли; КонецПроцедуры // |
|||
1
ДенисЧ
23.04.21
✎
06:41
|
А азчем удалять-добавлять? Просто видимостью поиграться - не вариант?
|
|||
2
NIGHTHUNTER
23.04.21
✎
10:13
|
(1) Ну так хочу подкопаться. Можно и видимостью. Я рассматриваю все возможные варианты.
Так вот сработало, - СпXLS = Элементы.Найти("СписокДляXLS"); Если СпXLS = Неопределено Тогда ДобавляемыеРеквизиты = Новый Массив; ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы("СписокДляXLS", Новый ОписаниеТипов("Строка"))); ИзменитьРеквизиты(ДобавляемыеРеквизиты); // СписокДляXLS = Элементы.Добавить("СписокДляXLS", Тип("ПолеФормы"), Элементы.ГруппаОпцииГоризонтальные_2); СписокДляXLS.Вид = ВидПоляФормы.ПолеВвода; СписокДляXLS.ПутьКДанным = "СписокДляXLS"; СписокДляXLS.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; // ЭтаФорма.Элементы.СписокДляXLS.КнопкаОчистки = Истина; ЭтаФорма.Элементы.СписокДляXLS.КнопкаВыпадающегоСписка = Истина; // ЭтаФорма.Элементы.СписокДляXLS.СписокВыбора.Добавить("COMОбъект", "COMОбъект"); ЭтаФорма.Элементы.СписокДляXLS.СписокВыбора.Добавить("ТабличныйДокумент", "ТабличныйДокумент"); Иначе УдаляемыеРеквизитыТЗ = Новый Массив; УдаляемыеРеквизитыТЗ.Добавить("СписокДляXLS"); Элементы.Удалить(СпXLS); ИзменитьРеквизиты(, УдаляемыеРеквизитыТЗ); КонецЕсли; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |