netsuite - 如何在用户事件脚本中获取发票 ID (tranid) 值?

标签 netsuite suitescript

我想在发票创建后立即获取发票的 tranid。

我有一个包含以下代码的用户事件脚本。

function showValue()
{
    var tranid = nlapiGetFieldValue('tranid');
    nlapiLogExecution('DEBUG', 'save transaction', nlapiGetRecordType() + ", "+ nlapiGetRecordId() + ", "+ 'tranid' + ": "+ tranid + ", "+ (new Date()))
}

提交功能设置为 showValue 后。

部署适用于发票。

事件类型设置为“创建”。

当我保存新发票时,以下内容将添加到部署的执行日志中:

"invoice, 1143428, tranid: To Be Generated, Fri Oct 13 2017 04:21:08 GMT-0700 (PDT)"

如何设置内部id但tranid仍然是“待生成”?当然,tranid 会在设置内部 id 时设置。

如何在用户事件脚本中获取 tranid?

最佳答案

我之前也遇到过同样的问题。简单直接吧?我针对这个问题提交了一个案例,支持人员告诉我,解决方法是再次加载记录或进行查找(Suiteanswer id 34194 和 18215)。我以前有过,但我没有这样做,因为想要一个优化的脚本并只使用 nlapiGetFieldValue。但最终,我别无选择。

nlapiLookupField(nlapiGetRecordType, nlapiGetRecordId(), 'tranid')

关于netsuite - 如何在用户事件脚本中获取发票 ID (tranid) 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46731254/

相关文章:

web-services - NetSuite Suitelet 根据保存的搜索或自定义字段添加选择字段

javascript - 检查 Netsuite 中的新文件

javascript - 如何让 for 循环包含 NetSuite 中用户事件脚本的最后一行?

sql - Netsuite SQL 表达式

javascript - 在保存/提交时刷新 NetSuite portlet

html - 我可以使用 Bootstrap for Netsuite 在 Suitelet 中创建自定义表单吗?

soap - NetSuite- postman -休息- "Incorrect data center requested!"

Netsuite 内部 URL 内容调用

javascript - 在 Suitescript 中,我尝试使用 nlobjFilter 和日期时间变量按分钟过滤记录。有人有这方面的经验吗?

javascript - NetSuite - 获取订单项 ID