Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

УстановитьСсылкуНового в управляемой форме.

УстановитьСсылкуНового в управляемой форме.
Я
   Dionisious
 
05.01.13 - 12:19
Помогите пожалуйста. Уже весь мозг сломал. Как пользоваться методом УстановитьСсылкуНового в управлемой форме.

Так не работает:

&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
   
   Узел = РеквизитФормыВЗначение("Объект");
   
   Если Узел.ЭтоНовый() Тогда
       Узел.УстановитьСсылкуНового(ПланыОбмена.Полный.ПолучитьСсылку());
       Ссылка = Узел.ПолучитьСсылкуНового();
   Иначе
       Ссылка = Узел.Ссылка;
   КонецЕсли;
   
   НаборЗаписей = РеквизитФормыВЗначение("ПараметрыОбмена");
   
   Для каждого Запись Из НаборЗаписей Цикл
       
       Запись.Узел = Ссылка;
       
   КонецЦикла;
   
   НаборЗаписей.Записать();
   
   ЗначениеВРеквизитФормы(Узел,"Объект");
   
КонецПроцедуры


Собственно форма узла плана обмена. На нем НаборЗаписей связанного регистра сведений. При записи код отрабатывает но в регистр сведений пишет ссылку на "Объект не найден". Ну в общем не ту ссылку пишет.

Это читал: v8: УстановитьСсылкуНового() и по ссылкам переходил.

Вроде уже все перенес в ПередЗаписьюНаСервере но что то не помогает.

Заранее всем спасибо.
 
 
   acsent
 
1 - 05.01.13 - 12:43
там же есть текущийобъект
   Dionisious
 
2 - 05.01.13 - 12:57
(1) Что это?
   Dionisious
 
3 - 05.01.13 - 13:23
Неужели ни кто не знает? Или ни кто не работает?
   Defender aka LINN
 
4 - 05.01.13 - 13:41
(2) СП знает
(3) Тебе уже ответили
   Dionisious
 
5 - 05.01.13 - 13:59
(4) Точно. Вот я слепой то блин. Спасибо огромное.

Вот так заработало:

&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    
    НаборЗаписей = РеквизитФормыВЗначение("ПараметрыОбмена");
    
    Для каждого Запись Из НаборЗаписей Цикл
        
        Если ТекущийОбъект.ЭтоНовый() Тогда
            Запись.Узел = ТекущийОбъект.ПолучитьСсылкуНового();
        Иначе
            Запись.Узел = ТекущийОбъект.Ссылка;
        КонецЕсли;
        
    КонецЦикла;
    
    НаборЗаписей.Записать();
    
КонецПроцедуры

&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    
    Если ТекущийОбъект.ЭтоНовый() Тогда
        ТекущийОбъект.УстановитьСсылкуНового(ПланыОбмена.Полный.ПолучитьСсылку());
    КонецЕсли;
    
КонецПроцедуры


Можно конечно все сделать в ПередЗаписьюНаСервере но почему то так кажется методологически правильнее.
   Defender aka LINN
 
6 - 06.01.13 - 10:56
(5) Ащета в ПриЗаписи объект уже записан

Список тем форума
Рекламное место пустует  Рекламное место пустует
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует