Имя: Пароль:
1C
1С v8
Множественный выбор элементов справочника в УФ
0 UFO
 
29.07.15
10:50
В общем, вопрос в теме...
Есть такой кодик:

    П = Новый Структура;
    Спр = ПолучитьФорму("Справочник.ПричиныПростоев.ФормаВыбора", П);
    Результат = Спр.ОткрытьМодально();


Я делаю множественный выбор в справочнике, но в результате выходит только последний выбранный элемент. Как получить остальные отмеченные элементы?
1 Остап Сулейманович
 
29.07.15
10:52
(0) "Я делаю множественный выбор в справочнике"
Распишите по шагам. Где-то вы чего-нибудь пропустили.
2 UFO
 
29.07.15
10:53
ЧТо непонятного, нажимаю CTRL и отмечаю элементы которые мне нужны и нажимаю выбрать
3 r_i_n_i_k
 
29.07.15
10:54
(2) а при закрытии той формы что делаете?
Чтобы не нарваться на хамство поясню - процедура Закрыть() что-то содержит?
4 UFO
 
29.07.15
10:55
Там ничего нет.. никакого кода
5 UFO
 
29.07.15
10:56
Всё сделано автоматически... кода там вообще нет в справочнике том
6 lxndr
 
29.07.15
10:56
(0) вообще
П = Новый Структура("МножественныйВыбор", Истина);

Но открывать форму модально это не православно
7 UFO
 
29.07.15
10:56
Вообще на форме в списке стоит истина
8 r_i_n_i_k
 
29.07.15
10:57
(4) вот там и формируйте то, что хотите передать. Что то типа Форма.Список.ВыделенныеСтроки - будет содержать все, что вы выделили, формируйте список или таблицу, как удобнее и передавайте его при Закрытии или нажатию на ОК или как удобнее
9 r_i_n_i_k
 
29.07.15
10:57
(6) нормально, если не используется веб-морда
10 lxndr
 
29.07.15
10:58
(9) когда нибудь в конфе обновится режим использования модальности и придется ползать по своим шедеврам, править всякие предупреждалки
11 Kondarat
 
29.07.15
10:59
ОбработкаВыбора (ChoiceProcessing)
Синтаксис:

ОбработкаВыбора(<ВыбранноеЗначение>, <ИсточникВыбора>)
Параметры:

<ВыбранноеЗначение>

Тип: Произвольный.
Результат выбора в подчиненной форме. В случае множественного выбора возвращается массив выбранных значений.
<ИсточникВыбора>

Тип: Произвольный.
Форма, где осуществлен выбор.
Описание:

Возникает на клиенте при выборе объекта в одной из подчиненных форм или при вызове в одной из подчиненных форм метода ОповеститьОВыборе".
12 UFO
 
29.07.15
11:00
Я не могу трогать тот справочник, не я его делал. А вот (6) выдал мне массив, что отлично меня порадовало
13 lxndr
 
29.07.15
11:05
а теперь замени на

Спр = ПолучитьФорму("Справочник.ПричиныПростоев.ФормаВыбора", П, ЭтаФорма);
    Результат = Спр.Открыть();

И прикрути (11)
14 Остап Сулейманович
 
29.07.15
11:06
(2) А какие-нибудь галочки в форме выбора проставлены?
15 Остап Сулейманович
 
29.07.15
11:10
+ (14) Ну или хотя бы так :

П = Новый Структура;
//ВотЪ ОНО
П.Вставить("МножественныйВыбор",Истина);
Спр = ПолучитьФорму("Справочник.ПричиныПростоев.ФормаВыбора", П);
Результат = Спр.ОткрытьМодально();

Сделано?
16 UFO
 
29.07.15
11:11
(13) Если форма отрывается не модально, то выполнение кода продлаолжается сразу после открытия формы, а что мне там проверять, если пользователь не ввёл данные
17 UFO
 
29.07.15
11:12
Я воспользовался (6) пунктом и обработал массив элементов, что мне и нужно было
18 UFO
 
29.07.15
11:12
Всем спасибо!!!
19 lxndr
 
29.07.15
11:13
(16) прикручиваешь обработкувыбора как в (11) в свойства формы, результат будет в параметре ВыбранноеЗначение
2 + 2 = 3.9999999999999999999999999999999...