Управляемая форма и поле выбора составного типа #697042


#0 by Yea-Yea
Есть управляемая форма документа Инвентаризация товаров на складе. На форме есть поле составного типа: Справочник.Номенклатура и СписокЗначений. При начале выбора, предлагает выбрать из двух типов - выбираю "номенклатура" и после этого выбираю конкретный элемент справочника. Если при начале выбора выбрать "список значений" - то откроется форма списка значений, однако подбор в нем не типизирован! т.е. перед добавлением предлагает выбрать конкретный элемент метаданных (что конечно не удобно). Если же в свойствах поля убрать флаг составного типа и оставить только "список значений" - то там же в свойствах этот список можно типизировать (указать тип "справочник.номенклатура") и тогда уже при выборе откроется типизированный список значений с возможностью подбора сразу из справочника номенклатура. Как только меняю тип поля ввода на составной - возможность типизировать список значений пропадает. Вопрос - как сделать управляемую форму инвентаризации аналогично обычной. Суть - при изменении типа сравнения с "равно" на "в списке" - должен меняться тип поля ввода (он кстати и меняется, если использовать ограничение типа при условии что поле составного типа), но при установке на список значений - он не типизирован! как быть?
#1 by Yea-Yea
где же гуру управляемых форм...
#2 by RomaH
устанавливай свойства поля кодом
#3 by Рэйв
Массив попробуй передать в параметр, а не список. Иногда помогает
#4 by Yea-Yea
не нашел как типизировать список значения кодом. есть пример? в отладчике не нашел подходящих свойств.
#5 by Yea-Yea
а в какой параметр?
#6 by RomaH
свойства элемента посмотри что-то типа "типЗначения"
#7 by RomaH
или ограничение типа
#8 by Yea-Yea
искал, нет такого
#9 by Yea-Yea
ограничение типа использую. позволяет установить конкретный тип выбора для поля составного типа. т.е. ставлю или Тип("Справочник.Номенклатура") или Тип("СписокЗначений"). Все работает. Но СписокЗначений получается не типизированный
#10 by RomaH
плохо искал - поищи еще раз давай скрин где не нашел
#11 by GROOVY
Использование: Чтение и запись. Описание: Тип: ОписаниеТипов. Определяет тип для значений, которые могут храниться в элементах данного списка значений. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
#12 by Yea-Yea
вот все свойства поля выбора в отладчике там нет ТипЗначения
#13 by Yea-Yea
а чье это свойство, как к нему обратится?
#14 by RomaH
Если Отчет.ВидСравненияОрганизации = ВидСравнения.ВСписке ИЛИ Отчет.ВидСравненияОрганизации = ВидСравнения.НеВСписке Тогда
#15 by Yea-Yea
&НаКлиенте {Документ.ИнвентаризацияТоваровНаСкладе.Форма.ФормаДокументаУправляемая.Форма}: Поле объекта не обнаружено (ТипЗначения)
#16 by Yea-Yea
смысл процедуры в - при изменении вида сравнения, я должен установить ограничения типа (устанавливается нормально) и каким-то образом типизировать этот список значения
#17 by Yea-Yea
апну чтоли...
#18 by RomaH
все работает
#19 by RomaH
&НаСервере
#20 by Yea-Yea
а что такое объект у тебя? у меня объект - это ДанныеФормыСтруктура (сам документ инвентаризация). а ЗначениеОтбораПоНоменклатуре - реквизит формы.
#21 by RomaH
сам догадайся - я сидел и извращался - делал все сложно вместо того что бы просто создать обработку и кинуть два реквизита - один в обработку второй в форму
#22 by Yea-Yea
большое спасибо за помощь! наверно дело было в кривых руках, так как в итоге заработал вот такой код: &НаСервере Процедура ИзменитьТипНаСервере(Знач ВидСравнения)          ОтборПоНоменклатуре =  ВидСравнения = "Равно" ИЛИ ВидСравнения = "Не равно" ИЛИ ВидСравнения = "В иерархии" ИЛИ ВидСравнения = "Не в иерархии";          Если ОтборПоНоменклатуре Тогда
#23 by Yea-Yea
Единственно момент остался. процедура "ВидСравненияПоНоменклатуреПриИзменении" вызывается при изменении ВидСравненияПоНоменклатуре (список значений, список выбора которой заполняется при создании формы на сервере). так вот, в этой процедуре текущее значение выбора я могу получить только через "Элемент.ТекстРедактирования" или "Элемент.ВыделенныйТекст". Чувствую что гамногодом отдает. Но как по другому получить текущее значение списка выбора я не нашел (в отладчике тоже вроде все проверил). может есть другой путь?
#24 by Yea-Yea
вопрос в снимается )
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С