Имя: Пароль:
1C
 
Значение-числом, а представление строкой
,
0 Блондинка_
 
20.10.14
17:29
Добрый день! Что-то никак не могу разобраться, может упустила что-то. Есть справочник. В нем есть предопределенный элемент. И у него есть 3 варианта значения. Я хочу задать значение числом, а представление чтобы было в виде строки. В начале выбора использую процедуру
Если ЭтотОбъект.Ссылка = ЭлементМоегоСправочника
Тогда
        Варианты = Новый СписокЗначений;
        Варианты.Добавить(1, "Первое представление");
        Варианты.Добавить(2, "Второе представление");
        Варианты.Добавить(3, "Третье представление");
        ВыбранныйЭлемент = ВыбратьИзСписка(Варианты, Элемент, Варианты.НайтиПоЗначению(Элемент.Значение));
        Если ВыбранныйЭлемент <> Неопределено Тогда
            Элемент.Значение = ВыбранныйЭлемент.Значение;
        КонецЕсли;
        СтандартнаяОбработка = Ложь;
    КонецЕсли;

Все отлично, в поле выбора появляются заданные представления моих значений, но когда я выбираю что-то, в поле остается число. А можно сделать так, чтобы хранить в значении число, а представление все равно было бы строковым?
1 elCust
 
20.10.14
17:31
Отличная фотка.
2 elCust
 
20.10.14
17:35
Но у справочника должен быть код и наименование как минимум я полагаю. Вот и представление числа и строки. Нет?
3 Maxus43
 
20.10.14
17:39
Тип у Элемент.Значение какой?
4 Блондинка_
 
20.10.14
17:39
(1)  Спасибо)
У меня элемент справочника - это что-то вроде настройки. Наименование - значение этой настройки. Есть реквизит - значение (значение настройки соответственно). И вот для данной конкретной настройки есть значения на выбор. Но чтобы мне удобнее было их использовать в коде, для меня числа, а для пользователя - строковое выражение. И все это в реквизите "Значение". Но у элемента поле выбора нет представления((
5 Блондинка_
 
20.10.14
17:40
(3) Вообще у реквизита значение составной тип (число, строка и тп).
6 Maxus43
 
20.10.14
17:42
(5) элементу управления (полю выбора) можно в конфигураторе задать список доступных значений, в т.ч. и представление элементов из этого списка, может так легче будет?
7 elCust
 
20.10.14
17:42
(5) Расскажите поподробнее, может как по другому реализовать.
8 silent person
 
20.10.14
17:42
а нельзя для этого реквизита формы задать РежимВыбораИзСписка = Истина; и заполнить список выбора ?
9 Блондинка_
 
20.10.14
17:50
Мне нужно задавать список выбора только в одном пока что случае (только для одного элемента справочника), для всех остальных элементов значение устанавливается стандартно. Т.е. выходит в конфигураторе задавать доступные значения я не могу, иначе это будет действовать на все элементы.
10 palpetrovich
 
20.10.14
17:56
(9) "только для одного элемента справочника" - странненько как-то :)
"хочу задать значение числом" - а зачем собственно?  чем значение "Первое представление" не устраивает?
11 silent person
 
20.10.14
18:04
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    //Вставить содержимое обработчика
    Если Объект.Ссылка = Справочники.Справочник2.ЭтоОн Тогда
        Элементы.Реквизит1.РежимВыбораИзСписка = Истина;
        Элементы.Реквизит1.КнопкаСпискаВыбора = Истина;
        Элементы.Реквизит1.СписокВыбора.Добавить(1,"Первый");
        Элементы.Реквизит1.СписокВыбора.Добавить(2,"Второй");
        Элементы.Реквизит1.СписокВыбора.Добавить(3,"Третий");        
    КонецЕсли;
КонецПроцедуры