NetSuite 使用 SuiteScript 中记录上的任何字段查找记录 ID

Posted

技术标签:

【中文标题】NetSuite 使用 SuiteScript 中记录上的任何字段查找记录 ID【英文标题】:NetSuite Look-up Record ID Using any Field On a Record in SuiteScript 【发布时间】:2019-12-18 01:55:17 【问题描述】:

我们使用自定义细分来跟踪销售订单的销售渠道。销售渠道自定义细分记录具有三个字段:Internal ID, Name, Raw_Channel。示例值为:

1, Amazon.com, AMAZON_COM
2, Amazon.ca, AMAZON_CA
3, Amazon.uk, AMAZON_UK

Raw_Channel 是销售订单上的一个文本字段,当我们的市场连接器将订单导入 NetSuite 时填充该字段(该连接器从各个亚马逊市场提取订单并将其导入 NetSuite)。

我希望做的是使用Raw_Channel 字段来查找销售渠道ID,并使用记录提交后脚本设置销售渠道下拉自定义细分字段的值。下面是一个开始,但显然它不起作用,因为 nlapiLookUpField 使用 Internal ID 查找值,但我只有 Raw_Channel 作为参考,而不是 ID。

我的最终问题是,如何通过使用非 ID 字段作为查找字段来获取销售渠道内部 ID?非常感谢您的帮助!

function setChannel ()
    var rawchannel = nlapiGetFieldValue('custbody_raw_channel')
    var channelid = nlapiLookUpField('cseg_tt_channel', rawchannel, 'id')
    nlapiSetFieldValue('custbody_cseg_tt_channel', channelid)

【问题讨论】:

【参考方案1】:

nlapiLookUpField 仅在您已有记录的内部 ID 时才有用。

您需要使用nlapiSearchRecordnlapiCreateSearch 构建搜索,并为原始频道提供过滤器。

您可以在帮助中心here 中阅读有关脚本搜索的更多信息。

我发现this Chrome extension 在 SuiteScript 中构建搜索时非常有用。它允许您在 UI 中创建搜索并自动生成 SuiteScript 代码。

【讨论】:

知道了。我会看看你建议的参考资料,看看我能想出什么。谢谢

以上是关于NetSuite 使用 SuiteScript 中记录上的任何字段查找记录 ID的主要内容,如果未能解决你的问题,请参考以下文章

NetSuite SuiteScript 参考密钥未被识别

Netsuite - 加载前的 Suitescript 用户事件 - 获取子列表值加入 -> 设置子列表值自定义子记录

NetSuite - 从一个估算(又名报价)生成多个销售订单

通过 API Netsuite 检索自定义表单

Netsuite 事务已保存搜索:项目加入?

NetSuite:启用 Line Item Shipping (MSR) 时的自定义地址字段