Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript将csv文件从NetSuite中的文件柜传递到ftp服务器?_Javascript_Ftp_Netsuite - Fatal编程技术网

如何使用JavaScript将csv文件从NetSuite中的文件柜传递到ftp服务器?

如何使用JavaScript将csv文件从NetSuite中的文件柜传递到ftp服务器?,javascript,ftp,netsuite,Javascript,Ftp,Netsuite,你能帮我用JavaScript完成这个任务吗 我有一个任务,如果我手动执行,它看起来如下: 我在NetSuite中创建保存的搜索 在csv中下载已创建并保存的搜索结果 我使用FileZilla将这个文件放在ftp服务器上。(我以前和服务器有一个连接:写一个域、用户名和密码——仅此而已) 现在,需要通过sutlet脚本解决它。 1.创建保存的搜索-完成 2.使用内容中保存的搜索结果创建csv,并将其放入NetSuite中的文件柜中-完成 3.好的,现在我有一个需要我的文件,但我不知道如何通过ftp

你能帮我用JavaScript完成这个任务吗

我有一个任务,如果我手动执行,它看起来如下:

  • 我在NetSuite中创建保存的搜索
  • 在csv中下载已创建并保存的搜索结果
  • 我使用FileZilla将这个文件放在ftp服务器上。(我以前和服务器有一个连接:写一个域、用户名和密码——仅此而已)
  • 现在,需要通过sutlet脚本解决它。 1.创建保存的搜索-完成 2.使用内容中保存的搜索结果创建csv,并将其放入NetSuite中的文件柜中-完成 3.好的,现在我有一个需要我的文件,但我不知道如何通过ftp传递它

    *我试着读了几篇文章,但坦率地说并不能解决我的问题。此外,他们的文章似乎是关于手动方法而不是自动方法

    这个算术-*

    var searchResult=Contacts.run().getRange(0999);
    log.debug('Contacts',searchResult);
    变量头='内部ID'+';'+'名字“+”;“+”姓';
    var-Content=“”;
    对于(var i=0;i
    NetSuite不支持ftp,它只支持sftp。

    NetSuite支持sftp、ftp和sftp在不同的端口号上运行,但是ftp以纯文本格式传输数据,这会损害您的安全性,使用sftp是更好的选择,因为它将以加密格式传输数据,安全性得到保证

    在您的示例中,我相信您调用的是FTP请求,在这种情况下将不起作用。

    Oki

    现在,你提到的那篇文章是对的:为什么?因为能够使用SFTP的第一步是生成GUID。您谈论的是手动方法,是的,包括那篇文章中的方法,但这不是问题,因为一旦生成了GUID,您就不需要更改它,因此这是一次性操作,除非您的ftp凭据更改

    因此,第一步:使用“ursuscode”创建Suitelet。部署该suitelet并使用它生成GUID(这是一个表单,您需要在其中设置ftp密码、主机…)。使用相同的表单,然后可以生成主机密钥(检查视频)

    第二步,在代码中使用生成的GUID和主机密钥

    第三步,添加上载文件的代码:从netsuite帮助页面,以下是一个示例:

    connection.upload({
                directory: 'relative/path/to/remote/dir',
                filename: 'newFileNameOnServer.js',
                file: myFileToUpload,
                replaceExisting: true
            });
    
    顺便说一下,您可以上载文件,而无需再次保存和重新加载()

    注意:记住这是一个SFTP,所以可能只支持SFTP而不支持FTP

    建议:关于GUID(以及连接所需的其他数据),我建议您使用脚本参数为脚本代码提供GUID,因此如果密码更改,您可以重新生成GUID并更新脚本参数值,而无需触摸代码

    希望这有帮助

    connection.upload({
                directory: 'relative/path/to/remote/dir',
                filename: 'newFileNameOnServer.js',
                file: myFileToUpload,
                replaceExisting: true
            });