Javascript 似乎未调用SuiteScript方法

Javascript 似乎未调用SuiteScript方法,javascript,netsuite,suitescript,Javascript,Netsuite,Suitescript,我创建了一个脚本,用于在创建销售订单时通过电子邮件将创建的记录发送给我。下面的代码在我用于测试的NetSuite沙箱帐户上运行得非常好。然而,在制作网站上,我从未收到预期的电子邮件。我已启用suitescript并在电子邮件首选项中指定了我的电子邮件 当我故意创建一个语法错误时,这会在创建销售订单时出现。因此,该脚本似乎与销售订单的创建有关,但该方法并未执行。我不确定我错过了什么 我的剧本: function OnAfterSubmit(dataIn) { var today = new Dat

我创建了一个脚本,用于在创建销售订单时通过电子邮件将创建的记录发送给我。下面的代码在我用于测试的NetSuite沙箱帐户上运行得非常好。然而,在制作网站上,我从未收到预期的电子邮件。我已启用suitescript并在电子邮件首选项中指定了我的电子邮件

当我故意创建一个语法错误时,这会在创建销售订单时出现。因此,该脚本似乎与销售订单的创建有关,但该方法并未执行。我不确定我错过了什么

我的剧本:

function OnAfterSubmit(dataIn) {
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();

today = mm + '/' + dd + '/' + yyyy;


var newRecord = nlapiGetNewRecord();
var fromId = -5; //Authors' Internal ID
var sbj = 'test subject';
var msg = '';  

//Create Text File

var recordAsJSON = JSON.stringify(newRecord);
var newFileObj = nlapiCreateFile('SalesOrder.json', 'PLAINTEXT', recordAsJSON);

if (nlapiGetFieldValue('location') === '3' && nlapiGetFieldValue('status') === 'Pending Fulfillment' && nlapiGetFieldValue('trandate') === today) {
    nlapiSendEmail(fromId, 'email@test.com', sbj, msg, null, null, null, newFileObj);
}
}

正如我提到的,这个脚本在沙箱帐户中运行。所以我不认为脚本是错误的


我的执行日志没有显示任何内容,除了我故意创建的错误,以查看脚本是否附加到销售订单记录。

在沙箱帐户中,脚本电子邮件将发送到NetSuite首选项中指定的电子邮件,地址为Setup->email->email preferences->Sandbox and Release Preview。脚本中指定的电子邮件地址将被忽略。

您确定PROD中的“fromId=-5”正确吗?你确定“如果”有效吗(我的意思是-位置是3,状态是“待定履行”)日期是今天?为什么不在里面放一个nlapiLogExecution来检查您是否正在调用nlapiSendEmail。我现在使用了nlapiLogExecution方法,似乎电子邮件没有发送,因为无法解析电子邮件地址。在沙箱帐户中,我在脚本中指定的电子邮件被忽略并转发d发送到Netsuite首选项设置中指定的电子邮件。感谢您的输入!