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

# NetSuite Select 配置

> 從 NetSuite 檢索資料並將其帶入知行之橋。

Select 操作從 NetSuite 檢索資料並將其帶入 知行之桥。

## 表和列

配置並測試連線後，點選**操作**索引標籤。確保**操作**下拉式清單設為 **Select**，然後點選**新增表結構**以定義表和列。

選擇**結構型別**。結構型別決定端口如何查詢 NetSuite。可用型別包括：

<ul><li>[父表和子表](#父表和子表)：端口使用父子層次結構查詢表。可以將其他表新增為子表，或在工作流程中使用多個端口。</li>
<li>[聯接表](#聯接表)：端口發出一個 JOIN 查詢，將兩個或多個相關表的資料合併。</li></ul>

以下各節介紹這些結構型別。

> [!NOTE]
>
> “聯接表”只向 NetSuite 發出一個查詢。對於實施 API 速率限制的資料來源，這比“父表和子表”方式更高效。

### 父表和子表

使用下拉式清單從 NetSuite 中選擇目標表。

![源結構編輯器中用於選擇目標表的下拉式清單](https://docs.kasoftware.com/26.4/images/dbsa_select_tableadd_263.png)

使用箭頭向結構中新增子表。下圖以 Bill 為父表，並準備選擇一個子表。完成選擇後，點選**應用**。

![表清單，其中 Bill 為父表，並準備選擇子表](https://docs.kasoftware.com/26.4/images/dbsa_tablelist_263.png)

#### 結果

點選**應用**後，結果結構中會出現 **Items** 節點。要配置查詢的列和過濾器，請點選表名節點上的省略號（**...**），然後選擇**表設定**。

隨後會開啟**編輯 \[表名] 設定**對話方塊，其中包含**列**和**過濾器**兩個索引標籤。

![編輯表設定對話方塊，其中列索引標籤顯示源表標籤](https://docs.kasoftware.com/26.4/images/dbsa_join_results.png)

**列**索引標籤列出所選表中的所有列。每列都帶有表示其源表的標籤。預設選中所有列；取消選中某列可將其從查詢輸出中排除。

> [!NOTE]
>
> 可以點選**源**表名稱連結傳回**編輯源結構**窗格，以選擇更多表。有關更多資訊，請參閱[子表](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/netsuite/netsuite-ac.md#child-tables)。

在**列**索引標籤底部，使用**排序依據**欄位按列對輸出排序，並選擇 **ASC**（升序）或 **DESC**（降序）。

**過濾器**索引標籤用於新增過濾器，以限制端口選擇的行。有關更多資訊，請參閱[過濾器](#過濾器)。

#### 選項

**編輯源結構**對話方塊右側的**選項**面板包含控制端口如何處理記錄的設定。這些設定與表設計器一起顯示，並應用於整個查詢。

<ul><li>**僅處理新增或更改的記錄**：啟用增量處理，使端口只選擇自上次執行後新增或更改的行。</li>
<li>**處理行後以 \[值] 更新 \[列]**：每行處理完成後，以指定值更新某一列。</li></ul>

還可以在**編輯源結構**對話方塊頂部切換**預覽 XML**或**程式碼檢視**，以預覽輸出結構或檢視底層 XML 配置。

### 聯接表

選擇**聯接表**作為結構型別後，會顯示 JOIN 設計器。使用該設計器定義 NetSuite 中各表之間的關係。端口會將配置轉換為一個 JOIN 查詢。

![包含空聯接行欄位的 JOIN 設計器](https://docs.kasoftware.com/26.4/images/dbsa_join_designer.png)

JOIN 設計器中的每一行表示一個聯接關係，幷包含以下欄位：

<ul><li>**聯接型別**：要執行的 SQL 聯接型別。可用選項取決於 NetSuite 的支援情況，常見選項包括 **Inner Join**、**Left Join**、**Right Join** 和 **Full Outer Join**。</li>
<li>**左表**：聯接左側的表。第一行的左表是查詢的基表。</li>
<li>**左列**：左表中用於聯接的列。</li>
<li>**右表**：聯接右側的相關表。</li>
<li>**右列**：右表中與左列匹配的列。</li></ul>

以下範例透過共享的 **Id** 列將 **Bill** 表與 **Bill1** 表聯接：

![Bill 和 Bill1 表透過 Id 列聯接的 JOIN 設計器](https://docs.kasoftware.com/26.4/images/dbsa_join_addtable.png)

這會生成等效於以下內容的查詢：

```sql theme={null}
SELECT ... FROM Bill INNER JOIN Bill1 ON Bill.Id = Bill1.Id
```

要聯接兩個以上的表，請點選**新增聯接**再新增一行。每個新增行都會將一個新表聯接到前一行的結果。

完成聯接配置後，點選**應用**。

#### 結果

點選**應用**後，結果結構中會出現 **Results** 節點。要配置聯接輸出的列和過濾器，請點選 Results 節點上的省略號（**...**），然後選擇**結果設定**。

隨後會開啟**編輯結果設定**對話方塊，其中包含**列**和**過濾器**兩個索引標籤。

![編輯結果設定對話方塊，其中列索引標籤顯示源表標籤](https://docs.kasoftware.com/26.4/images/dbsa_join_results.png)

**列**索引標籤列出所有聯接表中的全部列。每列都帶有表示其源表的標籤。預設選中所有列；取消選中某列可將其從查詢輸出中排除。

> [!NOTE]
>
> 當兩個聯接表包含同名列時，端口會自動使用表名作為重複列的字首，以避免衝突。

在**列**索引標籤底部，使用**排序依據**欄位按列對輸出排序，並選擇 **ASC**（升序）或 **DESC**（降序）。

**過濾器**索引標籤用於新增過濾器，以限制端口選擇的行。有關更多資訊，請參閱[過濾器](#過濾器)。

#### 選項

**編輯源結構**對話方塊右側的**選項**面板包含控制端口如何處理記錄的設定。這些設定與 JOIN 設計器一起顯示，並應用於整個聯接查詢。

<ul><li>**使用列 \[x] 處理新增或更改的記錄**：啟用增量處理，使端口只選擇自上次執行後新增或更改的行。在“聯接表”配置中，此列必須來自基表（最左側的表）；聯接表中的列不可用於此設定。</li>
<li>**處理行後以 \[值] 更新 \[列]**：每行處理完成後，以指定值更新某一列。</li></ul>

還可以在**編輯源結構**對話方塊頂部切換**預覽 XML**或**程式碼檢視**，以預覽輸出結構或檢視底層 XML 配置。

## 過濾器

可以選擇新增過濾器，以限制端口選擇的資料。在設定對話方塊中點選**過濾器**索引標籤進行配置。端口會將過濾器轉換為查詢語法。

> [!NOTE]
>
> 如果用例不需要，則無需對資料應用過濾器。

### 建立過濾器

按照以下步驟建立過濾器：

<ol><li>點選**新增過濾器**。</li>
<li>在列下拉式清單中選擇要過濾的列。</li>
<li>在條件下拉式清單中選擇過濾條件。可用條件取決於所選列的資料型別。例如，數值列支援**小於或等於**，而字串列支援**包含**。</li>
<li>在值欄位中輸入值。如果條件不需要值（例如**為空**），則不會顯示值欄位。</li></ol>

下圖展示了對 **Vendor** 列設定過濾器的範例。應用此過濾器後，端口僅選擇 **Vendor** 列包含 **CData** 的行。

![Vendor 列配置為包含 CData 的過濾器](https://docs.kasoftware.com/26.4/images/dbsa_filter.png)

### 過濾器組

點選**新增過濾器**可建立多個過濾器。預設情況下，所有過濾器屬於同一組。點選**新增組**可建立巢狀組，並使用不同邏輯分隔過濾器。

每個組的頂部都有以下選項：

<ul><li>**NOT** 開關：反轉整個組的邏輯。例如，對包含“Amount 小於或等於 5000”的組啟用 NOT，會讓端口僅選擇 Amount 大於 5000 的行。</li>
<li>**And / Or** 開關：確定該組與相鄰過濾器或組之間的關係。
<ul><li>選擇 **And** 時，除相鄰條件外，該組條件也必須為真。</li>
<li>選擇 **Or** 時，該組條件可作為相鄰條件的替代項。</li></ul></li></ul>

下圖展示了包含多個過濾器組的範例。

![顯示 AND 和 OR 邏輯的多個過濾器組](https://docs.kasoftware.com/26.4/images/dbsa_filter_group.png)

在此範例中，必須同時滿足以下所有條件：

<ul><li>**Vendor** 列包含 **CData**</li>
<li>**Status** 列等於 **Active** 或 **Pending**</li>
<li>**Amount** 列\_不\_小於或等於 **5000**（即 Amount 大於 5000）</li></ul>

滿足過濾條件後，端口會選擇匹配的資料，並將其傳遞到工作流程下游。

\##知行之橋工作流程範例

為 Select 配置的 NetSuite 端口選擇表和列後，將端口放置在 知行之桥 工作流程的開頭。下面的螢幕截圖描述了一個範例流程，其中包含一個 NetSuite Select 端口、一個 XML Map 端口、一個 CSV 端口和一個 File 端口：

![](https://docs.kasoftware.com/26.4/images/dbsa_select_flow.png)

此範例工作流程中的資料透過以下步驟：

<ol><li>**NetSuite\_Select** 端口從 NetSuite 連線中提取資料。</li>
<li>此資料作為 **來源檔案** 傳遞給 **XML\_Map** 端口，後者對映到 **源** 的樹狀結構中。</li>
<li>來自 **CSV1** 端口的資料作為 **目的檔案** 傳遞給 **XML\_Map** 端口，後者對映到 **目標** 的樹狀結構。
![](https://docs.kasoftware.com/26.4/images/dbsa_xmlmap_select.png)</li>
<li>**XML\_Map** 端口嘗試自動將 **源** 元素對映到具有相同名稱的 **目標** 元素。你可以手動更改這些並透過將元素從 **源** 拖到 **目標** 來填充空白對映。
![](https://docs.kasoftware.com/26.4/images/dbsa_xmlmap_elements.png)</li>
<li>來自 **CSV1** 的檔案已經用來自 **NetSuite\_Select** 的資料進行了修改，然後向下傳遞來自 **CSV1** 的工作流程。</li></ol>


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