Обработка выбора значения составного типа #624936


#0 by neo1109
Имеем поле на форме составного типа: строка и несколько видов документов. При выборе значения происходит следующее: 2. Выбор типа 3. Если выбран какой нибудь из документов - открытие формы списка Вопрос: как "влезть" между пунктами 2 и 3? т.е. сделать следующее: если выбран тип документа, то форму списка открыть с нужным отбором.
#1 by DrShad
в пункте 1 СтандартнаяОбработка = Ложь, выбрать тип и открыть форму с нужным выбором через собственный код
#2 by neo1109
+100 А как программно выбрать тип?
#3 by hhhh
привестизначение
#4 by DrShad
МойРеквизит = Документы.ПриходныйКассовыйОрдер.ПустаяСсылка  как пример
#5 by DrShad
+1
#6 by neo1109
Про ПривестиЗначение понятно. Но это я сам назначаю реквизиту тип. А мне надо у пользователя спросить...
#7 by Godofsin
Нахера? Чо он сам выбрать не может?
#8 by neo1109
кто "он"? начнем сначала. надо: 1. открыть окно выбора типа из списка тех, что доступны реквизиту 2. в зависимости от выбранного типа действовать дальше
#9 by neo1109
* кто "он"?
#10 by anddro
обработчики НачалоВыбора вызывается и при начале выбора типа, и при начале выбор значения. обработчик ПриИзменении вызывается и после окончания выбора типа, и после окончания выбора значения.
#11 by anddro
сделай эти 2 обработчика, и поставь в каждом точку останова. Потом сделай выбор вначале типа, потом значения, сразу все поймешь.
#12 by hhhh
пользователь видит поле ввода и там есть буковка "Т". Он на нее нажимает и выбирает тип. Какого такого вы у него еще дополнительно собрались спрашивать? Он без вас спокойно может открыть окно выбора типа.
#13 by Godofsin
+1. Если надо заполнение из другой формы, то впихай в СЗ все возможные значения, пусть из них пользователь выбирает.
#14 by anddro
телепатирую: после выбора типа сразу начать выбор значения. В штатном режиме вначале надо нажать на выбор типа [Т], потом на выбор значения [...]
#15 by anddro
Если в правильное предположение, то вот такой вариант: Процедура ПолеВвода1ПриИзменении(Элемент)
#16 by ZloyProger
По-моему проше так:
#17 by ZloyProger
Это судя по моей телепатии из "о форму списка открыть с нужным отбором."
#18 by neo1109
это я так понимаю в НачалоВыбора надо вставить (?) еще такой вопрос: чем заменить "Элемент.Значение" в случае управляемой формы?
#19 by ZloyProger
Хм.. Это я так понял 8.2, в ней к сожалению не силен пока((
#20 by Ksandr
Хорошо бы сделать так: начало выбора стандартная обработка ложь КонецЕсли
#21 by anddro
и что ты будешь делать, когда в составном типе 10 видов документов? И не путай ПолучитьФорму и ПолучитьФормуВыбора. Вариант не зависит от того, какие типы ты указал, т.е. при расширении типов не надо менять код.
#22 by ZloyProger
Во-первых, если 10 видов документов, то возможно и отборы нужны разные, в твоем варианте это тоже не учтено (и в моем и в твоем придется добавлять ИначеЕсли с обработками под разные типы отборов) Во-вторых, ПолучитьФормуВыбора = ПолучитьФорму("НазваниеОсновнойФормыВыбора") Так что вот) Нет ничего абсолютного, я не претендую на истину в первой инстанции, имхо зачем писать трай-эксепт, если можно писать так, что исключительной ситуации в принципе не может возникнуть?
#23 by neo1109
отбор нужен для всех документов один
#24 by neo1109
единственное тока возможно потребуется проверка на наличие в документе нужного реквизита...
#25 by ZloyProger
Ну тогда да, однозначно . Ну через метаданные проверишь есть или нет.
#26 by neo1109
а как теперь реализовать для управляемого приложения?
#27 by neo1109
Вопрос сюда же... Есть документ, есть ТЧ, в ней колонка составного типа. Как получить список типов этой колонки? Если что применительно к управляемому приложению...
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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