Имя: Пароль:
1C
1C 7.7
v7: Подбор по видам перечисления
0 MaxStarkov
 
05.08.11
12:21
Есть внешняя обработка, на форме обработки есть таблица значений. Некоторые строки таблицы в определенной колонке имеют тип Перечисление. Как можно при щелчке мышкой по данному значению, которое имеет тип Перечисление, вызвать окно или список с выбором вида перечисления?

С подбором счетов, справочников - все понятно и все работает. А как все же можно получить в отдельном окне или списке перечень видов определенного перечисления и дать пользователю возможность выбрать новое значение?
1 Buster007
 
05.08.11
12:24
в чем проблема?
2 Fram
 
05.08.11
12:26
А штатный список выбора не устраивает?
3 MaxStarkov
 
05.08.11
12:33
Наверное плохо объяснил проблему. Для подбора значений счетов и элементов справочника пользуюсь методом ОткрытьПодбор(), но этот метод не позволяет открыть подбор по видам перечисления. А вот такой подбор мне как раз и нужен.
4 MaxStarkov
 
05.08.11
12:40
Ошибся! Случайно запостил тему в раздел v8! Вопрос по v7
5 Rie
 
05.08.11
12:46
(3) Нет подбора по перечислению. Но можно построить список его элементов - и предложить пользователю выбрать нужное.
6 MaxStarkov
 
05.08.11
12:50
Да, вот именно это и хочу сделать. Но как построить список и дать пользователю возможность выбирать из него?
7 ДенисЧ
 
05.08.11
12:52
Создать список значений (умеешь?)
Добавить в него нужные значения перечисления (умеешь?)
Потом в ПриНачалеВыбораЗначения() сказать твойСписок.ВыбратьЗначение()
8 Cthulhu
 
05.08.11
13:06
Функция ВыбПеречислениеПоВиду(ВидПеречисления)
   Перем ВыбСЗ,тВыб,тНом,тЗнач,тОбъект;
   Если Метаданные.Перечисление(ВидПеречисления).Выбран()=1 Тогда
       тОбъект=Перечисление.ПолучитьАтрибут(ВидПеречисления); ВыбСЗ=СоздатьОбъект("СписокЗначений");
       Для тНом=1 По тОбъект.КоличествоЗначений() Цикл ВыбСЗ.ДобавитьЗначение(тОбъект.ЗначениеПоНомеру(тНом)) КонецЦикла;
       Если ВыбСЗ.РазмерСписка()>0 Тогда Если ВыбСЗ.ВыбратьЗначение(тВыб,,,11,1)=1 Тогда тЗнач=тВыб КонецЕсли КонецЕсли;
   КонецЕсли; Возврат(тЗнач);
КонецФункции //ВыбПеречислениеПоВиду
9 MaxStarkov
 
05.08.11
13:08
Со списком значений все понятно. Как его открыть для выбора пользователю?
10 MaxStarkov
 
05.08.11
13:11
Понял, спасибо!
11 ДенисЧ
 
05.08.11
13:11
(9) последняя строка в (7)