2014-09-26 60 views
0

我想將CSV文件自動導入到Netsuite中。 (例如,我想讓netsuite每晚檢查一次特定的根文件夾並將這些CSV文件導入或導入到Netsuite中。例如,我想要導入一些BOM信息並將其映射到Netsuite變量?在Netsuite中自動導入CSV文件?

這可能嗎?如果沒有,我會至少能夠通知用戶有特定文件夾中等待被導入一個新的文件?

PS我可以導入常規的XLS文件,而不是CSV?

感謝您的幫助。

乾杯,

詹姆斯

更新這是我到目前爲止,不知道它是否會工作作爲一個SuiteScript一個Portlet

function scheduledimporting(type){ 

var csvMap = '15'; //saved CSV import id 
//var csvFile = nlapiLoadFile("5828"); //csv file id from filecabinet     
var urlrequest=nLapiRequestURL('https://...........',null,a); 
var body=response.getBody(); //get the body of the message 
var csvImport = nlapiCreateCSVImport();//creating a new csv import 

/*** 
If the file that I'm pulling in is a CSV, would i get the body as CSV? 
DO I still need to go through Prsing the body and transform it to JSON Object 
If I do, how would I transfer it back to CSV ? 
***/ 
csvImport.setMapping(csvMap);//setting import map 
csvImport.setPrimaryFile(body.getValue());//file to be imported 
csvImport.setOption("jobName", "Test1111");//setting job status' job name  
var csvSubmitId = nlapiSubmitCSVImport(csvImport);//submitting the CSV 

}

回答

0

有幾個步驟來做到這一點。

  1. 首先創建您希望腳本使用的CSV導入映射。保存映射時,應該有一個名爲'Script Id'的字段。該字段中的值將被您的腳本使用。

  2. 創建一個計劃腳本,該腳本將檢查新文件的文件夾位置並自動觸發導入。在這個計劃的腳本中,您將使用nlapiSubmitCSVImport()並使用上面的'Script Id'字段觸發CSV導入嚮導。在NS幫助中搜索nlapiSubmitCSVImport()以獲取更多詳細信息。

  3. 您無法導入XLS文件,CSV導入中僅支持CSV文件。

+0

感謝您的幫助生鏽,我能夠從外部驅動器而不是文件櫃導入文件。 (讓我們說一個驅動器在服務器,或本地驅動器?)。這不需要我自己將文件上傳到文件櫃。那麼整個事情會自動化?我一直無法找到除了nlapiLoadFile之外的任何東西,它使用文件櫃中的內部ID嗎? – 2014-09-29 23:28:30

+0

NetSuite API無法訪問外部驅動器。您需要將文件上傳到NetSuite文件櫃中。 – 2014-09-30 23:27:18

+0

我可以使用nLapiRequestURL嗎?並通過鏈接訪問它? – 2014-10-03 18:06:16

0

不幸的是,我沒有足夠的知名度給Rusty Shackles答覆添加評論。你問到了更多的自動化操作,雖然你不能直接在suitescript中實現,但你絕對可以使用內置於netsuite中的web服務將文件推送到你的帳戶。這需要您在本地服務器上安裝一個程序,該程序使用Web服務在每個特定時間將.csv推入您的NetSuite帳戶。然後,您可以使用計劃腳本在某個時間之後觸發導入。

+0

感謝您的信息,你能詳細說明這一點(我將如何將文件推送到內閣)?我剛開始與Netsuite合作。我應該使用RESTlet還是Suitelete? :) @starholme – 2014-10-09 00:14:24