> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kasoftware.com/llms.txt
> Use this file to discover all available pages before exploring further.

# HL7 MLLP 端口

> 知行之橋HL7 MLLP 端口的配置與使用指南。

Health Level-7 是一套醫院和其他醫療保健提供者使用的臨床資料傳輸標準。HL7 MLLP 端口支援與 MLLP 作為傳輸協議結合生成和解析 HL7 文件。

## 核心功能

* 使用基於 MLLP（最小低層協議）傳輸的 HL7 進行醫療資料交換
* 內建 MLLP 伺服器端功能，支援 SSL/TLS 加密
* 提供 HL7 與 XML 格式之間的雙向 HL7 文件轉換
* 支援 MSH 報文頭驗證，具備可配置的應用程式和設施識別碼
* 自動回執處理，具備重試和重發功能以確保可靠交付

## 總覽

HL7 MLLP 端口提供兩組功能：

* 透過 MLLP 傳輸協議進行檔案傳輸
* 根據 HL7 EDI 標準解析並生成 EDI 文件

HL7 MLLP 連線在兩個位置進行配置。使用將 知行之橋 標識為 HL7 和 MLLP 實體的設定來配置 HL7 MLLP [個人設定](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/getting-started/administration/profiles.md)。然後使用每個貿易伙伴的 HL7 和 MLLP 詳細資訊配置單獨的 HL7 MLLP 端口。

當 HL7 MLLP 端口收到來自貿易伙伴的入站訊息時，它會驗證 HL7 標識詳細資訊，以確認文件是從預期各方傳送的或傳送到預期各方的。然後，它將文件轉換為 XML，以便在 知行之橋 流程中進一步處理。

當 HL7 MLLP 端口向貿易伙伴傳送檔案時：

* XML 檔案在傳送之前被轉換為 HL7
* HL7 檔案按原樣傳送

知行軟件 強烈建議將 HL7 MLLP 端口與 [XML Map 端口](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/connectors/xml-map/xml-map.md) 結合使用，以確保輸入和輸出 XML 的格式正確。有關詳細資訊，請參閱[與 XML Map 端口一起使用](#與-xml-map-端口一起使用)。

## 個人設定

必須先配置 HL7 MLLP 配置檔案，然後才能與各個 HL7 MLLP 端口建立連線。單擊頂部功能表欄上的 **個人設定**，然後單擊 **HL7 MLLP** 索引標籤。

### HL7 MLLP 配置檔案選項

#### 伺服器配置

*託管本地 MLLP 伺服器的設定。*

| 設定 | 描述 |
| - | - |
| **端口** | 監聽傳入 MLLP 連線的端口。 |
| **使用 SSL/TLS** | 是否要求傳入連線將 SSL/TLS 加密用於傳輸安全。 |
| **TLS 伺服器憑證** | 用於驗證 TLS/SSL 伺服器身份的公開金鑰憑證。如果目標伺服器使用 TLS/SSL，請將此欄位設定為標識該伺服器的憑證。如果伺服器的憑證不可用，可以將此設定留空以允許底層 OS/JVM 執行憑證驗證，或將其設定為 `Any Certificate` 以隱式信任伺服器的身份。（僅當選中 **使用 SSL/TLS** 時，才會顯示此欄位。） |

#### HL7 個人 ID

| 設定 | 描述 |
| - | - |
| **應用程式命名空間 ID（MSH3.1）** | 標識 HL7 協議交換的本地命名空間的應用程式 ID。 |
| **應用程式通用 ID（MSH3.2）** | HL7 協議交換的本地應用程式通用 ID。 |
| **應用程式通用 ID 型別（MSH3.3）** | 為本地應用程式通用 ID 提供上下文的型別限定符。 |
| **設施命名空間 ID（MSH4.1）** | 標識 HL7 協議交換的本地命名空間的設施 ID。 |
| **設施通用 ID（MSH4.2）** | HL7 協議交換的本地設施通用標識。 |
| **設施通用 ID 型別（MSH4.3）** | 一個型別限定符，用於為本地設施通用標識提供上下文。 |

#### 其他設定

*很少需要修改的設定。*

| 設定 | 描述 |
| - | - |
| **空閒逾時** | 伺服器允許用戶端在連線終止之前保持非活動狀態的時間（以秒為單位）。 |

#### 日誌

*用於管理日誌建立和儲存的設定。*

<table><thead><tr><th>設定</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**日誌級別**</td>
<td>端口生成的日誌的詳細程度。當請求支援時，請將其設定為 **Debug**。</td></tr>
<tr><td>**日誌輪換間隔**</td>
<td>建立新日誌檔案之前等待的天數。</td></tr>
<tr><td>**日誌刪除間隔**</td>
<td>刪除舊日誌檔案之前等待的天數。</td></tr></tbody></table>

#### 雜項

*特殊設定適用於特定用例。*

<table><thead><tr><th>設定</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**其他設定**</td>
<td>允許在以分號分隔的清單中配置隱藏的端口設定，例如 `setting1=value1;setting2=value2`。正常的端口用例和功能不需要使用這些設定。</td></tr></tbody></table>

## 端口配置

配置全域 HL7 MLLP 個人設定後，請在工作流程頁面上為每個貿易伙伴建立和配置單獨的 HL7 MLLP 端口。

### 設定

#### 配置

<table><thead><tr><th>設定</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**端口 Id**</td>
<td>端口的靜態、唯一識別碼。</td></tr>
<tr><td>**端口型別**</td>
<td>顯示端口型別及其用途的描述。</td></tr>
<tr><td>**端口描述**</td>
<td>一個可選欄位，用於提供端口及其在流中的角色的自由格式描述。</td></tr></tbody></table>

##### 伺服器狀態

*端口底層服務的當前狀態。可用狀態如下：*

<table><thead><tr><th>狀態</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**活動**</td>
<td>服務正在執行。</td></tr>
<tr><td>**非活動**</td>
<td>服務已配置，但當前未執行。</td></tr>
<tr><td>**未配置**</td>
<td>底層配置檔案或服務尚未設定。</td></tr></tbody></table>

根據是否已建立 HL7 MLLP 配置檔案，點選**配置 HL7 MLLP 配置檔案**或**檢視 HL7 MLLP 配置檔案**連結，在新索引標籤中開啟該配置檔案。

#### 端口設定

*與端口核心操作相關的設定。*

| 設定 | 描述 |
| - | - |
| **遠端主機** | 遠端主機的主機名或 IP 地址。 |
| **端口** | 用於偵聽傳入 MLLP 連線的端口。 |
| **版本** | 正在使用的 MLLP 版本。 |
| **連線逾時** | 端口在擲回逾時錯誤之前等待連線回應的時間長度（以秒為單位）。 |
| **使用 SSL/TLS** | 是否要求傳入連線使用 SSL/TLS 加密以確保傳輸安全。 |

#### HL7 配置

*與訊息頭相關的設定。將 HL7 文件轉換為 XML 時，將根據這些設定驗證文件頭；從 XML 生成 HL7 文件時，這些設定用於生成文件頭。*

| 設定 | 描述 |
| - | - |
| **應用程式命名空間 ID（MSH5.1）** | 結合其他 5.X 元素，標識 HL7 交換機遠端端的應用程式。 |
| **應用程式通用 ID（MSH5.2）** | 結合其他 5.X 元素，標識 HL7 交換機遠端端的應用程式。 |
| **應用程式通用 ID 型別（MSH5.3）** | 結合其他 5.X 元素，標識 HL7 交換機遠端端的應用程式。 |
| **設施命名空間 ID（MSH6.1）** | 結合其他 6.X 元素，標識 HL7 交換機遠端端的設施。 |
| **設施通用 ID（MSH6.2）** | 結合其他 6.X 元素，標識 HL7 交換機遠端端的設施。 |
| **設施通用 ID 型別（MSH6.3）** | 結合其他 6.X 元素，標識 HL7 交換機遠端端的設施。 |

#### ACK

*與生成和請求 ACK 相關的設定。*

| 設定 | 描述 |
| - | - |
| **ACK 型別** | 確認是否應生成並請求。 |

### 樣本檔案索引標籤

*上傳範例檔案可以方便地在任何連線的 CSV Map 或 XML Map 端口中進行對映。*

使用 **範例檔案** 索引標籤生成用於 [CSV Map](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/map.md) 或 [XML Map](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/xml-map/xml-map.md) 端口的源或目標 XML 範本。單擊 **新增範例檔案**。

1. 如果您已有反映資料預期格式和結構的範例檔案，請選擇 **檔案上傳** 並瀏覽到您的檔案。或者，選擇 **手動建立** 直接在應用程式中建立檔案。如果您選擇 **手動建立**，請為範例檔案命名。單擊 **下一步**。

2. 如果您瀏覽到現有檔案，**檢視檔案** 索引標籤將填充其內容。如果您選擇手動建立檔案，請在此索引標籤上輸入範例資料。單擊 **下一步**。

3. **翻譯和預覽** 索引標籤顯示將範例資料轉換為 XML 的預覽。當您對範例滿意時，單擊 **新增**。

### 進階設定

#### EDI 分隔符號

*指定用哪些字元分隔元素、段等。*

| 設定 | 描述 |
| - | - |
| **資料元素分隔符號** | 分隔文件中各個資料元素的字元。 |
| **元件元素分隔符號** | 分隔文件中複合資料結構內元素的字元。 |
| **段終止字元** | 指示文件中段結尾的字元。 |
| **逸出字元** | 釋放（轉義）下一個字元的字元，覆蓋其通常的含義。只要前面有釋放字元，允許保留字元在文件中顯示為資料。 |
| **重複字元** | 表示元素值重複的字元。 |
| **字尾** | 附加到 **段終止字元** 以區分段。 |

#### 代理設定

這是一組用於識別連線所經代理並對其進行身分驗證的設定。預設情況下，本節使用 [安全設定](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/security.md) 頁面的 [代理設定](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/proxy-settings.md) 部分中的全域設定。清除此核取方塊可為您的端口提供特定的設定。

<table><thead><tr><th>設定</th><th>描述</th></tr></thead>
<tbody><tr><td>**代理型別**</td>
<td>基於代理的防火牆使用的協議。</td></tr>
<tr><td>**代理主機**</td>
<td>基於代理的防火牆的名稱或 IP 地址。</td></tr>
<tr><td>**代理端口**</td>
<td>基於代理的防火牆的 TCP 端口。</td></tr>
<tr><td>**代理使用者**</td>
<td>用於透過基於代理的防火牆進行身分驗證的使用者名稱。</td></tr>
<tr><td>**代理密碼**</td>
<td>用於對基於代理的防火牆進行身分驗證的密碼。</td></tr>
<tr><td>**身分驗證方案**</td>
<td>保留預設值 **None** 或選擇以下身分驗證方案之一：**Basic**、**Digest**、**Proprietary** 或 **NTLM**。</td></tr></tbody></table>

#### 進階設定

*先前類別中未包含的設定。*

| 設定 | 描述 |
| - | - |
| **將描述生成為** | 將 HL7 轉換為 XML 時，可以提供 HL7 段和元素的描述作為 HL7 資料的上下文。使用此下拉式清單可以選擇是否將此上下文新增為 XML 註釋或 XML 屬性。 |
| **處理延遲** | 放置在 **交易** 索引標籤中的檔案處理延遲的時間量（以秒為單位）。這是一箇舊版設定。最佳實踐是[使用檔案端口](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/flows/designing-a-flow.md#與本地檔案系統互動)來管理本地檔案系統，而不是此設定。 |
| **嚴格模式驗證** | 檢測到以下情況時，端口是否提示應忽略、警告或失敗：重複計數超過允許的數目，缺少必需的元素或段，限定符和程式碼值無效，不允許的元素長度以及無效的元素值。 |
| **本地檔案命名方案** | 為端口輸出訊息分配檔名的方案。可以在檔名中使用宏來動態包含識別碼和時間戳等資訊。更多資訊，請參閱[宏](#宏)。 |
| **TLS 已啟用協議** | 建立傳出連線時支援的 TLS/SSL 協議清單。最佳實踐是僅使用 TLS 協議。SSL v2 和 SSL v3 被認為存在漏洞，只有在貿易伙伴不支援更高版本時才應使用。請注意，TLS v1.3 尚未被普遍採用，如果目標伺服器不支援它，可能會被拒絕。 |
| **驗證識別碼** | 選中後，端口將確保已翻譯文件中的識別碼與端口配置中指定的識別碼匹配。 |
| **重複檔案操作** | 當端口收到控制編號已見過的訊息（重複）時應如何處理。設定為 `Ignore` 時，端口靜默跳過重複並繼續處理。設定為 `Warn` 時，端口處理檔案但傳回警告。設定為 `Fail` 時，端口不接受檔案並傳回錯誤。 |
| **上傳 Schema** | 使用此選項上傳 schema 並將其安裝在端口的 Schema 資料夾中。如果 schema 已存在，系統會詢問是否要覆蓋。 |
| **重置狀態** | EDI 端口跟蹤已使用的控制編號並遞增該數字，以確保將來的執行不會重複資料。使用此按鈕將計數器重置為初始狀態，而不更改任何已配置的設定。 |

#### 訊息

*訊息設定確定端口如何搜尋訊息並在處理後管理它們。*

**注意：**以下設定已棄用，預設處於隱藏狀態。只有先前已啟用這些設定或將其配置為非預設值的端口才會顯示它們。若要保留成功處理的檔案副本，請在工作流程中右鍵單擊該端口，選擇**顯示成功路徑**，然後將成功路徑連線到 [File 端口](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/file.md)。

<table><thead><tr><th>設定</th><th>描述</th></tr></thead>
<tbody><tr><td>**儲存到已傳送資料夾**（已棄用）</td>
<td>將端口處理的檔案複製到 Sent 資料夾。預設停用。儲存到 Sent 資料夾中的檔案不受[靜態加密](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/encryption-at-rest.md)保護。</td></tr>
<tr><td>**已傳送資料夾方案**（已棄用）</td>
<td>按所選時間間隔對 **Sent** 資料夾中的檔案進行分組。僅在啟用**儲存到已傳送資料夾**時適用。</td></tr></tbody></table>

#### 日誌

*用於管理日誌建立和儲存的設定。*

<table><thead><tr><th>設定</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**日誌級別**</td>
<td>指定要記錄在端口日誌目錄中的資訊型別：
<ul><li>**None** - 不建立任何日誌。</li>
<li>**Error** - 僅當端口遇到錯誤時才建立日誌。</li>
<li>**Warning** - 僅當端口發出警告時才建立日誌。</li>
<li>**Info** - 記錄工作流程的一般資訊，包括任何錯誤和警告（如果適用）。</li>
<li>**Debug** - 記錄成功和失敗工作流程的詳細偵錯資訊。</li>
<li>**Trace** - 記錄成功和失敗工作流程的詳細跟蹤資訊。</li></ul>
\*\*請注意：\*\***Debug** 和 **Trace** 級別的日誌可能會記錄敏感資訊，包括訊息內容和 SSL 憑證。儘管連線屬性（例如密碼）被遮蔽了，但在與您的組織外部共享它們之前，請檢視此級別的日誌以避免洩漏敏感資訊。</td></tr>
<tr><td>**日誌資料夾結構**</td>
<td>指示端口根據選定的時間間隔將日誌資料夾中的檔案分組。例如，**Weekly** 選項指示端口每週建立一個新的子資料夾，並將該周的所有日誌儲存在該資料夾中。空白設定告訴端口將所有日誌直接儲存在日誌資料夾中。對於處理許多交易的端口，使用子資料夾有助於保持日誌的有序性並提高效能。</td></tr>
<tr><td>**保留訊息副本**</td>
<td>指示端口在日誌目錄中儲存最新訊息副本的切換。請注意，端口每個子資料夾只保留一個訊息，並且端口在再次執行時會覆蓋以前儲存的訊息。</td></tr></tbody></table>

#### 雜項

*特殊設定適用於特定用例。*

<table><thead><tr><th>設定</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**其他設定**</td>
<td>允許在以分號分隔的清單中配置隱藏的端口設定，例如 `setting1=value1;setting2=value2`。正常的端口用例和功能不需要使用這些設定。</td></tr></tbody></table>

### 自動化

#### 自動化設定

*與端口自動處理檔案相關的設定。*

| 設定 | 描述 |
| - | - |
| **傳送** | 到達端口的檔案是否自動作為 HL7 或 XML 訊息傳送。 |
| **重試間隔** | 重試失敗傳送之前的分鐘數。當伺服器沒有回應傳送嘗試，或者做出否定回應以表明未收到檔案時，將觸發重試。 |
| **最大嘗試次數** | 端口處理輸入檔案的最大次數。成功取決於伺服器成功確認和驗證收據（同步請求時）。如果將此設定為 0，端口將無限期地重試該檔案。 |
| **重新傳送間隔** | 重新傳送未確認訊息之前的分鐘數。當伺服器收到檔案但未在預期時間範圍內提供非同步 MDN 回執時，會觸發重新傳送。 |
| **最大嘗試次數（非同步）** | 當請求非同步收據時，端口處理輸入檔案的最大次數。成功取決於伺服器成功確認後在 **重新傳送間隔** 內傳回的非同步收據。如果未傳回成功的伺服器確認，則會應用 **最大嘗試次數**。如果將此設定為 0，端口將無限期地重新傳送檔案。 |

#### 效能

*與端口資源分配相關的設定。*

<table><thead><tr><th>設定</th>
<th>描述</th></tr></thead>
<tbody><tr><td>**最大工作執行緒數**</td>
<td>此端口上處理檔案時從執行緒池中消耗的最大工作執行緒數。如果設定，則會覆蓋 [進階設定](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/advanced-settings.md) 頁面的 [效能設定](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/performance-settings.md) 部分的預設設定。</td></tr>
<tr><td>**最大檔案數**</td>
<td>分配給端口的每個執行緒傳送的最大檔案數。如果設定，則會覆蓋 [進階設定](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/advanced-settings.md) 頁面的 [效能設定](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/performance-settings.md) 部分的預設設定。</td></tr></tbody></table>

### 告警索引標籤

*與配置通知相關的設定。*

在執行服務級別協議 (SLA) 之前，需要設定電子郵件通知以接收通知。預設情況下，知行之桥 使用 [通知](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/alerts.md) 索引標籤上的全域設定。要為此端口使用其他設定，請啟用 **覆蓋全域設定**。

預設情況下，錯誤通知處於啟用狀態，這意味著每當出現錯誤時都會傳送電子郵件。要關閉錯誤通知，請取消選中 **啟用** 核取方塊。

輸入 **主題**（必填）。勾選**允許在主題中使用 ArcScript**，即可在**主題**欄位中使用 ArcScript。選中後會顯示 **ArcScript 編輯器**按鈕（![ArcScript 編輯器按鈕](https://docs.kasoftware.com/26.4/images/rest_arcscript_editor.png)）。

（可選）輸入以逗號分隔的**收件人**電子郵件地址清單。

### SLA 索引標籤

*與配置服務級別協議 (SLA) 相關的設定。*

SLA 允許配置預期流程中端口傳送或接收的資料量，並設定預期達到該資料量的時間範圍。當 SLA 未達到時，知行之桥 會傳送電子郵件警告使用者，並將 SLA 標記為 *存在風險*，這意味著如果 SLA 未能儘快達到，則會被標記為 *已違反*。這讓使用者有機會介入並確定 SLA 未達到的原因，並採取適當的措施。如果在風險時間段結束時仍未達到 SLA，則會將 SLA 標記為已違反，並再次通知使用者。

SLA 轉換為 *存在風險* 或 *已違反* 狀態時，也會寫入[應用程式日誌](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/activity.md#应用程序日志)，這意味著應用程式效能監控 (APM) 和日誌擷取工具也可以針對這些狀態發出警示。

要定義 SLA，請啟用 **預期資料量**，然後點選 **設定** 索引標籤。

![SLA Empty](https://docs.kasoftware.com/26.4/images/sla_empty.png)
<ul><li>如果端口具有單獨的傳送和接收操作，請使用選項按鈕指定 SLA 適用的方向。</li>
<li>在視窗的 **預計至少** 部分中：
<ul><li>設定預計處理的最小交易數量（交易量）</li>
<li>使用 **每個** 欄位指定時間範圍</li>
<li>指示 SLA 生效的時間。如果選擇 **開始於**，請填寫日期和時間欄位。</li>
<li>勾選希望 SLA 生效的星期幾對應的核取方塊。如有必要，請使用下拉功能表選擇 **每天**。</li></ul></li>
<li>在視窗的 **將狀態設定為“有風險”** 部分中，指定應將 SLA 標記為有風險的時間。
<ul><li>預設情況下，只有在違反 SLA 的情況下才會傳送通知。要更改此設定，請勾選 **傳送“有風險”通知**。</li></ul></li></ul>

以下範例顯示了為端口配置的 SLA，該端口預計在週一至週五每天接收 1000 個檔案。如果尚未收到 1000 個檔案，則會在時間段結束前 1 小時傳送風險通知。

![SLA Configuration Example](https://docs.kasoftware.com/26.4/images/sla_defined.png)

> [!NOTE]
>
> 如果有必要，可以關閉 SLA 通知。這在維護視窗期間非常有用。點選導覽列上的 **設定**，然後跳轉到 **通知 > 通用通知**。點選平板和鉛筆圖示進行編輯，並取消勾選 **SLA 通知** 設定。

## 生成 HL7 文件

從 XML 生成 HL7 檔案時，端口根據 HL7 MLLP 配置檔案索引標籤上的 [HL7 個人 ID](#hl7-個人-id) 以及端口中的 [HL7 配置](#hl7-配置)應用交易訊息頭。其餘資料來自 XML 輸入檔案。有關生成適當的 XML 輸入檔案的詳細資訊，請參閱[與 XML Map 端口一起使用](#與-xml-map-端口一起使用)。

到達端口 **交易** 索引標籤的檔案將打包成 HL7 文件並透過 MLLP 傳送出去。檔案可以透過將檔案直接拖放到磁碟上的資料夾路徑中或透過將另一個 知行之橋 端口連線到流程中的 HL7 MLLP 端口來到達 **交易** 索引標籤。

## HL7 轉換為 XML

將 HL7 文件轉換為 XML 時，應用程式會根據 HL7 MLLP 配置檔案索引標籤上的 [HL7 個人 ID](#hl7-個人-id) 和端口中的 [HL7 配置](#hl7-配置)驗證入站文件中的交換標題。從 HL7 文件生成的 XML 放置在 **交易** 索引標籤中，以便在流程中傳遞以進行進一步處理。有關處理翻譯後的 XML 的詳細資訊，請參閱[與 XML Map 端口一起使用](#與-xml-map-端口一起使用)。

## 與 XML Map 端口一起使用

HL7 MLLP 端口執行兩項操作之一：接收 XML 輸入或生成 XML 輸出。為確保輸入和輸出檔案具有正確的 XML 結構，我們強烈建議在生成出站 HL7 MLLP 文件時將 [XML Map 端口](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/xml-map/xml-map.md) 用作流程中的上一步，或在接收入站 HL7 MLLP 文件時將其用作流程中的下一步。下面描述的 **上傳測試檔案** 功能使 XML Map 端口和 HL7 MLLP 端口之間的互動變得簡單。

### 上傳測試檔案

按照以下步驟生成輸入檔案的 XML 範本：

1. 在端口的 **交易** 索引標籤中，單擊 **更多** 下拉功能表，然後單擊 **上傳測試檔案**。

2. 導航到磁碟上要建模為 XML 的檔案，選擇它，然後單擊 **OK**。

3. 將 HL7 MLLP 端口連線到流中的 XML Map 端口。此連線可以在任一方向進行——入站到 XML Map 端口，或從 XML Map 端口出站。

XML Map 端口會自動檢測測試檔案的結構。根據您放置 HL7 MLLP 端口的位置，該檔案將出現在 XML Map 端口的 **來源檔案** 或 **目的檔案** 下拉功能表中。

> [!NOTE]
>
> XML Map 端口需要源範本和目標範本，因此必須根據資料來源結構或應轉換為的結構來設定剩餘範本。例如，如果需要將 HL7 文件中的資料插入資料庫，則 XML Map 端口中的另一個範本將是資料庫插入的 XML 模型。有關在兩個範本檔案之間建立對映的更多資訊，請參閱 XML Map 端口的 [使用對映編輯器](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/xml-map/xml-map-designer.md)。

## 宏

在檔案命名策略中使用宏可以提高組織效率和對資料的上下文理解。透過將宏合併到檔名中，可以動態地包含相關資訊，例如識別碼、時間戳和訊息頭資訊，從而為每個檔案提供有價值的上下文。這有助於確保檔名反映對組織重要的詳細資訊。

知行之桥 支援這些宏，它們都使用以下語法：`%Macro%`。

<table><thead><tr><th>宏</th><th>描述</th></tr></thead>
<tbody><tr><td>ConnectorID</td><td>替換為端口的 ConnectorID。</td></tr>
<tr><td>ConnectorName</td><td>替換為端口名稱。可用於在檔名或路徑中包含連線名稱，例如按生成備份檔案的資料庫連線標記檔案。</td></tr>
<tr><td>Ext</td><td>替換為端口當前正在處理的檔案的副檔名。</td></tr>
<tr><td>Filename</td><td>替換為端口當前正在處理的檔案的檔名（包括副檔名）。</td></tr>
<tr><td>FilenameNoExt</td><td>替換為端口當前正在處理的檔案的檔名（不帶副檔名）。</td></tr>
<tr><td>MessageId</td><td>計算端口輸出的訊息的 MessageId。</td></tr>
<tr><td>RegexFilename:*pattern*</td><td>將規則運算式模式應用於端口當前正在處理的檔案的檔名。</td></tr>
<tr><td>Header:*headername*</td><td>替換為端口正在處理的當前訊息的目標訊息頭（`headername`）的值。</td></tr>
<tr><td>LongDate</td><td>以常規格式計算系統的當前日期時間（例如，2024 年 1 月 24 日星期三）。</td></tr>
<tr><td>ShortDate</td><td>以 yyyy-MM-dd 格式計算系統的當前日期時間（例如 2024-01-24）。</td></tr>
<tr><td>DateFormat:*format*</td><td>以指定格式（`format`）計算系統的當前日期時間。有關可用的日期時間格式，請參閱 [範例日期格式](https://docs.kasoftware.com/26.4/self-hosted/zh/scripting/value-formatters/date-formatters.md#date-formats-with-literal-characters)。</td></tr>
<tr><td>Vault:*vaultitem*</td><td>計算指定保管庫專案的值。</td></tr></tbody></table>

### 範例

某些宏（例如 %Ext% 和 %ShortDate%）不需要參數，但其他宏則需要。所有帶有參數的宏都使用以下語法：`%Macro:argument%`

以下是帶有參數的宏的一些範例：

<ul><li>%Header:headername%：其中 `headername` 是訊息上訊息頭的名稱。</li>
<li>%Header:mycustomheader% 解析為輸入訊息上設定的 `mycustomheader` 訊息頭的值。</li>
<li>%Header:ponum% 解析為輸入訊息上設定的 `ponum` 訊息頭的值。</li>
<li>%RegexFilename:pattern%：其中 `pattern` 是規則運算式模式。例如，`%RegexFilename:^([\w][A-Za-z]+)%` 匹配並解析為檔名中的第一個單詞，並且不區分大小寫（`test_file.xml` 解析為 `test`）。</li>
<li>%Vault:vaultitem%：其中 `vaultitem` 是 [vault](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/global-settings-vault.md) 中專案的名稱。例如，`%Vault:companyname%` 解析為儲存在保管庫中的 `companyname` 項的值。</li>
<li>%DateFormat:format%：其中 `format` 是可接受的日期格式（有關詳細資訊，請參閱 [範例日期格式](https://docs.kasoftware.com/26.4/self-hosted/zh/scripting/value-formatters/date-formatters.md#sample-date-formats)）。例如，`%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%` 解析為檔案上的日期和時間戳。</li></ul>

還可以建立更復雜的宏，如以下範例所示：

<ul><li>將多個宏組合在一個檔名中：`%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%%EXT%`</li>
<li>包括宏之外的文字：`MyFile_%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%`</li>
<li>在宏中包含文字：`%DateFormat:'DateProcessed-'yyyy-MM-dd_'TimeProcessed-'HH-mm-ss%`</li></ul>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.