| 
    
            
         
         | 
    
    
  | 
Возможно ли добавить отбор в подбор на управляемых формах? | ☑ | ||
|---|---|---|---|---|
| 
    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) таблицыформы, обработка выбора из формы работает как надо) вопрос закрыт, спасибо всем)     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |