Имя: Пароль:
1C
 
Множественный выбор в подборе через оповещение
0 NIGHTHUNTER
 
04.11.21
12:31
Как можно реализовать множественный выбор в подборе? Одиночный вот, работает.
Если ставлю множественный в истина. то ничего не срабатывает ((( Как тут правильно можно сделать?

# Область ПодборСОбработкойОповещения
&НаКлиенте
Процедура ПодборПриобретенияКА(Команда)
    ПараметрыВыбора = Новый Структура;
    ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", Истина);
    ПараметрыВыбора.Вставить("МножественныйВыбор", Ложь);
    ПараметрыВыбора.Вставить("РежимВыбора",        Истина);
    //
    ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбора", ЭтаФорма, "ПодборПриобретения");
    //
    ОткрытьФорму("Документ.ПриобретениеТоваровУслуг.ФормаВыбора", ПараметрыВыбора, Элементы.ТзПриобретениеТоваровУслуг, , , , ОбработкаВыбора);
КонецПроцедуры    
//
&НаКлиенте
Процедура ПриЗакрытииФормыВыбора(Значение, ДопПараметры) Экспорт
   //Дополнительные условия если необходимо
   //Если ДопПараметры = "ПодборРеализации" тогда
    Если Значение = Неопределено Тогда  ///Если ничего не выбрать - вернется пустое значение (Неопределено)
        Возврат;
    КонецЕсли;
    //
    //МассивДокументов = Значение ///Если Множественный Выбор - то вернется массив
    //КонецЕсли;    
    //
    Если ТзПриобретениеТоваровУслуг.НайтиСтроки(Новый Структура("ДокументСсылка", Значение)).Количество() = 0 Тогда
        нСтр                = ТзПриобретениеТоваровУслуг.Добавить();
        нСтр.ДокументСсылка = Значение;
    КонецЕсли;
КонецПроцедуры
# КонецОбласти
//
# КонецОбласти
1 NIGHTHUNTER
 
04.11.21
13:14
(0) В этом случае, возможен множественный выбор в подборе ?
2 vicof
 
04.11.21
13:18
В этом это в каком?
3 NIGHTHUNTER
 
04.11.21
13:23
(2) Как что бы был множественный выбор? В этом что в (0) .

   ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", Истина);
    ПараметрыВыбора.Вставить("МножественныйВыбор", Ложь);
    ПараметрыВыбора.Вставить("РежимВыбора",        Истина);



Если поставить ПараметрыВыбора.Вставить("МножественныйВыбор", Истина); возвращается массив с 1 элементом

Если задать так

    ПараметрыВыбора = Новый Структура;
    ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", Ложь);
    ПараметрыВыбора.Вставить("МножественныйВыбор", Истина);
    ПараметрыВыбора.Вставить("РежимВыбора",        Истина);
    //


То ничего не выбирается вообще, как нужно тут?
4 acht
 
04.11.21
13:27
Надо обрабатывать событие обработки выбора у элемента, переданного владельцем в форму выбора.
5 NIGHTHUNTER
 
04.11.21
13:27
(3+) Я вот как в (0) сделал. по одному элементу добавлять что бы с закрытием формы выбора. А как множественный выбор в этом случае будет не знаю.
6 NIGHTHUNTER
 
04.11.21
13:28
(4) То есть это нужно делать в форме выбора документа? В конфигурации? Я во внешней обработке делаю.
7 vicof
 
04.11.21
13:30
8 acht
 
04.11.21
13:37
(6) А ты вакцинированный?
9 NIGHTHUNTER
 
04.11.21
13:37
(7) нет доступа у меня туда
10 NIGHTHUNTER
 
04.11.21
13:41
(7) А ну вот открыл
11 NIGHTHUNTER
 
04.11.21
13:43
(7) Ну это понятно. Но вот мне, для (0) ставя множественный выбор, не получается его получить.
Получал только массив с 1 строкой. Или это возможность, в форме выбора, через шифт, выделить 5 элементов, а потом???
Окно закрываю. И возвращается неопределено.
12 acht
 
04.11.21
13:47
Мда. Андрея учить - только портить.
Нельзя такое сделать, Андрей. Тебе - нельзя. Существует непреодолимое препятствие, извини.
13 NIGHTHUNTER
 
04.11.21
13:49
(12) Я и сказал, что это нужно делать в форме выбора документа? Спросил?
У меня утром энергия, после 15:00 ее нет. и я жутко тупить начинаю и сбоить.
По этому стараюсь вставать в 5:00 .
14 серый КТУЛХУ
 
04.11.21
14:00
кнопка "выбрать" в панели формы которую открываешь для подбора - есть? вот ее и жмякай (после того как выделишь Ctrl+click-ами или Shift+click-ами несколько нужных элементов)
15 NIGHTHUNTER
 
04.11.21
14:01
А ну понял, сработало

http://joxi.ru/MAjgV4Gf1GO7Lr

Ставишь

    ПараметрыВыбора.Вставить("МножественныйВыбор", Истина);
    ПараметрыВыбора.Вставить("РежимВыбора",        Истина);


Выделаешь через шифт несколько элементов и по контекстному меню, выбрать, возвращается массив с ними. да увидел.

Я не мог понять как в форме выбирать несколько. Теперь ясно. Потестирую ещё.

А то до этого. Возвращалось неопределено.
16 серый КТУЛХУ
 
04.11.21
14:01
... конечно имелось ввиду с ПараметрыВыбора.Вставить("МножественныйВыбор", Истина);
17 NIGHTHUNTER
 
04.11.21
14:02
(14) Понял! Да, кажется так работает. Сейчас оттестировать на разных вариантах только.


Получается в этом случае. этот параметр ничего не дает?

  ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", Ложь);
18 NIGHTHUNTER
 
04.11.21
14:17
С формы можно этот параметр множественный выбор менять, если он Ложь, то при выборе нескольких элементов отбирается последний.
Если он Истина. То в передаваемый массив, идут все выбранные элементы.

    ПараметрыВыбора = Новый Структура;
    //ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", Истина);
    ПараметрыВыбора.Вставить("МножественныйВыбор", МножественныйВыбор);
    ПараметрыВыбора.Вставить("РежимВыбора",        Истина);

В этом случае, получается вот это лишнее? ->     //ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", Истина);
19 pechkin
 
04.11.21
14:21
нужно не через обработку оповещения, а через обработку выбора и владельца
20 fisher
 
04.11.21
15:00
(0) Множественным выбором 1С называет возможность сделать несколько одиночных выборов без закрытия формы выбора.
21 fisher
 
04.11.21
15:04
(20) А, нет. Соврамши.
22 fisher
 
04.11.21
15:06
23 vicof
 
04.11.21
15:25
(22) уже в (7) ему написал)
24 ДенисЧ
 
04.11.21
15:26
(13) "У меня утром энергия, после 15:00 ее нет"
Переставай добавлять в коньяк кофе ))
25 fisher
 
04.11.21
18:45
(23) Просмотрел :) Как и то, что ТС уже разобрался вроде.
26 vicof
 
05.11.21
18:19
(25) Сомневаюсь, что разобрался)))
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший