Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Возможно ли добавить отбор в подбор на управляемых формах?

Возможно ли добавить отбор в подбор на управляемых формах?
Я
   Eastert
 
28.09.17 - 08:45
Искал, не нашел - может кто знает как это реализовать. Нужно добавить по одному из полей отбор при нажатии подбора. Как бы по сути я не нашел даже какое событие срабатывает при этом.
Там где просто по кнопке добавить сделал вот так вот
            
        СтандартнаяОбработка = Ложь;
        
        Форма = ПолучитьФорму("Документ.ЗаказКлиента.ФормаВыбора");
        
        ЭлементОтбора = Форма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
        ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
        ЭлементОтбора.Использование = Истина;
        ЭлементОтбора.ПравоеЗначение = ПолучитьЗаказыПоКлиенту(Клиент);
        
        Форма.Параметры.РежимВыбора = Истина;
        Форма.ВладелецФормы = Элементы.ЗаказыЗначение;
        Форма.Открыть();
        
Вот надо все тоже самое и в подборе сделать. Спасибо заранее
 
 
   Eastert
 
1 - 28.09.17 - 08:46
Элемент формы, куда надо подбирать - СписокЗначений
   vicof
 
2 - 28.09.17 - 09:26
куча букв, смысла мало. Давай скриншоты.
   Eastert
 
3 - 28.09.17 - 09:32
   Eastert
 
4 - 28.09.17 - 09:32
Вот по нажатию этого подбора в список значений (снизу который) должны попадать документы, где партнер равен полю Клиент
   Eastert
 
5 - 28.09.17 - 09:34
(4) ну то есть должна открываться форма подбора где партнер = заданный Клиент
   vicof
 
6 - 28.09.17 - 09:37
Если основной реквизит формы подбора - Динамический список:

Отбор = Новый Структура;
Отбор.Вставить("Клиент", Клиент);

Параметры = Новый Структура;
Параметры.Вставить("Отбор", Отбор);
Открытьформу(Имя, Параметры, Элемент)
   Eastert
 
7 - 28.09.17 - 09:39
(6) в какой процедуре?
   vicof
 
8 - 28.09.17 - 09:40
Привязанной к кнопке подбора
   Eastert
 
9 - 28.09.17 - 09:42
(8) если своя кнопка, то как я понимаю будет обыкновенная форма выбора, то есть по одному элементу, а не подбором
   breezee
 
10 - 28.09.17 - 09:52
(9)
(6) +  
Параметры = Новый Структура;
Параметры.Вставить("Отбор", Отбор);
Параметры.Вставить("МножественныйВыбор", Истина);
 
 Рекламное место пустует
   dezss
 
11 - 28.09.17 - 09:54
(10) или
Параметры.Вставить("ЗакрыватьПриВыборе",Ложь);
   Eastert
 
12 - 28.09.17 - 10:00
(6) А вообще вы это на управляемых формах делали? у меня так отбор не работает вообще
   vicof
 
13 - 28.09.17 - 10:05
(12) На управляемых. Раз 500.
   dezss
 
14 - 28.09.17 - 10:05
(12) чтобы он работал, надо вместо "Клиент" написать то поле, которое есть в списке.
   AlvlSpb
 
15 - 28.09.17 - 10:08
(0) Ищите в конфигураторе форму подбора. Это либо Общая форма "ФормаПодбоаНоменклатуры" либо Обработка ПодборНоменклатуры-Форма. В пролцедуре ПриОткрытии добавляете свой код, но не полностью, примерно так:

ЭлементОтбора = ЭтаФорма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
        ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
        ЭлементОтбора.Использование = Истина;
        ЭлементОтбора.ПравоеЗначение = ПолучитьЗаказыПоКлиенту(Клиент);
   dezss
 
16 - 28.09.17 - 10:13
(15) Нафейхоа? Отбор и так должен работать.
   Eastert
 
17 - 28.09.17 - 10:13
(15) та это ФормаВыбора в документе нужном, и если я вас правильно понял, то мне саму конфу не хочется менять
   Eastert
 
18 - 28.09.17 - 10:15
(13) Да, спасибо, так работает отбор, но при выборе из открывающейся формы, выбранные значения не попадают в мой списокзначений, куда они должны при выборе попадать, попробовал так указать, но все равно не хочет
    Открытьформу("Документ.ЗаказКлиента.ФормаВыбора", ПараметрыОтбора, Элементы.ЗаказыЗначение);
   AlvlSpb
 
19 - 28.09.17 - 10:16
(16) Это как вариант использования кода автора, вариант рабочий.
(17) А куда вы собираетесь вставлять любой код? Либо менять конфу, как вариант сделать расширение
   vicof
 
20 - 28.09.17 - 10:16
(18) Используй ОбработкаВыбора, люк
   Eastert
 
21 - 28.09.17 - 10:19
(20) если вы имеете ввиду в процедуре ОбработкаВыбора этот код написать, то все равно не добавляется выбранные элементы
   vicof
 
22 - 28.09.17 - 10:20
(21) Нет, там написать код по обработке выбора
   dezss
 
23 - 28.09.17 - 10:20
(19) понятно что рабочий, но это использовать можно только если сравнение не на равенство.
(21) после выбора в дочерней форме, вызывается ОбработкаВыбора из родительской.
   Eastert
 
24 - 28.09.17 - 10:27
(22) какой код по обработке выбора - он мне не нужен, мне нужно добавить отбор в саму форму открытия выбора, а там уже человек может выбирать что угодно
   dezss
 
25 - 28.09.17 - 10:30
(24) но потом же этот его выбор надо обработать, так?
И обрабатывается он в ОбработкаВыбора.
А если не хочешь с этим париться, используй ОткрытьФормуМодально.
   ils108
 
26 - 28.09.17 - 10:31
(24) все верно, в ОбработкаВыбора есть ВыбранноеЗначение, его и присваивать своему реквизиту формы
   dezss
 
27 - 28.09.17 - 10:32
(25) + ОткрытьФормуМодально будет просто возвращаться тебе список выбранных позиций.
   ils108
 
28 - 28.09.17 - 10:33
формы модально лучше не использовать если верить 
"В платформе "1С:Предприятие 8.3" появилась возможность полностью отказаться от модальных методов, заменив их на блокирующие, что позволит улучшить отзывчивость интерфейса и повысить удобство работы в закладочном режиме." (с) 1ЭС
   Eastert
 
29 - 28.09.17 - 10:35
(26) Смотрите, я добавил свою кнопку, по нажатию ее срабатывает открытие формы выбора с нужным отборм, множественный выбор есть, но если я что-то в ней выбираю, то ничего не происходить, обработкавыбора тоже не срабаывается при этом
   dezss
 
30 - 28.09.17 - 10:38
(28) да-да...и все эти подпорки ОписаниеОповещенияОЗакрытии и т.п. Знаем мы, почему они от модальности отказываются)))
(29) А ты точно именно форму выбора открываешь?
   ils108
 
31 - 28.09.17 - 10:38
(29)
УправляемаяФорма (ManagedForm)
ОповеститьОВыборе (NotifyChoice)
Синтаксис:

ОповеститьОВыборе(<ЗначениеВыбора>)
Параметры:

<ЗначениеВыбора> (обязательный)

Тип: Произвольный.
Результат выбора.
Описание:

Посылает оповещение владельцу формы о выполнении выбора или подбора, передает ему выбранное значение. Закрывает форму в соответствии со значением свойства ЗакрыватьПриВыборе. Данное действие аналогично выполнению выбора в форме, открытой для выбора в поле ввода или ячейке табличного поля.

Доступность:

Тонкий клиент, веб-клиент, толстый клиент, мобильное приложение(клиент).
Примечание:

Может применяться в случае, когда открытие формы выбора или подбора выполнено средствами языка.
   Eastert
 
32 - 28.09.17 - 10:39
(31) я не хочу менять конфу
   Eastert
 
33 - 28.09.17 - 10:39
(30) да
    ОткрытьФорму("Документ.ЗаказКлиента.ФормаВыбора", ПараметрыОтбора, Элементы.ЗаказыЗначение);
 
 
   dezss
 
34 - 28.09.17 - 10:41
(33) 3-й параметр поставь ЭтаФорма
   Eastert
 
35 - 28.09.17 - 10:44
(34) поставил, все равно не хочет
   ils108
 
36 - 28.09.17 - 10:45
(35) а что ты написал в  ОбработкаВыбора
   Eastert
 
37 - 28.09.17 - 10:47
(36) поставил точку останова, но также написал Сообщить(ВыбранноеЗначение);
   ils108
 
38 - 28.09.17 - 10:49
(37) ОбработкаВыбора таблицыформы или формы?
   Eastert
 
39 - 28.09.17 - 10:51
(38) таблицыформы, обработка выбора из формы работает как надо) вопрос закрыт, спасибо всем)


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует