|   |   | 
| 
 | Программная запись в реквизит формы | ☑ | ||
|---|---|---|---|---|
| 0
    
        AlexToo 29.06.16✎ 08:17 | 
        Добрый день, конфа 1C:CRM, редакция 2.0 , управляемые формы, ПриСозданииФормыНаСервере добавляю в форму новый реквизит и поле ввода для него вот так:
 //Добавляем реквизит нРеквизиты = Новый Массив; Реквизит = Новый РеквизитФормы("ОписаниеПредыдущихСобытий", Новый ОписаниеТипов("Строка"), , "Описание предыдущих событий", Истина); нРеквизиты.Добавить(Реквизит); Форма.ИзменитьРеквизиты(нРеквизиты); //Добавляем поле ввода Элемент = Форма.Элементы.Добавить("ОписаниеПредыдущихСобытий", Тип("ПолеФормы"), Форма.Элементы.ГруппаКонтактнаяИнформация); Элемент.Вид = ВидПоляФормы.ПолеВвода; Элемент.заголовок="Описание предыдущих событий"; Элемент.многострочныйРежим=Истина; Элемент.ПутьКДанным = "ОписаниеПредыдущихСобытий"; Форма.Элементы.Комментарий.Высота=3; Форма.Элементы.Комментарий.многострочныйРежим=истина; Затем в процедуре ПриОткрытии формы в этот реквизит надо записать некоторый текст, сохранять его не нужно, просто информативный характер, что бы описание предыдущих событий высвечивалось в форме при ее открытии. Но проблема в том, что при попытке записать в этот реквизит текст пишет, что поле недоступно для записи. как правильно в реквизит формы записать значение? | |||
| 1
    
        Рэйв 29.06.16✎ 08:23 | 
        (0)А в конфигураторе не проще было его добавить и не заморачиваться?     | |||
| 2
    
        AlexToo 29.06.16✎ 08:24 | 
        (1) нет, к сожалению. Так бы давно в конфигураторе добавил. Но есть свои заморочки.     | |||
| 3
    
        Рэйв 29.06.16✎ 08:27 | 
        (2)Наверное у меня плохо с фантазией.Не могу себе представить заморочку пи которой нельзя добавить реквизит на форму если все равно она правится в конфигураторе в модуле.
 Может озвучишь?:-) | |||
| 4
    
        AlexToo 29.06.16✎ 08:27 | 
        Пытаюсь записать вот так:
 ПриОткрытии .... если не Параметры.Ключ.Пустая() тогда описание=ПолучитьОписанияСобытий(Объект.Ссылка); Элементы.ОписаниеПредыдущихСобытий=описание; КонецЕсли; и выходит ошибка: {Справочник.Партнеры.Форма.CRM_ФормаЭлемента1.Форма(3276)}: Поле объекта недоступно для записи (ОписаниеПредыдущихСобытий) Элементы.ОписаниеПредыдущихСобытий=описание; | |||
| 5
    
        AlexToo 29.06.16✎ 08:28 | 
        (3) на форме куда я добавлю реквизит, типовые реквизиты, так же создаются программно, мне надо что бы мой реквизит в форме располагался после них. Поэтому если я добавлю в конфигураторе свой реквизит он будет располагаться выше, тех реквизитов которые создадутся программно.     | |||
| 6
    
        Рэйв 29.06.16✎ 08:29 | 
        (5)Жестоко:-)     | |||
| 7
    
        hhhh 29.06.16✎ 08:30 | 
        (2) записывать нужно в ПриСозданииНаСервере. Зачем в ПриОткрытии?     | |||
| 8
    
        Рэйв 29.06.16✎ 08:30 | 
        (4)Тогда уж не 
 Элементы.ОписаниеПредыдущихСобытий=описание; а ЭтаФорма.ОписаниеПредыдущихСобытий=описание; | |||
| 9
    
        Рэйв 29.06.16✎ 08:31 | 
        +(8)ты пытаешься напрямую писать в элемент.Правильно тебя шлет     | |||
| 10
    
        Рэйв 29.06.16✎ 08:31 | 
        +(8)Или попробуй
 Элементы.ОписаниеПредыдущихСобытий.Значение=описание; | |||
| 11
    
        AlexToo 29.06.16✎ 08:32 | 
        (8) спасибо, помогло!     | |||
| 12
    
        aleks_default 29.06.16✎ 09:18 | 
        (10) в УФ Значения нет.     | |||
| 13
    
        spiteful41 29.06.16✎ 09:44 | 
        (0) Для таких целей можно было декорацию-надпись добавить и все.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |