|
Программное создание реквизита в обычных формах | ☑ | ||
---|---|---|---|---|
0
bebibo
26.05.24
✎
23:13
|
Всем здравствуйте!
Подскажите пожалуйста, как на обычных формах программно создать элемент с типом список значений? Я создал элемент с типом ссылка, то есть могу выбрать 1 склад. А мне нужно несколько складов выбрать, чтобы в дальнейшем использовать их для отбора. |
|||
1
VS-1976
27.05.24
✎
00:56
|
Ну так сделай сразу реквизит составного типа с типом склад на сколько я помню
|
|||
2
lEvGl
27.05.24
✎
01:51
|
(0) Элемент если уже есть на форме, то формируете сам список программно и назначаете его Элементу.СписокЗначений. у элемента свойство ДоступенСписокЗначениц и еще что то было кажется
|
|||
3
TormozIT
27.05.24
✎
08:40
|
(0) Реквизит обычной формы нельзя создать программно. Но можно создать табличное поле без связи с реквизитом и установкой ему свойства "ТипЗначения" создать данные формы нужного типа. Если же нужно поле ввода, то там просто можно присвоить свойству "Значение" значение нужного типа.
|
|||
4
lEvGl
27.05.24
✎
10:33
|
Реквизит обычной формы нельзя создать программно чего бы это, элемент формы без данных когда добавляется, он и становится реквизитом формы |
|||
5
bebibo
27.05.24
✎
21:53
|
(1) Зачем составной тип?
|
|||
6
bebibo
27.05.24
✎
21:53
|
(2) Сейчас напишу как я сделал
|
|||
7
bebibo
27.05.24
✎
21:54
|
(3) Как нельзя? можно
|
|||
8
bebibo
27.05.24
✎
22:05
|
Создание реквизита:
Элемент = ЭтаФорма.ЭлементыФормы.Добавить(Тип("ПолеВыбора"), "СкладСписком", Истина); Элемент.Лево = 100; Элемент.Верх = 154; Элемент.Ширина = 80; Элемент.Высота = 19; Элемент.КнопкаВыбора = Истина; ЭтаФорма.ЭлементыФормы.СкладСписком.СписокВыбора.ЗагрузитьЗначения(СписокЗначСкладов); Далее даю действие ДействиеПриИзмененииСкладаСписком = Новый Действие("ПоказатьПодразделения"); ЭлементыФормы.СкладСписком.УстановитьДействие("НачалоВыбора", ДействиеПриИзмененииСкладаСписком); Процедура ПоказатьПодразделения(П = "",П2 = "" ) СтандартнаяОбработка = Ложь; П = Новый Структура; П.Вставить("Ключ", ЭтаФорма); ФормаПодбора = Справочники.ПодразделенияКомпании.ПолучитьФормуВыбора(,П,); ФормаПодбора.РежимВыбора = Истина; ФормаПодбора.ЗакрыватьПриВыборе = Истина; ФормаПодбора.МножественныйВыбор = Истина; ФормаПодбора.Открыть(); КонецПроцедуры Проблема в том, что выбранное мной подразделение не сохраняется в реквизите. То есть выбрал я склад (подразделение), а оно не сохранилось в моем реквизите. Списком сделал ,потому что нужно выбирать несколько подразделений |
|||
9
Мимохожий Однако
28.05.24
✎
07:53
|
(8) Какие процедуры сохранения содержания списка прописал? Полагаю, что не прописывал. Форма и значения на ней живут пока форма существует
|
|||
10
Chameleon1980
28.05.24
✎
07:56
|
добавь Тч и в нее
|
|||
11
lEvGl
28.05.24
✎
08:55
|
(8) что это
зачем форма выбора, зачем действие не понятно что нужно нужно несколько складов выбрать как в одном поле можно выбрать несколько складов чтобы в дальнейшем использовать их для отбора. если отчет, если на скд, то просто вывести отбор на форму если документ или что там, несколько значений только в таблицу можно выбрать ТЗ ТЧ или еще что нибудь коллекционное |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |