Подскажите пожалуйста, делаю правила обмена КА - БП, как подтянуть номер заказа из источника?

1. user973528 16.04.19 14:14 Сейчас в теме
Делаю правила обмена
При поиске договора контрагента после загрузки документа реализации вываливается ошибка на присвоении номера договору

Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1274)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта
    ИмяПКО                 =  РеализацияТоваровУслуг
    ТипОбъекта             =  Реализация (акт, накладная)
    Объект                 =  Реализация (акт, накладная) 0МУМ-000021 от 10.04.2019 13:40:30
    Обработчик             =  ПослеЗагрузкиОбъекта
    ОписаниеОшибки         =  Значение не является значением объектного типа (ЗаказКлиента)
    ПозицияМодуля          =  (22)
    КодСообщения           =  21
Показать


Написал вот этот в обработчике после загрузки

А.Наименование = "Основной договор № " + Лев(Прав(Источник.ЗаказКлиента.Номер,4),8)

Ругается на Источник
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Agrhh 16.04.19 20:07 Сейчас в теме
А.Наименование = "Основной договор № " + Лев(Прав(Источник.ЗаказКлиента.Номер,4),8)

Источник - это какой другой документ/справочник? Или это и есть "ЗаказКлиента"? Если это "ЗаказКлиента тогда" попробуй так
А.Наименование = "Основной договор № " + Лев(Прав(Источник.Номер,4),8) 

ругается что не может найти такого объекта "ЗаказКлиента"
 ОписаниеОшибки         =  Значение не является значением объектного типа (ЗаказКлиента)
3. user973528 17.04.19 10:13 Сейчас в теме
(2) Здравствуйте. Гружу документ РеализацияТоваровУслуг, в источнике на форме документа есть Объект.ЗаказКлиента, где имеется ссылка на документ заказа. Мне нужно в приемник передать номер этого Заказа Клиента чтобы присвоить его договору.
4. Agrhh 17.04.19 10:33 Сейчас в теме
Конвертация данных? Перед выгрузкой занесите данные в ИсходящиеДанные (Структура) и после этого выгрузите по правилу.
Это делается в ПВД: Перед выгрузкой
Пример:
ИсходящиеДанные = Новый Структура();
ИсходящиеДанные.Вставить("Номер", Объект.ЗаказКлиента.Номер);
ИсходящиеДанные.Вставить("Наименование", "Договор №" + Объект.ЗаказКлиента.Номер);
ВыгрузитьПоПравилу(,,ИсходящиеДанные,,"ДоговорКонтрагента");


В ПКО создате только Приемник (Пример: ДоговорКонтрагента) и добавляете ПКС: Номер, Наименование. Отмечаешь флажком "Получить из входящих данных"
5. user973528 17.04.19 10:43 Сейчас в теме
(4) А после выгрузки нужно вписывать что то?
6. Agrhh 17.04.19 10:47 Сейчас в теме
Нет, это получается что ты уже данные раскидал перед выгрузкой по реквизитом.
7. plevakin 17.04.19 10:52 Сейчас в теме
Ругается на Источник

После загрузки нет Источника, есть Объект.

Нужно написать

А.Наименование = "Основной договор № " + Лев(Прав(Объект.ЗаказКлиента.Номер,4),8)

Но в реализации, это поле может быть не заполнено, поэтому лучше добавить проверку

Если ЗначениеЗаполнено(Объект.ЗаказКлиента) Тогда...
Оставьте свое сообщение

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