2012-03-22 29 views
0

我的BizTalk接收XML消息作爲輸入消息。我使用業務流程中的變換將該消息轉換爲HL7消息。 現在,如果輸入消息由在任何節點的任何空的字段中,HL7消息在該現在的位置是打破了,並且還包括在該消息中的空間。斷線之後,也越來越空間HL7消息

任何人都可以幫助我解決這個問題嗎?以下是我的HL7消息: 注意 ---複製在Textpad這個消息去了解它

MSH確切空間| ^〜\ & | EEHR^bbbbbbbbbb | aaaaaaaaaaaaaaaaa^^ 12699 DNS | KYIR | CDP | 201103060733 || VXU^V04 | 14962 | P | 2.3.1 |||| PID | 1 || 765874316 ^^^^ SS || ssssss^anan^T | wwwww ^^^^^^ M | 20100217 | M || 2135-2^YYYYYYYY或jjjjjj^HL70005 | 5896 hyhyhyhy Ave^Apt# 112^Wanta Fe^NM^85678^XXX^H ^^ 049 || 5033331120X ^ PRN^PH ^^^505^5551120^~^NET^X.400^[email protected]|5056083515X4365^WPN^PH^^^ 505^6086715^4365 | ES^^英語|||| HL70296 ||| 215486702 H^erererer或qwqwqw^HL70189 | bnbnbn | Y | 1 ||||

謝謝。

回答

0

我不完全確定問題是什麼 - 輸出HL7消息字符串中是否有空格?我不是在我的Windows分區,現在,所以我不能夠真正看到你發佈的消息間距的任何明顯的問題。

無論如何,如果它只是空格,你可以通過字符串解析並用空字符串替換字段中的空格嗎?

喜歡的東西:message.replaceAll("\\| \\|", "||"); < - 這是Java代碼

,以前的代碼將取代「所有實例| |」 '||' (即用空字符串替換空格)。

希望有所幫助。

乾杯

0

看來你的問題是,有錯誤的段分隔符。
因爲它可以找到所有段標題作爲空白後跟已知段標題和字段分隔符的組合,並用正確的段分隔符替換空白,所以不能保證你不會得到偶然的組合在與片段開始不同的位置。
因此,最好的建議是要避免錯誤段分隔符UND提供它的權利。