Имя: Пароль:
1C
1С v8
Программное заполнение поля формы
,
0 strruslan
 
10.02.16
16:39
в модуле формы документа

&НаКлиенте
Процедура СпособПриобретенияПриИзменении(Элемент)
    
    Если Строка(Элементы.СпособПриобретения) = "Покупка" Тогда
        Элементы.Описание = "бла бла бла";
    КонецЕсли;
    
КонецПроцедуры

данный код категорически отказывается работать - не пойму почему?

СпособПриобретения - переключатель
Описание - текст. поле ввода
1 Cyberhawk
 
10.02.16
16:40
Почему ты думаешь что код не работает?
2 Mort
 
10.02.16
16:40
Доипался до элементов как пьяный до радио.
3 Mort
 
10.02.16
16:40
Если Строка(СпособПриобретения) = "Покупка" Тогда
        Описание = "бла бла бла";
    КонецЕсли;
4 igork1966
 
10.02.16
16:42
(0) Элементы - это коллекция вообще-то
5 igork1966
 
10.02.16
16:44
(4) + коллекция элементов формы...
а значения в реквизитах или по указанному пути к данным
6 strruslan
 
10.02.16
16:47
(3)
так не работает - ругается что СпособПриобретения не определен
7 igork1966
 
10.02.16
16:51
(6) Телепат думает что Объект.СпособПриобретения
и Объект.Описание

а там фиг знает что у тебя за элементы формы
8 strruslan
 
10.02.16
16:53
(7) и в объекте и в форме именно они - одноименные
9 igork1966
 
10.02.16
16:53
(7) + в предположении что у тебя УФ
10 strruslan
 
10.02.16
16:56
(9) если уф - упр форма - то да именно она
11 HardBall
 
10.02.16
17:28
Атладчик не предлагали?
12 Kamelot
 
10.02.16
17:32
СпособПриобретения - в свойствах в поле "данные" что указано?
13 strruslan
 
10.02.16
17:44
(12) перечисление
14 strruslan
 
10.02.16
17:47
(11) вот сие тоже частично работает:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    // Вставить содержимое обработчика.
    ЭтотОбъект.Объект.СпособПриобретения = "Покупка"; - значение по умолч не присваивается
    ЭтотОбъект.Объект.Описание = "куеуцек"; - присваивается
КонецПроцедуры
15 strruslan
 
10.02.16
17:50
(12) Реквизит СпособПриобретения а его тип ПеречислениеСсылка.ВидПриобретения
16 Kamelot
 
10.02.16
17:58
ПеречислениеСсылка.ВидПриобретения = "Покупка" - значение по умолч не присваивается.

в поле с типом ПеречислениеСсылка.ВидПриобретения нельзя записать значение типа строка

ПеречислениеСсылка.ВидПриобретения = ПредопределенноеЗначение("Перечисление.ВидПриобретения.Покупка");

а вот так можно.

тут даже не в 1С дело а в базовых знания программирования.
17 strruslan
 
10.02.16
20:24
(16) спасибо. да теперь знач. по умолч. шикарно работает

строку присваивал ибо не знал о существовании ПредопределенноеЗначение() и рассчитывал на то что 1с зная тип данных объекта сам все преобразует - не суть

и с основной проблемой разобрался)

    Если Строка(ЭтотОбъект.Объект.СпособПриобретения) = ПредопределенноеЗначение("Перечисление.ВидПриобретения.Покупка") Тогда
        ЭтотОбъект.Объект.Описание = "Приобретено основное средство";
18 strruslan
 
10.02.16
20:26
(17) очепятка
Если ЭтотОбъект.Объект.СпособПриобретения = ПредопределенноеЗначение("Перечисление.ВидПриобретения.Покупка") Тогда
        ЭтотОбъект.Объект.Описание = "Приобретено основное средство";
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан