netsuite - NetSuite 使用 SuiteScript 中记录上的任何字段查找记录 ID
问题描述
我们使用自定义细分来跟踪销售订单的销售渠道。销售渠道自定义细分记录具有三个字段: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)
}
解决方案
nlapiLookUpField
仅当您已经拥有记录的内部 ID 时才有用。
nlapiSearchRecord
您将需要使用或nlapiCreateSearch
使用原始通道的过滤器来构建搜索。
您可以在此处的帮助中心阅读有关脚本搜索的更多信息。
在 SuiteScript 中构建搜索时,我发现这个 Chrome 扩展非常有用。它允许您在 UI 中创建搜索并自动生成 SuiteScript 代码。
推荐阅读
- python - 为什么我在 Django 视图中的嵌套 if..else 语句中出现语法错误
- java - JavaFX MouseDragReleased 事件未在 fullDrag 中发送到目标节点
- c - Pthread在C中意外执行
- linq - 什么是 dotnet core 中的动态 Linq 查询?
- dataframe - TramineR 图例位置和轴
- android - 我对 step Counter Google fit API 有一些问题
- html - 在 iOS 中保存和更新 HTML 表单
- android - 避免回收 Recyclerview 中的物品
- javascript - NextJS 部署到特定的 URL 路径
- windows - 如何在 Windows 命令提示符中以 dd-mm-yyyy hh:mm:ss 格式获取日期和时间戳