PL / SQL для анализа EDI (X12, NCPDP, HL7) - PullRequest
3 голосов
/ 24 октября 2008

У меня есть некоторые сообщения EDI (X12, HL7 и т. Д.), Хранящиеся в базе данных Oracle. Иногда я хочу вытащить отдельные поля (например, ISA-03). В настоящее время у меня есть некоторые действительно уродливые sql. Я хотел бы создать пакет PL / SQL, чтобы упростить его, и мне было интересно, если бы кто-нибудь уже сделал это.

Я представляю что-то вроде:

выберите edi.x12.extract_field (clob_column, 'ISA', 4) от edi_table

1 Ответ

2 голосов
/ 27 октября 2008

Хотя я никогда не сохранял сообщение HL7 в базе данных, это должно быть возможно.

Идея HL7 (и XML) заключается в том, что это общий формат, используемый системами для передачи информации. Он никогда не задумывался как «хранимый» предмет. Обычно я извлекал данные из формата хранилища в конкретное сообщение HL7 и отправлял их в MQHub / eGate для передачи. По возвращении сделайте обратное, извлеките поля, которые я храню, и сохраните их. И.Е. HL7 не должен храниться, поэтому у меня его нет.

Достаточно лекции. :)

Я бы предложил функцию / процедуру для каждого сегмента и разделил бы сообщение на временную таблицу.

пример раскола в оракуле

...