|
Работа функции ВыгрузитьПоПравилу | ☑ | ||
---|---|---|---|---|
0
NikePopov
26.11.12
✎
13:42
|
Добрый день.
Столкнулся по следующей проблемой: требуется выгрузить обеъект(элемент справочника) исходя из неких параметров. Описание задачи: Справочник "Получатели" содержит в себе и склады и контрагентов, при выгрузке требуется разделить и выгружать совершенно по разному. Попытка реализации: Создаю 3 ПКО: Получатели(оно используется везде для переадресации на другое ПКО), Получатели_Склады(если склад), Получатели_Контрагенты(если контрагент) Код(Обработчик ПриВыгрузкеОбъекта): СтандартнаяОбработка = Ложь; Если Источник.ТипПолучателя = Перечисления.ТипыПолучателей.Склад Тогда ВыгрузитьПоПравилу(Источник, Приемник, ВходящиеДанные, ИсходящиеДанные, "Получатели_Склады", УзелСсылки, Ложь); Иначе ВыгрузитьПоПравилу(Источник, Приемник, ВходящиеДанные, ИсходящиеДанные, "Получатели_Контрагенты", УзелСсылки, Ложь); КонецЕсли; Результат: Ошибка: Ошибка при выгрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(9751)}: Ошибка при вызове метода контекста (ЗаписатьКонецЭлемента): Не установлен приемник XML |
|||
1
Aleksey
26.11.12
✎
13:43
|
А что просто нельзя
ВыгрузитьПоПравилу(Источник, ,, , "Получатели_Контрагенты", , ); |
|||
2
NikePopov
26.11.12
✎
13:45
|
В этом случае потеряется ссылка на выгружаемый объект. Собственно смысл в том, что элемент справочника будет выгружаться из документа и затем возвращаться ссылкой в реквизит этого документа.
|
|||
3
Aleksey
26.11.12
✎
13:46
|
(2) Господи, а это то зачем? Открой для себя ИмяПКО
|
|||
4
NikePopov
26.11.12
✎
13:46
|
Точнее не модифицируется свойство контекста "Приемник"
|
|||
5
Aleksey
26.11.12
✎
13:46
|
Обработчики "Правила конвертации свойств"
Перед выгрузкой Условия возникновения события Событие выполняется перед выгрузкой значения свойства. Возможен отказ от выгрузки. УзелСвойства еще не создан, конвертируемое значение Неопределено. Параметры: ИмяПКО - имя правила конвертации, по которому производится преобразование значения свойства. Может быть выбрано в зависимости от каких-либо условий. |
|||
6
NikePopov
26.11.12
✎
13:47
|
Вот об этом то я и не подумал. Огромное спасибо!
|
|||
7
Aleksey
26.11.12
✎
13:47
|
Если Источник.ТипПолучателя = Перечисления.ТипыПолучателей.Склад Тогда
ИмяПКО=Получатели_Склады"; Иначе ИмяПКО="Получатели_Контрагенты"; КонецЕсли; А дальше конверташка сама все сделает |
|||
8
NikePopov
26.11.12
✎
13:47
|
Мой вопрос решен. Благодарю.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |