CSV Import 是在執行大量資料導入時一個非常常用的功能。今天我們以更新 Sales Order Memo 欄位、建立一張 Sales Order 作為範例操作,執行大量資料的更新。
更新 Sales Order Memo 欄位
| 1. 首先到路徑 Steup> Import/Export> Import CSV Records | ![]() |
| 2. 可以看到 Import Assistant 頁面,左側有 Steps,會按步驟進行 | ![]() |
| 3. 目前在 Step 1. Scan & Upload File 首先選擇要 Import 的種類與主檔: Import Type: Transactions Record Type: Sales Order | ![]() |
| 4. 下面可以看到一些 CSV 編碼,以及格式的設定,依照檔案編碼與格式選擇適合的選項 | ![]() |
| 5. 在下方選擇 CSV file | ![]() |
| 6. CSV 檔案內容如下,1st row 為 header,2nd row 開始都是需要 update 的 value | ![]() |
| 7. 設定好之後點選 Next | |
| 8. Step 2. Import Options & Step 3. File Mapping 本次的 Import 屬於更新,因為 Sales order 已經存在,所以在 Data Handling 選擇 Update;Advanced Options 的設定先不做任何變動,點選 Next | ![]() |
| 9. Step 4: Field Mapping 在 Field Mapping 的頁面中,由於我們的 CSV 檔案標頭,等於 NetSuite 內的欄位 ID,因此 field mapping 會自動產生 如果沒有產生的話,使用者可以左側的 CSV column 去 mapping 右邊的 NetSuite Column,設定好之後,點選 Next | ![]() |
| 10. Step 5: Save Mapping & Start Import 在這個頁面可以決定,這一次的import需不需要將field mapping的部分儲存,如果儲存的話,可以在路徑:Steup > Import/Export > Saved CSV Imports中找到,下次有類似的資料需要更新就可以直接使用,不需要再重新 Mapping 一次,選擇適當的 CSV 檔案即可 這個例子我們選擇儲存,輸入名稱後點選 Save & Run | ![]() |
| 11. Verify result 完成後 CSV Import 便會開始執行,可以注意這個綠色匡中有一段Import Job Status可以查看目前 CSV Import 的進度 | ![]() |
| 12. 點選後可以看到: Status: Completed Message: 1 of 1 records imported successfully 表示 CSV 已經成功 import 若有錯誤的話也可以在此看到 log | ![]() |
| 13. 此時再到該張 Sales order 內就可以看到 Memo 已經被 Update | ![]() |
使用 CSV Import 建立一張 Sales Order
- Validate Customer
- Date
- At least 1 item
| 這次的測試資料: Customer: 測試客戶 ID#2538 Date: 23/09/2021 Item: 測試 item(ACC00002),ID#1175 & 501 | ![]() |
建立 CSV File
| 利用文字編輯軟體或是 Excel 將剛剛的資訊填入。 可以看到多了一個 External ID 的欄位,這個欄位主要是告訴 NetSuite, 相同 External ID 的 row 都視為同一筆 Sales Order。而 NetSuite 會將同樣 External ID 的第一筆 row 當做主檔(Main Line)內容,後面的 row 都會當作是 item sublist 的內容 所以對於 test_order_1 而言,row#2 是主檔內容,row#3 & row#4 是 item 資訊 | ![]() |
執行 CSV Import
| 1. 開啟 CSV Import Assistant | ![]() |
| 2. 填入以下內容後按 ,Next Import Type: Transactions Record Type: Sales Order Select CSV File | ![]() |
| 3. Import Option 選擇 ADD,Next | ![]() |
| 4. 接下來到 Field mapping 的部分 | ![]() |
| 5. 這邊我們需要注意一件事情,NetSuite 預設是透過 Name 的方式進行對應,但我們的 CSV 內填入的都是 ID,所以我們需要在 Field Mapping 這邊更改 首先更改 Entity 的部分,點一下 Entity 旁邊的小按鈕 | ![]() |
| 6. Choose Reference Type 的地方,選擇 Internal ID, click “Done” | ![]() |
| 7. 相同的也把 Item 從 Names 改成 Internal ID, 完成後 Click Next,並選擇 “Save & Run” | |
| 8. Status 頁面確認跑完沒有錯誤之後,可以在路徑 Transactions > Sales > Enter Sales Orders > List 查看結果 | ![]() |
| 9. 可以看到第一筆,就是我們 透過 CSV Import 產生的 Sales order | ![]() |
| 10. 查看 Sales Order 內容,也確認出現兩筆 item,數量分別為 2 跟 3 這樣就表示 CSV Import 成功 | ![]() |
小記
- 除了簡單的 CSV Import update/create 之外, 還可以做很多操作,比方說更新一些在 UI 上不允許更新的 value,有時候也能透過它來更改。
- 在處理大量資料時,使用 Import Assistant 的速度會比透過 script 來得更快更有效率。
相關網站
NetSuite 文章 | CSV Imports Overview
NetSuite 文章 | N/task Module – task.CsvImportTask
本站文章 | NetSuite Order to Cash flow
專注於系統客製化、系統維運與系統優化領域的團隊。致力於讓使用者系統變好用!
NetSuite Record Export 已在Google Chrome Web Store上架,歡迎任何反饋。
合作: info@inzaghi-corp.com























