Значение реквизита обработки в контексте разных её форм

1. Evgeniia_S 01.02.21 16:31 Сейчас в теме
Здравствуйте!
У обработки есть несколько форм, в том числе основная форма.
У объекта обработки есть реквизиты.
Я заполняю эти реквизиты при создании на сервере основной формы. В отладчике вижу, что они заполнены.

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 
     ОбъектОбработки = РеквизитФормыВЗначение("Объект");
     Объект.ИмяФайлаЗвукКорректный =  ОбъектОбработки.ПолучитьАдресФайла("ЗвукКорректный"); 
     //здесь успешно присвоилась строка
КонецПроцедуры


Когда из основной формы открываю другую форму, то в отладчике вижу, что реквизиты объекта обработки не заполнены.

Извините, если вопрос простой, я сейчас пытаюсь избавиться от дублирования функций на формах обработки и заполнить главное в реквизите самой обработки, а оно не сохраняет значение почему-то.
native-api; +1 Ответить
По теме из базы знаний
Найденные решения
13. Evgeniia_S 01.02.21 17:45 Сейчас в теме
(12)
Как итог я передала в параметрах

ПараметрыОткрытияФормы = Новый Структура("Объект", Объект);
ОткрытьФорму("Обработка.УпаковкаЗаказа.Форма.ФормаСборка",ПараметрыОткрытияФормы,ЭтаФорма , , , ,Оповещение,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);


а в ФормаСборка уже при оздании на сервере
КопироватьДанныеФормы(Параметры.Объект, ЭтаФорма.Объект)


Копировать данные формы на стороне родителя не получилось. Может, т.к. я работаю через описание оповещения
user1050439; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. succub1_5 89 01.02.21 16:41 Сейчас в теме
(1)Это УФ? Форма - ПрисозданииНаСервере итак &НаСервере, реквизит же не формы? Зачем
ОбъектОбработки = РеквизитФормыВЗначение("Объект");
     Объект.ИмяФайлаЗвукКорректный =  ОбъектОбработки.ПолучитьАдресФайла("ЗвукКорректный");
?
5. Evgeniia_S 01.02.21 16:46 Сейчас в теме
(2)
УФ. ПолучитьАдресФайла - процедура модуля обработки. Поэтому обращение к ОбъектОбработки, полученному через РеквизитФормыВЗначение. Значение я успешно получила.
А результат пишу в реквизит объекта, который должен быть доступен во всех формах
6. SlavaKron 01.02.21 16:51 Сейчас в теме
(5)
должен быть доступен во всех формах
Придется копировать Объект основной формы в Объект открываемой формы:
КопироватьДанныеФормы(Объект, ОткрываемаяФорма.Объект);
native-api; +1 Ответить
7. Evgeniia_S 01.02.21 16:54 Сейчас в теме
(6)
Спасибо!
А лучше КопироватьДанныеФормы или просто передать объект в параметрах открытия формы?
8. SlavaKron 01.02.21 16:56 Сейчас в теме
(7) Данные формы в параметрах передать не получится.
native-api; +1 Ответить
10. vadim.semyonov.rzn 01.02.21 16:59 Сейчас в теме
(1) Вы забыли провести обратную операцию - ЗначениеВРеквизитФормы (ValueToFormAttribute).
native-api; +1 Ответить
11. Evgeniia_S 01.02.21 17:15 Сейчас в теме
(10)
Не поняла, как это поможет транслировать информацию из одной формы в другую форму. На основной форме реквизиты успешно заполнились. Применение ЗначениеВРеквизитФормы мне не помогло, у новой формы новый экзеспляр реквизита Объект.
3. SlavaKron 01.02.21 16:44 Сейчас в теме
Сколько форм, столько будет экземпляров реквизитов формы "Объект". А ОбъектОбработки вообще живёт только 1 серверный вызов.
native-api; Sashares; +2 Ответить
4. tkv44 01.02.21 16:45 Сейчас в теме
Нет, так не получится. Нужно транслировать объект в новую форму.
9. Evgeniia_S 01.02.21 16:57 Сейчас в теме
(4)
Спасибо, да, я уже поняла, не очень удобно. Зачем же тогда нам общие реквизиты обработки, если существуют индивидуальные реквизиты каждой формы.
12. SlavaKron 01.02.21 17:18 Сейчас в теме
(9)
Зачем же тогда нам общие реквизиты обработки
В этой теме искали ответ на этот вопрос: https://forum.infostart.ru/forum9/topic227997/
Я думаю, это наследие обычных форм.
native-api; +1 Ответить
13. Evgeniia_S 01.02.21 17:45 Сейчас в теме
(12)
Как итог я передала в параметрах

ПараметрыОткрытияФормы = Новый Структура("Объект", Объект);
ОткрытьФорму("Обработка.УпаковкаЗаказа.Форма.ФормаСборка",ПараметрыОткрытияФормы,ЭтаФорма , , , ,Оповещение,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);


а в ФормаСборка уже при оздании на сервере
КопироватьДанныеФормы(Параметры.Объект, ЭтаФорма.Объект)


Копировать данные формы на стороне родителя не получилось. Может, т.к. я работаю через описание оповещения
user1050439; +1 Ответить
14. Evgeniia_S 01.02.21 18:16 Сейчас в теме
В моем случае, как оказалось, всё было доступно в ЭтаФорма.ВладелецФормы.Объект
user738935; native-api; +2 Ответить
15. user738935 10.04.24 18:20 Сейчас в теме
(14) Столкнулся с такой же проблемой. Действительно, очень странно, что при открытии другой формы одного и того же объекта, реквизиты самого объекта не видны из открываемой другой формы ...
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот