|   |   | 
| 
 | программно задать значение перечисления исходя из выбора значения другого перечисления | ☑ | ||
|---|---|---|---|---|
| 0
    
        BazCATilio 10.05.20✎ 21:11 | 
        всем привет!
 ситуация следующая: на форме два реквизита - наименование и вид. у обоих тип перечисление. как программно сделать так, чтобы при выборе, того или иного наименования автоматически подтягивался нужный вид. простыми словами, чтобы выбрал наименование и как следствие нужный вид. создал процедуру при изменении наименования: &НаКлиенте Процедура НаименованиеПриИзменении(Элемент) Если ЭтаФорма.Элементы.Наименование = "НематериальныеАктивы" Тогда ЭтаФорма.Элементы.ВидАктива = Перечисления.ВидыАктивов.Внеоборотные; // тут хз как писать КонецЕсли КонецПроцедуры подскажите, пожалуйста, куда копать p.s. мб что посоветуете годного почитать и т.д. | |||
| 1
    
        runoff_runoff 10.05.20✎ 21:24 | 
        попкорн     | |||
| 2
    
        Chameleon1980 10.05.20✎ 21:24 | 
        и я хз, как писать. условия не описаны     | |||
| 3
    
        LienXo 10.05.20✎ 21:28 | 
        Ну если "НаКлиенте" то как минимум "ПредопределенноеЗначение("Перечисление...")     | |||
| 4
    
        BazCATilio 10.05.20✎ 21:46 | 
        (2) к примеру, если наименование = "ОсновныеСредства" Тогда вид ="внеоборотные";
 если наименование = "Запасы" Тогда вид ="Оборотные"; | |||
| 5
    
        Chameleon1980 10.05.20✎ 22:01 | 
        а зачем по наименованию?
 сравнивай реквизит формы со значением перечисления через предопределенноезначение к реквизиту формы обратись просто по имени | |||
| 6
    
        LienXo 10.05.20✎ 22:05 | 
        И обрати внимание, что на сервере:
 а = перечислениЯ. на клиенте: а = предопределенноезначение("перечислениЕ | |||
| 7
    
        Chameleon1980 10.05.20✎ 22:05 | 
        (6) конфигуратор подскажет     | |||
| 8
    
        LienXo 10.05.20✎ 22:06 | 
        (7) если умеешь пользоваться... Хмм, (1) был прав... и пива :)     | |||
| 9
    
        BazCATilio 10.05.20✎ 22:17 | 
        (5) по имени если пишу ругался.
 вот так написал: Если ЭтаФорма.Элементы.Наименование = ПредопределенноеЗначение("Перечисление.НаименованияАктивов.НематериальныеАктивы") Тогда ЭтаФорма.Элементы.ВидАктива = ПредопределенноеЗначение("Перечисление.ВидыАктивов.Внеоборотные"); КонецЕсли | |||
| 10
    
        BazCATilio 10.05.20✎ 22:18 | 
        (6) спасибо     | |||
| 11
    
        BazCATilio 10.05.20✎ 22:19 | 
        но че-то все-равно не работает.
 туплю | |||
| 12
    
        LienXo 10.05.20✎ 22:23 | 
        Или
 ВидАктива = ПредопределенноеЗначение("Перечисление.ВидыАктивов.Внеоборотные"); или Объект.ВидАктива = ПредопределенноеЗначение("Перечисление.ВидыАктивов.Внеоборотные"); | |||
| 13
    
        Chameleon1980 10.05.20✎ 22:27 | 
        это у тебя обработка?
 перечисление реквизит обработки? основной реквизит формы обьект? тогда через обьект. видактивп | |||
| 14
    
        Chameleon1980 10.05.20✎ 22:28 | 
        поищи в дереве реквизитов и обратись     | |||
| 15
    
        BazCATilio 10.05.20✎ 22:35 | 
        всем большое спасибо!
 через объект заработало | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |