Имя: Пароль:
1C
1С v8
Получить реквизит из составного реквизита
,
0 Kertis138
 
23.09.18
15:36
Здравствуйте!

У меня есть реквизит Заказ, который имеет состовной тип:
-ДокументСсылка.ЗаказПокупателя
-ДокументСсылка.ЗаказПоставщику

В обоих типах есть реквизит Договор.

Я хочу получить Договор, если Заказ принимает только первый тип.
Пишу:

Если ТипЗнч(Объект.Заказ) = Тип("ДокументСсылка.ЗаказПокупателя")
Тогда
    Значение = Объект.Заказ.Договор;
КонецЕсли;

Но Договора в Заказе нет. И вообще никаких реквизитов нет. Что я делаю не так?
1 Amra
 
23.09.18
15:39
Упрформы, а получаешь на клиенте? Или это КД2, то в каком месте этот код?
2 rphosts
 
23.09.18
15:39
(0) как ты решил что нет реквизитов? Контекст клиентский?
3 Kertis138
 
23.09.18
15:49
(1) Это в Документе - расходная накладная, процедура ПриОткрытии на клиенте
4 Kertis138
 
23.09.18
15:50
(2) Пишет, что переменная не найдена. При отладке Объект.Заказ определяет, что это ДокументСсылка.ЗаказПокупателя, но почему то реквизит не подтягивает
5 fenement
 
23.09.18
15:58
Если это УФ, то попробуй получить этот реквизит в процедуре "ПриСозданииНаСервере".
Или , если и процедуры ПриОткрытии, то сделай отдельную функцию на сервере, в которой ты будешь получать это значение. При этом "Договор" добавь в реквизиты формы.

P.S. ты уверен , что реквизит "Заказ" на момент получения данных не пустой? Может он позже заполнятся уже после твоих попыток получить значение?
6 Kertis138
 
23.09.18
16:05
(5) Да, помогло при вынесении кода в процедуру &НаСервере.
Спасибо!
7 rphosts
 
23.09.18
16:10
(3) гы-гы-гы! За реквизитами иди на сервер!
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.