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

How to get invoice id (tranid) value in user event script?

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

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

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

提交函数设置为showValue后。

部署适用于 Invoice。

事件类型设置为创建。

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

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

如何设置内部id但tranid仍然是"To Be Generated"?肯定会在设置内部 ID 时设置 tranid。

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

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

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