Skip to main content
CSV Map 端口使用 ArcScript 將平面 XML 檔案轉換為 CSV、TSV 和 PSV 檔案格式。平面 XML 檔案是指除根元素之外深度不超過兩層的檔案。

核心功能

  • 使用 ArcScript 範本將扁平 XML 檔案轉換為 CSV、TSV 和 PSV 格式
  • 提供用於簡單對映的視覺化設計器(支援欄位自動匹配),併為複雜轉換提供程式碼檢視
  • 支援透過 XPath 導航從巢狀 XML 結構中提取值,並具備動態範本生成功能

概覽

CSV Map 端口有兩種操作模式,視覺化設計器和以指令碼為中心的指令碼。設計器支援在文件型別之間視覺化地建立簡單的關係。更復雜的翻譯需要指令碼,指令碼利用強大的 ArcScript 指令碼語言在 XML 和平面檔案結構之間建立對映範本。 首先,在”設定”索引標籤中上傳一個範例來源檔案目的檔案。如果兩個範例檔案的結構都允許設計器驅動的對映,則視覺化設計器將填充源和目標欄位。該應用程式還將嘗試用儘可能多的目標結構填充指令碼視窗。

端口配置

本節包含所有可配置的端口屬性。

對映索引標籤

上傳檔案以啟動源欄位和目標欄位的設計驅動對映。 點選 上傳檔案,然後選擇您的來源檔案和目的檔案。
  • 來源檔案 代表輸入文件的 XML 結構。端口處理的任何檔案都應具有匹配的 XML 結構。要支援設計驅動對映,此檔案必須是簡單的 XML、CSV、PSV 或 TSV 結構。
  • 目的檔案 代表輸出文件的結構。要使用設計驅動對映,此檔案必須是簡單的 XML、CSV、PSV 或 TSV 結構。

對映

定義輸入和輸出檔案之間的對映關係。設計器檢視可以對映簡單的 XML、CSV、TSV 和 PSV 結構,而指令碼檢視可以對映更復雜的 XML 結構。有關更多詳細資訊,請參見使用設計器使用指令碼檢視

設定索引標籤

端口配置

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

進階設定

進階設定

訊息

日誌

其他

自動化索引標籤

自動化

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

效能

通知索引標籤

SLA 索引標籤

使用設計器

視覺化設計器僅適用於結構簡單的 XML、CSV、TSV 和 PSV 檔案。下面是一個簡單的 XML 文件作為來源檔案的例子:
此範例來源檔案可以與以下 CSV 文件配對作為目的檔案:
當這些檔案被配置為來源檔案和目的檔案時,設計器將在 列中顯示來源檔案中每一行的行(actor_id, first_name,和 last_name)。對於源中的每個欄位,使用下拉功能表選擇適當的 目標 列。應用程式將根據列名自動嘗試匹配源欄位和目標欄位。在上面的範例中,actor_id 行將自動與 id 列匹配。 對映設計器

使用指令碼檢視

指令碼檢視提供了使用 ArcScript 手動生成對映範本的能力。這允許對可能的輸入和輸出格式進行更精細的控制。指令碼檢視定義了目的檔案呈現後的外觀,ArcScript 元素使用源文件中的值動態填充範本。ArcScript 元素都以 arc 字首開頭,例如 <arc:set>。指令碼檢視中任何不是 ArcScript 的內容都將作為輸出檔案的一部分。

導航 XML 輸出

ArcScript 支援導航複雜的 XML 結構,以便從來源檔案中解析出值。xmlDOMSearch 函式將 xpath 作為輸入,並在給定的路徑上載入 XML 結構。該操作針對在源文件中找到的 xpath 的每個例項進行迴圈;要載入整個文件並避免迴圈,請將 XML 源的根元素作為輸入提供給 xmlDOMSearch。例如:
一旦載入了 XML 文件,xpath 格式化器支援在指定的路徑從 XML 中讀取值。格式化器接受絕對 XPath 以及相對於 xmlDOMSearch 載入的路徑的 XPath。與所有格式化器一樣,xpath 格式化器只能在方括號 [] 內使用。例如:
以下 XML 作為上述指令碼的範例輸入:
在本例中,xmlDOMSearch 操作將迴圈存取 root 中的每個 author 元素。在每個 author 迴圈中,來自 name 元素的值在輸出檔案中作為內容讀取。這種情況下的輸出檔案如下所示:

範本輸出資料

指令碼檢視用作輸出檔案的範本,而 ArcScript 將值填充到定義的範本中。舉個簡單的例子,如果資料應該被格式化為逗號分隔的值,那麼這些逗號可以作為指令碼檢視的一部分被包括進來,以便為 ArcScript 函式提供結構。因此,CSV 檔案可以從更復雜的 XML 結構中生成。 以下面的 XML 為例,它包含巢狀元素,不適合使用設計器方式:
透過將適當的路徑傳遞給 ArcScript 的 xpath 格式化器,可以輕鬆檢索巢狀元素。這些格式化器可以放在逗號內和標題名稱之後,以提供所需的 CSV 結構,並且一個附加的 csvescape 格式化器確保這些值被正確引用:
透過常數範本資料和 ArcScript 的結合使用,可以生成各種文字檔案。

附加指令碼功能

由於完整的 ArcScript 在指令碼檢視中可用,因此可能需要利用 ArcScript 運算器。例如,如果來源檔案只包含資料庫中某個項的標識,但需要該項的實際名稱,則 dbQuery 操作可以用來查詢對應的 Id 的名稱。 ArcScript 還支援對映範本中的條件邏輯。arc:if 關鍵字是可用於幫助在範本中執行條件邏輯的關鍵字之一。例如,如果來源檔案包含有關 QuickBooks 中客戶的資訊,則可能需要對未清餘額的客戶執行不同的業務邏輯,對已全額付款的客戶執行不同的業務邏輯。這個用例的一個簡單範例可能如下所示:

範例