Как получить конкретное значение из сообщения «Сегмент в HL7» в BizTalk 2010 - PullRequest
0 голосов
/ 12 октября 2011

Я разрабатываю связанную с HL7 карту в BizTalk2010, у меня все готово, включая исходную и целевую схемы, карты и т. Д., И все обрабатывается правильно. Я пытаюсь добиться определенного значения из одного из обязательных сегментов, т. Е. Идентификации пациента (PID), и передать ему поле MemberID моей целевой схемы. Вот так выглядит сегмент PID (вставляя только определенную часть):

PID | 1 || 000123456 ^^^^ MR ~ ^^^^ MA ~ 123456789A ^^^^ MC ~ 12345 ^^^^ PT ~ 123456789 ^^^^ SS ~ 000000000001234 ^^^^ PI ~ ^^^^ ~ ^^^^ Н || ^ Джон Смит ^ а |

выделенная жирным шрифтом часть является списком идентификаторов пациентов PID-3 (CX), мне нужно значение после текста SS ~, которое равно 000000000001234. Если я просто сопоставлю поле идентификатора PID-3-1 первого идентификатора PID-3 В списке идентификаторов пациентов я получаю первое значение, которое равно 000123456. Мне нужно значение, которое содержится в 6-м списке идентификаторов пациентов PID-3 (см. Изображение ниже). Пожалуйста, совет

Ответы [ 2 ]

1 голос
/ 14 октября 2011

В вашем случае вы, вероятно, захотите использовать индексный функтоид.Этот функтоид принимает элемент, который вы хотите отобразить, в качестве первого ввода и 1-базовый индекс элемента, который вы хотите отобразить.

Вот как будет выглядеть карта в BizTalk 2010: This screenshot shows how the map is configured

Конфигурация функтоида будет выглядеть следующим образом: Functoid Configuration

Если вы посмотрите на сгенерированный xslt карты, вы захотите увидеть нечто похожее на это: enter image description here

0 голосов
/ 15 октября 2011

Если функтоид индекса не работает (потому что вы не можете полагаться на конкретный порядок), вы можете попытаться соединить функтоид зацикливания между верхним уровнем, чтобы убедиться, что вы получаете все записи, а затем сделать логическое равенство для PT квалификатор и функтоид, отображающий значение на номер идентификатора. Ссылка из логического равного корневого цикла должна блокировать пустые циклы

map

...