> ## 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.

# RosettaNet 端口

> 知行之橋RosettaNet 端口的配置和使用指南。

RosettaNet 端口按照 RosettaNet Implementation Framework (RNIF) 標準傳送和接收訊息。

## 核心功能

* 支援 RNIF 1.1 和 2.0，用於 B2B 文件交換
* 支援按夥伴配置自動路由訊息，並提供靈活的加密/簽章選項
* 基於憑證的安全性，支援同步/非同步確認處理

## 概觀

RosettaNet 連線需要在兩個位置配置。首先在 RosettaNet [個人設定](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/getting-started/administration/profiles.md)頁面中配置本地 RosettaNet 識別碼和私有憑證。然後為每個交易夥伴配置單獨的 RosettaNet 端口及其連線設定。當 RosettaNet 端口處理輸入檔案時，該檔案會被打包並傳送給指定的交易夥伴。

當 知行之橋 透過 RosettaNet 接收到檔案時，會嘗試將該檔案路由到特定的 RosettaNet 端口。應用程式使用 RosettaNet 訊息中的 RosettaNet 識別碼來確定哪個 RosettaNet 端口應接收該檔案。當檔案被路由到 RosettaNet 端口時，該檔案會放入端口的**交易**索引標籤，或傳遞給工作流程中的下一個端口。

## 個人設定配置

必須先配置 RosettaNet 個人設定，才能與各個 RosettaNet 端口建立連線。單擊導覽列上的**個人設定**，然後單擊 **RosettaNet** 索引標籤。

### RosettaNet 個人設定索引標籤

#### 個人資訊

*用於標識本地個人設定的設定。*

| 設定 | 說明 |
| - | - |
| **業務識別碼** | 你的識別碼。知行之橋 傳送的訊息會在傳出訊息中包含此值以標識傳送方。傳入訊息必須傳送到此識別碼。識別碼區分大小寫。 |
| **業務位置** | 描述傳入訊息接收方的位置。此值不是地址，但可以是城市名稱。 |

#### 個人憑證

*與私有解密和簽章憑證相關的設定。*

| 設定 | 說明 |
| - | - |
| **私有憑證** | 用於解密傳入訊息並簽署傳出訊息的憑證。切勿與外部方共享此憑證。單擊**建立憑證**按鈕可生成可在 RosettaNet 交易中直接使用的自簽章憑證：系統也會生成同名且副檔名為 `.cer` 的對應公開金鑰。 |
| **憑證密碼** | 存取**私有憑證**所需的密碼。 |

#### 應用程式 URL

*與從公共 Web 存取 知行之橋 相關的設定和顯示值。*

| 設定 | 說明 |
| - | - |
| **接收 URL** | 知行之橋 監聽傳入 RosettaNet 訊息的 URL。請將此 URL 分享給所有交易夥伴。 |

#### 其他設定

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

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

## 端口配置

配置全域 RosettaNet 個人設定後，在[工作流程](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/flows/flows.md)頁面為每個交易夥伴建立並配置單獨的 RosettaNet 端口。

### 設定索引標籤

#### 配置

\_用於標識和連線到特定 RosettaNet 交易夥伴的設定。

| 設定 | 說明 |
| - | - |
| **端口 ID** | 端口的靜態唯一識別碼。 |
| **端口型別** | 顯示端口名稱及其功能說明。 |
| **端口說明** | 可選欄位，用於自由描述端口及其在工作流程中的角色。 |
| **業務識別碼** | 目標交易夥伴的特定識別碼。此值包含在傳出訊息的標頭中，也用於將傳入訊息路由到相應的 RosettaNet 端口。 |
| **業務位置** | 傳出訊息接收方的位置。 |
| **夥伴 URL** | 應將傳出訊息傳送到的交易夥伴公共端點。 |

#### 連線資訊

*與指定交易夥伴的連線參數相關的設定。*

| 設定 | 說明 |
| - | - |
| **RNIF 版本** | 生成 RosettaNet 訊息時使用的協議版本。 |
| **加密型別** | 加密有效負載、有效負載和標頭，還是都不加密。 |
| **資料簽章** | 是否簽署傳出訊息。 |
| **接收訊息安全性** | 是否要求傳入訊息包含簽章和加密。如果收到的訊息缺少必需的安全參數，則會引發錯誤。 |
| **連線逾時** | 端口在擲回逾時錯誤之前等待連線回應的時長（秒）。 |
| **測試指示器** | 控制前導標頭中的 `GlobalUsageCode`。勾選此項可將程式碼設定為 `Test`。如果未勾選，程式碼為 `Production`。僅當 **RNIF 版本**為 1.1 時需要。 |

#### 確認

*與 RosettaNet 確認相關的設定。*

| 設定 | 說明 |
| - | - |
| **自動確認** | 是否應自動傳送確認來回應傳入的 RosettaNet 訊息。 |
| **自動例外** | 是否應自動傳送例外來回應失敗訊息。 |
| **需要確認** | 是否應傳回確認來回應傳出的 RosettaNet 訊息。 |
| **安全性** | 確認是否應包含簽章塊，以驗證訊息完整性和接收方身份。 |
| **傳遞** | 確認應作為傳出 RosettaNet 訊息的直接回應傳回（同步），還是稍後作為單獨連線的一部分傳回（非同步）。建議使用同步回執，除非 RosettaNet 訊息非常大（50MB 是常見閾值），這種情況下處理訊息並傳遞同步回執可能會超過連線逾時時長。 |

#### 交易夥伴憑證

*與交易夥伴提供的公開金鑰憑證相關的設定。*

| 設定 | 說明 |
| - | - |
| **加密憑證** | 傳送訊息時用於 RosettaNet 加密的公開金鑰憑證。此憑證必須與交易夥伴的私有解密憑證配對，交易夥伴在共享 RosettaNet 配置詳細資訊時應提供此公開金鑰憑證。 |
| **驗證憑證** | 接收訊息時用於驗證 RosettaNet 簽章的公開金鑰憑證。此欄位通常不需要；大多數 RosettaNet 參與方使用同一個私有憑證進行簽章和解密。如果未指定此欄位，應用程式會使用**加密憑證**驗證簽章。 |
| **TLS 伺服器憑證** | 用於驗證 TLS/SSL 伺服器身份的公開金鑰憑證。僅當夥伴的 RosettaNet 系統要求 HTTPS 而非 HTTP 時才需要。如果交易夥伴未提供 TLS 伺服器憑證，可以將此設定留空，以允許底層 OS/JVM 執行憑證驗證，或將其設定為 `Any Certificate` 以無條件信任目標伺服器的身份。 |

### 進階選項卡

#### 備用本地個人設定

*覆蓋此特定 RosettaNet 端口在**個人設定**頁面上的配置。設定備用本地個人設定可讓你為某些交易夥伴使用不同的本地憑證和識別碼。*

| 設定 | 說明 |
| - | - |
| **本地業務位置** | 你的位置。覆蓋個人設定頁面上的**業務位置**。 |
| **本地業務識別碼** | 你的識別碼。覆蓋個人設定頁面上的**業務識別碼**。 |
| **私有憑證** | 用於解密傳入訊息並簽署傳出訊息的憑證。覆蓋個人設定頁面上的**私有憑證**。 |
| **憑證密碼** | 存取本地私有憑證所需的密碼。 |

#### TLS 用戶端身分驗證

*與需要雙向 TLS 身分驗證時的用戶端身分驗證相關的設定。*

| 設定 | 說明 |
| - | - |
| **使用個人設定** | 是否使用個人設定頁面上配置的**私有憑證**作為用戶端身分驗證的 TLS 憑證。 |
| **私有憑證** | TLS 用戶端身分驗證期間提供的私有憑證。僅當未使用個人設定頁面上的私有憑證時適用。 |
| **憑證密碼** | 存取 TLS 用戶端憑證所需的密碼。 |

#### HTTP 身分驗證

*與 HTTP 用戶端身分驗證相關的設定。*

| 設定 | 說明 |
| - | - |
| **HTTP 身分驗證** | 是否使用用戶端 HTTP 身分驗證。 |
| **HTTP 身分驗證型別** | 以加密格式 (Digest) 還是純文字 (Basic) 提供 HTTP 身分驗證憑據。僅當連線為 HTTPS 連線（而非 HTTP）時才使用 Basic 身分驗證。 |
| **使用者** | HTTP 用戶端身分驗證的使用者憑據。 |
| **密碼** | HTTP 用戶端身分驗證的密碼憑據。 |

#### 進階設定

\_不屬於前述類別的設定。

| 設定 | 說明 |
| - | - |
| **處理延遲** | 放入**交易**索引標籤的檔案延遲處理的時長（秒）。這是一箇舊版設定。最佳實踐是[使用 File 端口](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/flows/designing-a-flow.md#與本地檔案系統互動)管理本地檔案系統，而不是使用此設定。 |
| **RNIF 偵錯模式** | RosettaNet 接收方是否應傳回與 PIP 驗證或傳送方身分驗證相關的通訊錯誤。必須在傳輸雙方啟用此設定，才能傳回例外。 |
| **簽章演算法** | 簽署傳出訊息時使用的演算法。 |
| **啟用的 TLS 協議** | 建立出站連線時支援的 TLS/SSL 協議清單。最佳實踐是僅使用 TLS 協議。SSL v2 和 SSL v3 被認為存在漏洞，只有當夥伴不支援更高版本時才應使用。請注意，TLS v1.3 尚未普遍採用，如果目標伺服器不支援，可能會被拒絕。 |
| **安全傳輸** | 勾選此項以要求轉寄訊息時使用安全性。 |
| **本地檔案方案** | 為端口輸出的訊息分配檔名的方案。可以在檔名中使用宏，動態包含識別碼和時間戳等資訊。有關更多資訊，請參見[宏](#宏)。 |

#### 代理設定

這是一組用於識別連線所經代理並對其進行身分驗證的設定。預設情況下，本節使用 [安全設定](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>

#### 訊息

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

**注意：**以下設定已棄用，預設處於隱藏狀態。只有先前已啟用這些設定或將其配置為非預設值的端口才會顯示它們。若要保留成功處理的檔案副本，請在工作流程中右鍵單擊該端口，選擇**顯示成功路徑**，然後將成功路徑連線到 [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>

### 自動化索引標籤

#### 自動化設定

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

| 設定 | 說明 |
| - | - |
| **傳送自動化** | 到達端口的檔案是否會自動作為 RosettaNet 訊息傳送。 |
| **重試間隔** | 傳送失敗後重試前等待的分鐘數。當伺服器未回應傳送嘗試，或以否定回應表示未收到檔案時，會觸發重試。 |
| **最大次數** | 端口處理輸入檔案的最大次數。成功與否取決於伺服器成功確認以及（同步請求時）對回執的驗證。如果設定為 0，端口會無限期重試該檔案。 |
| **重新傳送間隔** | 重新傳送未確認訊息前等待的分鐘數。當伺服器收到檔案但未在預期時間內提供非同步確認時，會觸發重新傳送。 |
| **最大次數（非同步）** | 請求非同步確認時端口處理輸入檔案的最大次數。成功與否取決於伺服器成功確認後在**重新傳送間隔**內傳回非同步回執。如果未傳回成功的伺服器確認，則改用**最大次數**。如果設定為 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 通知** 設定。

## 建立連線

配置新的 RosettaNet 端口時，交易夥伴必須提供部分所需的連線詳細資訊。這些詳細資訊至少應包括：

* 業務識別碼
* 夥伴 URL
* 夥伴憑證

### 業務識別碼

在 RosettaNet 交易中，交易夥伴由其業務識別碼標識。傳送傳出請求時，業務識別碼用於請求標頭中以指示接收方。

若要建立 RosettaNet 自測，識別碼應設定為與[個人設定](https://docs.kasoftware.com/26.4/self-hosted/zh-Hant/getting-started/administration/profiles.md)頁面上的**業務識別碼**相同的值。

> [!NOTE]
>
> 此值區分大小寫。

### 夥伴 URL

夥伴 URL 是交易夥伴接收 RosettaNet 傳輸的端點。傳出的 RosettaNet 訊息會傳送到此目標端點，該端點對每個交易夥伴必須唯一。你可以使用 Web 瀏覽器測試夥伴 URL，以檢查網路或連線問題。

若要建立 RosettaNet 自測，目標 URL 應與個人設定頁面上的**接收 URL** 相同或幾乎相同。你可以將個人設定頁面中的域名替換為環回地址 localhost，以使 RosettaNet 交易保留在本地網路中。本地自測 URL 範例為 `http://localhost:8001/pub/Receive.rsb`。

如果未將域名替換為 localhost，RosettaNet 訊息會路由到本地網路之外。你可以利用此方式檢查網路配置設定，並確保訊息可以透過任何防火牆到達 知行之橋。

### 夥伴憑證

每個 RosettaNet 端口都必須為目標交易夥伴配置憑證。交易夥伴會提供與其交換 RosettaNet 訊息時進行加密和驗證所需的憑證。知行之橋 接受 X.509 公開金鑰憑證（副檔名為 .cer、.der 或 .pem 的檔案）。

通常，交易夥伴會提供一個憑證，應將其配置在**加密憑證**欄位中。

如果交易夥伴提供多個憑證，應說明每個憑證的用途。如果夥伴提供完整憑證鏈（例如從商業憑證頒發機構取得），則只需要配置葉憑證（鏈中的最後一個憑證）。

## 傳送和接收檔案

配置 RosettaNet 個人設定和特定夥伴的 RosettaNet 端口後，即可安全地傳送和接收檔案。

### 傳送檔案

在 RosettaNet 端口中，**交易**索引標籤顯示要傳送給目標交易夥伴的檔案。如果在[自動化](#自動化索引標籤)索引標籤上啟用了**傳送自動化**，到達端口**交易**索引標籤的檔案會自動打包並傳送。展開與已傳輸檔案關聯的行即可存取所有傳輸的日誌檔案。

在**交易**索引標籤上，選擇**更多 > 建立測試檔案**以生成一組簡單的測試檔案並傳送給交易夥伴。

### 重新傳送和重試

當預期交易夥伴傳回非同步確認，但未能在**重新傳送間隔**時長內（預設為 60 分鐘）傳回時，會觸發 RosettaNet 重新傳送。隨後應用程式會嘗試重新傳送傳輸。應用程式會繼續重新傳送訊息，直到收到確認為止或\*\*最大次數（非同步）\*\*用盡。

當交易夥伴的 HTTP 回應表明伺服器未收到傳輸時，會觸發重試。這可能表示網路或連線問題，通常是暫時性的。應用程式每隔**重試間隔**分鐘重試傳輸，直到傳輸被接收或**最大次數**用盡。

### 接收檔案

在 RosettaNet 端口中，**交易**索引標籤顯示應用程式已接收並路由到該端口的檔案（基於傳入 RosettaNet 訊息中存在的 RosettaNet 識別碼）。展開每個檔案行可顯示該傳輸的可用日誌清單。

這些檔案可在端口的**交易**索引標籤上檢視。如果端口連線到工作流程中的其他端口，檔案會自動從 RosettaNet 端口的**交易**索引標籤移動到工作流程中下一個端口的**交易**索引標籤。

RosettaNet 協議不允許主動從交易夥伴拉取檔案：RosettaNet 端口只能被動等待交易夥伴傳送檔案。

## 配置 PIP

Partner Interface Processes (PIP) 是 RosettaNet 用於傳輸各種業務流程資訊的邏輯 XML 文件。下面列出了常見 PIP：

| PIP | 說明 |
| - | - |
| 3A1 | 請求報價 |
| 3A2 | 請求價格和可用性 |
| 3A3 | 請求購物車傳輸 |
| 3A4 | 請求採購訂單 |
| 3A5 | 查詢訂單狀態 |
| 3A6 | 分發訂單狀態 |
| 3A7 | 通知採購訂單更新 |
| 3A8 | 請求採購訂單變更 |
| 3A9 | 請求取消採購訂單 |
| 3A10 | 通知報價確認 |
| 3A13 | 通知採購訂單資訊 |
| 3A14 | 分發計劃訂單 |
| 3B1 | 分發運輸預測 |
| 3B2 | 通知提前發貨 |
| 3B3 | 分發發貨狀態 |
| 3B4 | 查詢發貨狀態 |
| 3B5 | 請求發貨變更 |
| 3B6 | 通知已投標發貨 |
| 3B11 | 通知發貨訂單 |
| 3B12 | 請求發貨訂單 |
| 3B13 | 通知發貨訂單確認 |
| 3B14 | 請求取消發貨訂單 |
| 3B18 | 通知發貨單據 |
| 3C1 | 退貨 |
| 3C2 | 請求融資批准 |
| 3C3 | 通知發票 |
| 3C4 | 通知發票拒絕 |
| 3C5 | 通知賬單 |
| 3C6 | 通知匯款通知 |
| 3C7 | 通知自開票發票 |

## 宏

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

知行之桥 支援這些宏，它們都使用以下語法：`%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.