|
Помогите разобраться с УФ | ☑ | ||
---|---|---|---|---|
0
WaLeRa
06.08.19
✎
06:54
|
Доброго всем времени суток!
Создал внеш. обработку, добавил две формы, одну основную, вторую произвольную и на нее добавил поле Календарь путь данным Объект.Календарь (СпрСсылка.Календари). 1. Из основной вызываю произвольную и в поле Календарь выбираю значение, далее закрываю произв. форму и проверяю значение Объект.Календарь в основной, оно пустое. Почему? 2. Принудительно присваиваю значение Объект.Календарь в основной, проверяю что установилось, открываю произв. форму, но значение не выбрано. Оно же ссылается на Объект.Календарь что не так? P.S. с реквизитами формы работал, ЗначениеВРеквизитФормы и РеквизитФормыВЗначение понимаю для чего нужны, но с Объектом не могу понять как это применять |
|||
1
Mankubus
06.08.19
✎
07:31
|
||||
2
Пробел
06.08.19
✎
08:06
|
Тип вашего объекта "ВнешняяОбработкаОбъект". Но если Вы посмотрите отладчиком в любой из форм, то увидите, что у объекта будет тип "ДанныеФормыСтруктура".
Управляемая форма не работает с объектом напрямую. Каждый раз при создании новой формы, создается, грубо говоря, отражение объекта. Причем разные отражения одного объекта независимы друг от друга. Поскольку для внешней обработки невозможно записать объект, нужно изобретать (или погуглить) способы передачи данных из одной формы на другую. |
|||
3
Провинциальный 1сник
06.08.19
✎
08:09
|
Реквизит объекта (обработки) можно использовать
|
|||
4
WaLeRa
06.08.19
✎
08:28
|
(2) прочитал и охренел, спасибо
(3) пример можно пожалуйста? |
|||
5
catena
06.08.19
✎
08:32
|
(4)О чем пример? Сделай реквизит обработки и используй его во всех формах.
|
|||
6
WaLeRa
06.08.19
✎
08:35
|
(5) так в (0) написано что сделал Объект.Календарь реквизит Календарь
|
|||
7
hhhh
06.08.19
✎
08:41
|
(6) ну, во вторую форму календарь передал, а обратно забыл передать.
|
|||
8
WaLeRa
06.08.19
✎
08:52
|
(7) это я уже понял, спасибо, в (2) написали про записать объект если бы это был док или справочник, насколько это правильно? ведь пользователь может отказаться от сохранения изменений а данные уже записаны с целью передачи параметра в другую форму...
|
|||
9
Mankubus
06.08.19
✎
08:55
|
(8) в (1) я скинул ссылку на пример
//На первой форме П = Новый Структура("Параметр1", Объект.Ссылка); ОткрытьФорму("Документ.Судебный.Форма.Форма",П, ЭтаФорма); //На второй форме &;НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Переменная = Параметры.П.Параметр1; КонецПроцедуры что не понятно? |
|||
10
WaLeRa
06.08.19
✎
09:02
|
(9) это я уже понял и применил, спасибо, вопрос только в записи объекта в (8) написано
|
|||
11
Пробел
06.08.19
✎
09:06
|
(8) Это неправильно, лучше передавать данные из формы в форму.
Самый простой способ как по мне, это: //на первой форме &НаКлиенте Процедура ОткрытьФорму2(Команда) Ф2 = ПолучитьФорму("ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма2",, ЭтаФорма); ЗаполнитьЗначенияСвойств(Ф2.Объект, Объект); ф2.Открыть(); КонецПроцедуры //на второй форме &НаКлиенте Процедура ПриЗакрытии(ЗавершениеРаботы) ЗаполнитьЗначенияСвойств(ВладелецФормы.Объект, Объект); КонецПроцедуры |
|||
12
WaLeRa
06.08.19
✎
09:41
|
(11) Благодарю, все получилось!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |