我正在尝试将CSV文件自动导入Netsuite。 (例如,我希望netsuite每晚检查一次特定的根文件夹并将这些CSV文件导入或导入Netsuite。例如,我想要导入一些BOM信息并映射到Netsuite变量?< / p>
这可能吗?如果没有,我是否至少能够通知用户特定文件夹中有新文件等待导入?
p.s我可以导入常规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 :(得分:0)
有几个步骤可以做到这一点。
首先创建您希望脚本使用的CSV导入映射。保存映射时,应该有一个名为“Script Id”的字段。您的脚本将使用此字段中的值。
创建一个预定脚本,该脚本将检查新文件的文件夹位置并自动触发导入。在此计划脚本中,您将使用nlapiSubmitCSVImport()并使用上面的“脚本ID”字段来触发CSV导入向导。在NS帮助中搜索nlapiSubmitCSVImport()以获取更多详细信息。
您无法导入XLS文件,CSV导入中仅支持CSV文件。
答案 1 :(得分:0)
不幸的是,我没有足够的声誉来对Rusty Shackles的回答添加评论。您曾询问过更多自动化问题,虽然您无法直接在suitecript中执行此操作,但您绝对可以使用内置于netsuite中的Web服务将文件推送到您的帐户中。这将要求您在本地服务器上拥有一个程序,该程序使用Web服务在每晚的设定时间将.csv压入您的NetSuite帐户。然后,您可以使用预定脚本在以后的某个时间触发导入。