|   |   | 
| 
 | Возможно ли добавить отбор в подбор на управляемых формах? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Eastert 28.09.17✎ 08:45 | 
        Искал, не нашел - может кто знает как это реализовать. Нужно добавить по одному из полей отбор при нажатии подбора. Как бы по сути я не нашел даже какое событие срабатывает при этом. 
 Там где просто по кнопке добавить сделал вот так вот СтандартнаяОбработка = Ложь; Форма = ПолучитьФорму("Документ.ЗаказКлиента.ФормаВыбора"); ЭлементОтбора = Форма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке; ЭлементОтбора.Использование = Истина; ЭлементОтбора.ПравоеЗначение = ПолучитьЗаказыПоКлиенту(Клиент); Форма.Параметры.РежимВыбора = Истина; Форма.ВладелецФормы = Элементы.ЗаказыЗначение; Форма.Открыть(); Вот надо все тоже самое и в подборе сделать. Спасибо заранее | |||
| 1
    
        Eastert 28.09.17✎ 08:46 | 
        Элемент формы, куда надо подбирать - СписокЗначений     | |||
| 2
    
        vicof 28.09.17✎ 09:26 | 
        куча букв, смысла мало. Давай скриншоты.     | |||
| 3
    
        Eastert 28.09.17✎ 09:32 | ||||
| 4
    
        Eastert 28.09.17✎ 09:32 | 
        Вот по нажатию этого подбора в список значений (снизу который) должны попадать документы, где партнер равен полю Клиент     | |||
| 5
    
        Eastert 28.09.17✎ 09:34 | 
        (4) ну то есть должна открываться форма подбора где партнер = заданный Клиент     | |||
| 6
    
        vicof 28.09.17✎ 09:37 | 
        Если основной реквизит формы подбора - Динамический список:
 Отбор = Новый Структура; Отбор.Вставить("Клиент", Клиент); Параметры = Новый Структура; Параметры.Вставить("Отбор", Отбор); Открытьформу(Имя, Параметры, Элемент) | |||
| 7
    
        Eastert 28.09.17✎ 09:39 | 
        (6) в какой процедуре?     | |||
| 8
    
        vicof 28.09.17✎ 09:40 | 
        Привязанной к кнопке подбора     | |||
| 9
    
        Eastert 28.09.17✎ 09:42 | 
        (8) если своя кнопка, то как я понимаю будет обыкновенная форма выбора, то есть по одному элементу, а не подбором     | |||
| 10
    
        breezee 28.09.17✎ 09:52 | 
        (9) 
 (6) + Параметры = Новый Структура; Параметры.Вставить("Отбор", Отбор); Параметры.Вставить("МножественныйВыбор", Истина); | |||
| 11
    
        dezss 28.09.17✎ 09:54 | 
        (10) или
 Параметры.Вставить("ЗакрыватьПриВыборе",Ложь); | |||
| 12
    
        Eastert 28.09.17✎ 10:00 | 
        (6) А вообще вы это на управляемых формах делали? у меня так отбор не работает вообще     | |||
| 13
    
        vicof 28.09.17✎ 10:05 | 
        (12) На управляемых. Раз 500.     | |||
| 14
    
        dezss 28.09.17✎ 10:05 | 
        (12) чтобы он работал, надо вместо "Клиент" написать то поле, которое есть в списке.     | |||
| 15
    
        AlvlSpb naïve 28.09.17✎ 10:08 | 
        (0) Ищите в конфигураторе форму подбора. Это либо Общая форма "ФормаПодбоаНоменклатуры" либо Обработка ПодборНоменклатуры-Форма. В пролцедуре ПриОткрытии добавляете свой код, но не полностью, примерно так:
 ЭлементОтбора = ЭтаФорма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке; ЭлементОтбора.Использование = Истина; ЭлементОтбора.ПравоеЗначение = ПолучитьЗаказыПоКлиенту(Клиент); | |||
| 16
    
        dezss 28.09.17✎ 10:13 | 
        (15) Нафейхоа? Отбор и так должен работать.     | |||
| 17
    
        Eastert 28.09.17✎ 10:13 | 
        (15) та это ФормаВыбора в документе нужном, и если я вас правильно понял, то мне саму конфу не хочется менять     | |||
| 18
    
        Eastert 28.09.17✎ 10:15 | 
        (13) Да, спасибо, так работает отбор, но при выборе из открывающейся формы, выбранные значения не попадают в мой списокзначений, куда они должны при выборе попадать, попробовал так указать, но все равно не хочет
 Открытьформу("Документ.ЗаказКлиента.ФормаВыбора", ПараметрыОтбора, Элементы.ЗаказыЗначение); | |||
| 19
    
        AlvlSpb naïve 28.09.17✎ 10:16 | 
        (16) Это как вариант использования кода автора, вариант рабочий. 
 (17) А куда вы собираетесь вставлять любой код? Либо менять конфу, как вариант сделать расширение | |||
| 20
    
        vicof 28.09.17✎ 10:16 | 
        (18) Используй ОбработкаВыбора, люк     | |||
| 21
    
        Eastert 28.09.17✎ 10:19 | 
        (20) если вы имеете ввиду в процедуре ОбработкаВыбора этот код написать, то все равно не добавляется выбранные элементы     | |||
| 22
    
        vicof 28.09.17✎ 10:20 | 
        (21) Нет, там написать код по обработке выбора     | |||
| 23
    
        dezss 28.09.17✎ 10:20 | 
        (19) понятно что рабочий, но это использовать можно только если сравнение не на равенство.
 (21) после выбора в дочерней форме, вызывается ОбработкаВыбора из родительской. | |||
| 24
    
        Eastert 28.09.17✎ 10:27 | 
        (22) какой код по обработке выбора - он мне не нужен, мне нужно добавить отбор в саму форму открытия выбора, а там уже человек может выбирать что угодно     | |||
| 25
    
        dezss 28.09.17✎ 10:30 | 
        (24) но потом же этот его выбор надо обработать, так?
 И обрабатывается он в ОбработкаВыбора. А если не хочешь с этим париться, используй ОткрытьФормуМодально. | |||
| 26
    
        ils108 28.09.17✎ 10:31 | 
        (24) все верно, в ОбработкаВыбора есть ВыбранноеЗначение, его и присваивать своему реквизиту формы     | |||
| 27
    
        dezss 28.09.17✎ 10:32 | 
        (25) + ОткрытьФормуМодально будет просто возвращаться тебе список выбранных позиций.     | |||
| 28
    
        ils108 28.09.17✎ 10:33 | 
        формы модально лучше не использовать если верить 
 "В платформе "1С:Предприятие 8.3" появилась возможность полностью отказаться от модальных методов, заменив их на блокирующие, что позволит улучшить отзывчивость интерфейса и повысить удобство работы в закладочном режиме." (с) 1ЭС | |||
| 29
    
        Eastert 28.09.17✎ 10:35 | 
        (26) Смотрите, я добавил свою кнопку, по нажатию ее срабатывает открытие формы выбора с нужным отборм, множественный выбор есть, но если я что-то в ней выбираю, то ничего не происходить, обработкавыбора тоже не срабаывается при этом     | |||
| 30
    
        dezss 28.09.17✎ 10:38 | 
        (28) да-да...и все эти подпорки ОписаниеОповещенияОЗакрытии и т.п. Знаем мы, почему они от модальности отказываются)))
 (29) А ты точно именно форму выбора открываешь? | |||
| 31
    
        ils108 28.09.17✎ 10:38 | 
        (29)
 УправляемаяФорма (ManagedForm) ОповеститьОВыборе (NotifyChoice) Синтаксис: ОповеститьОВыборе(<ЗначениеВыбора>) Параметры: <ЗначениеВыбора> (обязательный) Тип: Произвольный. Результат выбора. Описание: Посылает оповещение владельцу формы о выполнении выбора или подбора, передает ему выбранное значение. Закрывает форму в соответствии со значением свойства ЗакрыватьПриВыборе. Данное действие аналогично выполнению выбора в форме, открытой для выбора в поле ввода или ячейке табличного поля. Доступность: Тонкий клиент, веб-клиент, толстый клиент, мобильное приложение(клиент). Примечание: Может применяться в случае, когда открытие формы выбора или подбора выполнено средствами языка. | |||
| 32
    
        Eastert 28.09.17✎ 10:39 | 
        (31) я не хочу менять конфу     | |||
| 33
    
        Eastert 28.09.17✎ 10:39 | 
        (30) да
 ОткрытьФорму("Документ.ЗаказКлиента.ФормаВыбора", ПараметрыОтбора, Элементы.ЗаказыЗначение); | |||
| 34
    
        dezss 28.09.17✎ 10:41 | 
        (33) 3-й параметр поставь ЭтаФорма     | |||
| 35
    
        Eastert 28.09.17✎ 10:44 | 
        (34) поставил, все равно не хочет     | |||
| 36
    
        ils108 28.09.17✎ 10:45 | 
        (35) а что ты написал в  ОбработкаВыбора     | |||
| 37
    
        Eastert 28.09.17✎ 10:47 | 
        (36) поставил точку останова, но также написал Сообщить(ВыбранноеЗначение);     | |||
| 38
    
        ils108 28.09.17✎ 10:49 | 
        (37) ОбработкаВыбора таблицыформы или формы?     | |||
| 39
    
        Eastert 28.09.17✎ 10:51 | 
        (38) таблицыформы, обработка выбора из формы работает как надо) вопрос закрыт, спасибо всем)     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |