要發送一個HL7請求到實驗室,你必須發送一個文件到實驗室,所以首先你需要創建一個文件。
String fileName = "testOrder.txt"
StreamWriter sr = new StreamWriter(fileName)
現在追加線逐一在它,第一行必須是MSH(郵件標頭標記),其是這樣的: MSH | ^〜\ & | LCS | LCA | LIS | TEST9999 | 199807311532 || ORU^R01 | 3629 | P | 2.2
所以你的代碼行會像:
sr.WriteLine("MSH|^~\&|" + _YOURAPPLICATIONNAME + "|" + _YOURHOSPITAL + "|" + _RECEIVINGAPPLICATIONNAME + "|" + _RECEIVINGLAB + "|" + _DATETIME + "||ORU^R01|" + _IDOFORDERINYOURDATABASE + "|P|2.2");
接下來,您需要添加PID線在你的文件,它是這樣的: PID | 2 | 2161348462 | 20809880170 | 1614614 | 20809880170^TESTPAT || 19760924 | M ||| ^^^^ 00000-0000 ||||||| 86427531 ^^^ 03 | SSN#這裏
所以你需要告訴你的流寫入寫入文件的上面一行,但顯然也改變這一行的值,像你一樣的MSH段,PID規範可以在http://www.corepointhealth.com/resource-center/hl7-resources/hl7-pid-segment
發現這款U需要添加ORC和OBR線的文件,如後: ORC | NW | 8642753100012^LIS | 20809880170^LCS ||||| | 199807.27億||| HAVILAND OBR | 1 | 8642753100012^LIS | 20809880170^LCS | 008342 ^上呼吸道 文化^ |||大號|||||| 19980727175800 SS#634748641 CH14885 SRC:THROA SRC:PENI | 199807.27億|||||| 20809880170 || 19980730041800 || BN | F
也可以在這些行中替換所需的值。 這將使您的測試請求文件完整。如果醫生給出了一些額外的評論,您可以添加一個NTE標記的其他行: NTE | 1 | L | MORAXELLA(BRANHAMELLA)CATARRHALIS
由於您的文件已完成,現在可以將其發送到實驗室,你的文件中最重要的是MSH標記中的ORU^R01,它告訴實驗室它是一個測試請求。 實驗室稍後會向您發送一個HL7文件,它們具有相同的MSH,PID,ORC和OBR標記,以及將會得到測試結果的OBX標記。 在MSH標籤中,您發送了數據庫的訂單ID,因此當實驗室發回時,您可以檢查該文件的來源順序。
您可以逐行讀取文件,將每行的字符串拆分爲「|」並取出所需的數據並將其轉儲到數據庫中。
我希望它能讓您更清楚地瞭解您需要做什麼以及如何做。
感謝@AndHeCodedIt 。我開發了沒有HL7的應用程序,用於病人入院和其他醫院管理系統事宜。在最近的模塊中,我需要從HL7導入血液測試,然後用戶選擇他想要發送給特定患者的實驗室。首先,我需要導入HL7進行血液檢測。之後,用戶選擇測試發送到實驗室。您的第一個鏈接提供了有關術語及其語義的詳細信息,但我希望儘快對此進行編程。到目前爲止,我沒有發現任何導致我執行的內容。你能跟我分享一些編碼的例子嗎? –
看起來@Imran Balouch在第二個答案中給了你一個僞代碼答案。這是足夠詳細的,還是你需要更多的信息? – AndHeCodedIt