如何使用SuiteScript在NetSuite中获取模块的数据?

时间:2015-06-03 13:10:02

标签: javascript api rest netsuite

我正在使用NetSuite,我想访问一些记录/表单,如员工,物品等。我读过有关使用SuiteScript从NetSuite获取数据以及在NetSuite中创建新模块的内容。我想知道如何从NetSuite中的记录访问现有数据?例如,我想获得所有员工,项目或其他记录类型的列表。我无法理解如何访问此信息。我已经获得了一些NetSuite API记录,字段&形式。请帮助我,因为我是NetSuite的初学者。

1 个答案:

答案 0 :(得分:1)

以下是在.NET中使用NetSuite Web服务的示例,其中我加载了商机记录。加载员工或其他记录的过程将是相同的。完成基础工作后,请阅读NetSuite帮助中的NetSuite Records Browser文档。

// create objects for netsuite login
NetSuiteService netsuite = new NetSuiteService();
CookieContainer cookie = new CookieContainer();
Passport passport = new Passport();
RecordRef role = new RecordRef();

// hard code for administrator role 3
role.externalId = "3";

// latest NetSuite web services url
netsuite.Url = "https://webservices.sandbox.netsuite.com/services/NetSuitePort_2015_1";
netsuite.CookieContainer = new CookieContainer();
passport.account = "6669990";
passport.email = "john.doe@stackoverflow.com";
passport.password = "P@SSW0RD!";
passport.role = role;

System.Console.WriteLine("\nLogging into NetSuite ... ");
System.Console.WriteLine("\nUsername: " + passport.email);
System.Console.WriteLine("\nAccount: " + passport.account);

// try loggin into web services
Status status = netsuite.login(passport).status;

if (status.isSuccess)
{
    // read opportunity record id 2236873
    Opportunity oppty = NSFunc.getOpportunity(netsuite,"2236873");
    System.Console.WriteLine("\nNetSuite Login: " + status.isSuccess.ToString());
    netsuite.logout();
}
else
{
    System.Console.WriteLine("\nNetSuite Login: " + status.isSuccess.ToString());
}

使用NetSuite SuiteScript 而不是Web服务访问数据,而不是编写SuiteScript(JavaScript)文件,使用(.js)文件扩展名保存它们并将它们上传到NetSuite文件柜。

您的JavaScript(也称为SuiteScript)文件将包含常规JavaScript,并将使用您所谈论的API函数。 NetSuite在线帮助中有一些示例SuiteScripts,这里有一个customizing the page load of a record

上传到文件柜后,您可以创建NetSuite脚本记录并定义脚本的使用方式,例如文件名,应该使用哪个函数,表单上的哪个事件应该导致JavaScript函数触发(例如,保存之前,保存之后)。最后,您将脚本部署到“测试”,然后您可以测试/调试它。还有很多东西,但这应该让你走上正轨。网站NetSuiteGo包含有关NetSuite SuiteScript的信息,它帮助我开始使用。

祝你好运。