Имя: Пароль:
1C
1С v8
Список значений на форме, В значения только группы
0 bodri
 
20.11.14
08:03
Есть реквизит на форме "Контрагенты", тип "СписокЗначений", ТипЗначенияСписка - "СправочникСсылка.Контрагенты" при нажатии кнопки выбора выходит окно со списком значений, при добавлении новой строки открывается форма выбора справочника, а надо чтоб открывалась форма выбора групп. Подскажите, такое возможно сделать?
1 Amfiaray
 
20.11.14
08:13
Можно в процедуре "ПриНачалеВыбора" открывать форму выбора группы и обрабатывать выбор
2 bodri
 
20.11.14
08:23
(1) Форма со списком значений на уровне платформы и там ПриНачалеВыбора не прикрутить
3 Amfiaray
 
20.11.14
08:26
(2) Форма внешняя или нет?
4 bodri
 
20.11.14
08:30
(3) в (2) не так выразился, не форма со списком значений а окно "редактирование списка значений"
5 Amfiaray
 
20.11.14
08:34
сейчас посмотрел у себя на УФ, у реквизита формы тип список значений, есть свойство "Выбор групп и элементов" там можно установить что выбирать
6 bodri
 
20.11.14
08:41
(5) Обычная форма
7 Мимохожий Однако
 
20.11.14
08:54
(6)Рассказывай все подробности. Давишь по каплям как партизан.
8 Amfiaray
 
20.11.14
09:07
(4)  окно "редактирование списка значений" вызывается в какой момент?
9 bodri
 
20.11.14
09:13
(8) при нажатии кнопки выбора  
(7) на мой взгляд в (0) вроде все написал
10 bodri
 
20.11.14
09:14
+(9) при нажатии кнопки выбора, реквизит на форме "Контрагенты"
11 Amfiaray
 
20.11.14
09:15
ну так и открывай форму выбора группы в процедуре "ПриНачалеВыбора"
12 Мимохожий Однако
 
20.11.14
09:16
(9)Про обычную форму сообщил только к 6 посту. Типовая или нет конфигурация не сказал. Про платформу тоже надо догадываться. Можешь считать, что я придираюсь. Но это базовый подход. ИМХО
13 Amfiaray
 
20.11.14
09:24
Процедура Реквизит1НачалоВыбора(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ФормаВыбора = Справочники.Контрагенты.ПолучитьФормуВыбораГруппы();
    ФормаВыбора.ВладелецФормы = ЭтаФорма;
    ФормаВыбора.ЗакрыватьПриВыборе = Ложь;
    ФормаВыбора.МножественныйВыбор = Истина;
    ФормаВыбора.ОткрытьМодально();
КонецПроцедуры


Процедура ОбработкаВыбора(ЗначениеВыбора, Источник)
    для i = 0 По ЗначениеВыбора.Количество()-1 Цикл
        Реквизит1.Добавить(ЗначениеВыбора[i]);
    КонецЦикла;    
КонецПроцедуры
14 bodri
 
20.11.14
09:29
(12) Самописный отчет, УТП для Казахстана, платформа 8.2.16, Обычное приложение
(13) Это подошло бы если тип реквизита "Контрагенты" был бы справочник, а он "Список значений"
15 Amfiaray
 
20.11.14
09:32
(14) посмотри внимательно, тип реквизита список значений
16 Мимохожий Однако
 
20.11.14
09:33
Как вариант, сделать отдельную форму для подбора в список значений из формы списка справочника
17 Amfiaray
 
20.11.14
09:33
Реквизит1.Добавить(ЗначениеВыбора[i]) метода добавить нет у справочника
18 СвинТуз
 
20.11.14
09:37
отбор установить по этогруппа и иерархию отключить нет?
19 bodri
 
20.11.14
09:41
(17) здесь есть минус, из списка уже не удалить хотя бы одну строку
20 bodri
 
20.11.14
09:43
(16) я об этом подумывал, но, подумал, что должен быть другой способ, но скорей всего нету.
(18) не получится, ответ в (14)
21 Amfiaray
 
20.11.14
09:45
(19) не понял о чем ты
22 Amfiaray
 
20.11.14
09:45
ты хочеш чтобы у тебя было окно редактрования списка значений?
23 bodri
 
20.11.14
09:45
(22) Да
24 СвинТуз
 
20.11.14
09:51
(20) (22)
не ипи с утра мозк?
поставь СтандартнаяОбработка=Ложь;
и нарисуй себе свою форму в отчете
вместо общей "ФормаРаботыСоСпискомЗначений"
25 Amfiaray
 
20.11.14
09:51
(23) нарисуй отдельную форму для редактирования списка значений и открывай её при начале выбора
26 СвинТуз
 
20.11.14
09:53
иначе "Все. Кина не будет. Электричество кончилось." (С)
27 bodri
 
20.11.14
09:56
Всем спасибо, буду делать как в (16)(24)(25)