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

Как получить объект по ссылке в УФ?

Как получить объект по ссылке в УФ?
Я
   dwarfadelic
 
15.10.19 - 11:46
Реально надо. Есть на форме таблица с документами по текущему выбранному элементу. И есть блок где по этот документ редактировать или новый создавать и редактировать и потом сохранять. То есть по любому нужен реквизит ДокНорм типа справочникОбъект. Но как сделать чтобы загрузить в ДокНорм объект из таблицы документов по текущему (там ссылка на справочник)?

&НаКлиенте
Процедура ОткрытьДокументНормирования(_ДСЕ)    
    Если Элементы.ЭлементыНормирования.ТекущиеДанные<>Неопределено Тогда
        Если ЗначениеЗаполнено(Элементы.ЭлементыНормирования.ТекущиеДанные.Документ) Тогда             
             ДокументНормирования = _ПолучитьОбъект(Элементы.ЭлементыНормирования.ТекущиеДанные.Документ);            
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры


&НаСервере
Функция _ПолучитьОбъект(_Ссылка)
    Возврат _Ссылка.ПолучитьОбъект();
КонецФункции

Выдает ошибку. Как быть?
 
 
   vicof
 
1 - 15.10.19 - 11:48
вопрос нихрена не понял.
Тип ...Объект не доступен на клиенте
   dwarfadelic
 
2 - 15.10.19 - 11:53
Как из ссылке в текущей строке таблицы получить объект который будет отображаться в блоке редактирования ?
   Жан Пердежон
 
3 - 15.10.19 - 11:54
СправочникОбъект и ДокументОбъект
есть только на сервере
   vicof
 
4 - 15.10.19 - 11:55
Что значит отображаться в блоке редактирования?
   vicof
 
5 - 15.10.19 - 11:55
Открытьформу(), не?
   dwarfadelic
 
6 - 15.10.19 - 12:00
Там слева из дерева выбирается сборка потом в середине по этой сборке выбирается документ и справа блок редактирования этого элемента. А если открывать форму редактирования документа, то как ее запихнуть в страницуна текущей форме? Такое возможно ли?
   Жан Пердежон
 
7 - 15.10.19 - 12:05
(6) ну тогда ручками - получай нужные реквизиты документа при выборе и сохраняй их обратно в документ по кнопке (или что там у тебя)
   DrWatson
 
8 - 15.10.19 - 12:08
ЗначениеВРеквизитФормы(_Ссылка.ПолучитьОбъект(), "Объект")
   dwarfadelic
 
9 - 15.10.19 - 12:18
В смысле 

ЗначениеВРеквизитФормы(_ПолучитьОбъект(Элементы.ЭлементыНормирования.ТекущиеДанные.Документ), "ДокументНормирования");


 Ошибка при вызове метода контекста (_ПолучитьОбъект)
            ЗначениеВРеквизитФормы(_ПолучитьОбъект(Элементы.ЭлементыНормирования.ТекущиеДанные.Документ), "ДокументНормирования");
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
   mikecool
 
10 - 15.10.19 - 12:19
автор - у тебя есть ссылка, используй открытьформу и ключ = ссылка
   dwarfadelic
 
11 - 15.10.19 - 12:22
(8) А если напрямую получить объект нельзя :

Метод объекта не обнаружен (ПолучитьОбъект)
            ЗначениеВРеквизитФормы(Элементы.ЭлементыНормирования.ТекущиеДанные.Документ.ПолучитьОбъект(), "ДокументНормирования");
   dwarfadelic
 
12 - 15.10.19 - 12:23
(10) Мне не надо открывать новую форму мне нужно чтобы все в одной форме было
   mikecool
 
13 - 15.10.19 - 12:24
(12) варум?
   Кир Пластелинин
 
14 - 15.10.19 - 12:24
мне одному кажется, что это эпический ппц и рандомный перебор кода и всевозможных методов?
   mikecool
 
15 - 15.10.19 - 12:24
+13 создавай Н реквизитов формы по кол-ву реквизитов объекта, на сервере заполняй их , изменяй и сохраняй в объект
   mikecool
 
16 - 15.10.19 - 12:25
(14) я полх в терминах - это копрофагия или проктлогия? )
   Кир Пластелинин
 
17 - 15.10.19 - 12:27
(16) больше склоняюсь к проктологии со всеми "вытекающими"
   hhhh
 
18 - 15.10.19 - 12:47
ну так ведь часто делают. Например, поменять Статус документа. И делают как у ТС. Никто не делает ОткрытьФорму(), наоборот, они считают, что ОткрытьФорму - это проктология.
   dwarfadelic
 
19 - 15.10.19 - 12:56
разобрался


&НаСервере
Процедура _УстановитьДокументПоСсылке(_Ссылка)
    ЗначениеВРеквизитФормы(_Ссылка.ПолучитьОбъект(), "ДокументНормирования")
КонецПроцедуры
   dwarfadelic
 
20 - 15.10.19 - 12:57
(18) Если бы была возможность вставить форму внутрь формы в специальное окно как фрейм в делфи сам бы так сделал.

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