Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
25 ноя 2024, 06:07

Как добавить созданный реквизит во внешнюю обработку?

Автор vienya, 08 мая 2024, 18:14

0 Пользователей и 1 гость просматривают эту тему.

Максим75

vienya, еще раз:
вначале программно добавляется реквизит (формы).
потом на форму добавляется элемент и связывается с реквизитом.
Вы дали код, в котором добавляется только элемент, вот и спросил, где реквизит то добавляете?

Даже в той инструкции, какой Вы пользовались, вначале создается реквизит формы, а уже потом элемент связанный с этим реквизитом.

Afinogen

vienya, вы сам объект в форме что у вас на принскрине добавьте в расширение

то есть ваши действия с нуля должны были быть такими

1.  добавляете в расширение документ
2. добавляете реквизит в расширении
3. реквизит формы "Объект" ТОЖЕ добавляете в расширение

Afinogen

вам надо  просто  клацнуть правой кнопкой по реквизиту формы "Объект"

vienya

Afinogen, спасибо, может быть я что-то не понимаю?
1. Добавил в расширение ФормаПодписиТовары (Объект возникает в документах, а это не документ) (на рисунке цифра 1)
2. добавил в расширение реквизит (цифра 2)
3. ПКМ Объект - его нет. (Цифра 3) Поэтому ПКМ Инициатор1, потом на форму (Цифры 4-5)

С документами на Объекте всё работает без кода в модуле формы. Но у меня это не документ, Объекта нет.

Максим75 , спасибо за совет, как сказали программно добавил реквизит (формы). Не прокатило, но может быть я что-то не так делаю?

   &После("ПриСозданииНаСервере")
   Процедура доп_ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 
         
ДобавляемыеРеквизиты = Новый Массив;
ТипРеквизита = Новый ОписаниеТипов("Строка"); //Ссылка?
НовыйРеквизит = Новый РеквизитФормы(
"Инициатор1",     //Имя реквизита формы
ТипРеквизита,     //Тип
"",               //Путь  (Пусто, "Объект.Инициатор1", ИмяТЧ)
"Инициатор1");    //Заголовок
ЭтаФорма.ИзменитьРеквизиты(ДобавляемыеРеквизиты);  //Заставляем форму создать новые реквизиты
   
                //Вывод реквизита на форму
        НовыйЭлемент = Элементы.Добавить("Инициатор1", Тип("ПолеФормы"));
                НовыйЭлемент.ПутьКДанным                = "Инициатор1"; //отличие Объект.
                НовыйЭлемент.Вид                        = ВидПоляФормы.ПолеВвода;

                НовыйЭлемент.ТолькоПросмотр             = Истина;
                НовыйЭлемент.Видимость                  = Истина;
                НовыйЭлемент.Доступность                = Истина;
   
    Элементы. Инициатор1.УстановитьДействие("ПриИзменении", "Инициатор1")
   КонецПроцедуры

antoneus

То есть вы добавили в формы документа произвольную форму, не связанную с объектом документа, на этой форме создали реквизит, тоже ни с чем не связанный и хотите, чтобы он у вас где-то сохранялся?

vienya

antoneus, потому что это не реквизит объекта. Иначе я бы писал Объект.Инициатор11. Это реквизит формы, поэтому и пытаюсь добавить его программно. На формах документов всё делается без кода, а мне нужно в форму подписей добавить.



antoneus


Похожие темы (5)

Рейтинг@Mail.ru

Поиск