# 循環參照

如果資料結構中存在循環參照 (迴圈)，這表示表格的關聯方式會讓兩個欄位之間有不只一個的關聯路徑。

請執行下列動作：

1. 在 Scripting Tutorial 應用程式中開啟資料載入編輯器。

2. 按一下 the 建立新區段 icon 以新增指令碼區段。

3. 命名區段 Region。

4. 在右側功能表的 DataFiles 之下，按一下選取資料。

5. 上傳然後選取 Region.txt。系統將開啟資料預覽視窗。

6. 選取所有欄位，確保選取了欄位名稱下的內嵌欄位名稱，在載入資料時包含表格欄位的名稱。

7. 按一下 新增。

8. 按一下載入資料。

   這種情況可能是您的資料載入出現錯誤。循環參照已建立。資料載入進度視窗將顯示錯誤訊息，表明在載入過程中找到循環參照。然而，載入已完成且應用程式已儲存。

9. 開啟資料模型檢視器。

   您可拖放表格進行重新組織，以便查看表格之間的關聯。

   資料模型檢視器 顯示循環參照

   資料模型檢視器 顯示循環參照

   資料模型檢視器資料模型檢視器 顯示循環參照 ![顯示循環參照的資料模型檢視器。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial-circular-reference.png)

   紅色虛線表示已建立循環參照。由於這會導致資料解譯產生語意模糊，因此您應避免這種情況。

## 解決循環參照

為了能夠瞭解導致循環參照的原因，讓我們仔細看下資料模型檢視器中的表格。

在上述螢幕擷取畫面的 Table1 和 Table2 中，您可看到兩個表格有相同的 Date 欄位。您還會看到 Table1 和 Region 有相同的 SalesKey 欄位。最後，請注意，Table2 和 Region 有相同的欄位 Week。換言之，迴圈 (即循環參照) 已建立。由於這可導致稍後的資料分析出現問題，因此應該移除。

最簡單的解決方法是重新命名或移除其中一個欄位。在此情況中，我們載入我們應用程式不需要的部分資料，我們可以將其移除。

請執行下列動作：

1. 開啟資料載入編輯器。
2. 按一下區段 Region，然後刪除 LOAD 陳述式中的以下兩列：

   `"Week",` `SalesKey`
3. 確保同時移除 "Region Code" 後的逗號。

   您的指令碼現在應如下所示：
   ```
   LOAD
       Region,
       "Region Code"
   FROM [lib://DataFiles/Region.txt]
   (txt, codepage is 28591, embedded labels, delimiter is '\t', msq);
   ```
4. 按一下載入資料。
5. 開啟資料模型檢視器。

   不想要的 Region 參照現已移除。

   顯示循環參照已移除的資料模型檢視器

   顯示循環參照已移除的資料模型檢視器

   顯示循環參照已移除的資料模型檢視器![顯示循環參照已移除的資料模型檢視器。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial-circular-reference-fixed.png)