Создание нескольких выходных узлов из области одного входного узла в визуальной карте Biztalk

#xml #xslt #maps #schema #biztalk

#xml #xslt #Карты #схема #biztalk

Вопрос:

Моя проблема заключается в следующем:

В моем входном файле у меня есть запись, которая содержит элемент с номером. Эта запись встречается только один раз.

В моем выходном файле мне нужно создать 2 записи, которые содержат это число.

Использование циклического функтоида не подходит для моей цели, поскольку в выходном файле создается только одна запись.

Моя схема ввода (номер Одетты — это элемент, который мне нужно сопоставить):

введите описание изображения здесь

Моя схема вывода:

введите описание изображения здесь

Итак, мне нужно создать 2 вхождения NADLoop1, каждое из которых содержит OdetteNumber. Я пытался использовать функцию циклирования таблицы, но поскольку NadLoop1 уже задействован в нескольких других циклах на карте, я получаю сообщение об ошибке «Переменная или параметр ‘var’ либо не определены, либо находятся вне области видимости»

По возможности я хотел бы избежать использования XSLT, поскольку остальная часть карты создается с помощью visual mapper, но если это единственное решение, я готов реализовать его в XSLT.

Комментарии:

1. Чтобы оставаться в теме, я думаю, вам следует запросить biztalk решение, которое вы хотите. В случае, если такового нет, вы могли бы запросить более общее XSLT решение. Обратите внимание, что для последнего вам нужно предоставить больше контекста.

Ответ №1:

В выходной схеме EDI вы можете создать выделенный NAD (не NADLoop1) для каждого из значений, например, NAD_1 и NAD_2.

Пользовательские поля EDI описаны здесь: Сервер BizTalk: Возможности EDI не только для HIPAA

По сути, это копирование определения для NAD и переименование элемента NAD.

Пожалуйста, не забудьте отметить ответы как полезные или принятые, если это так.

Комментарии:

1. Спасибо за ваш ответ, но мне не разрешено изменять определение схемы. Я могу видеть, как ваше решение будет работать, хотя.

2. @Leth Дело в том, что это намного усложняет задачу. Если вы объясните их возражения, мы можем помочь вам объяснить, почему они, ну, в общем, неправы.