在采购订单中添加行项目时,Netsuite检查库存项目供应商列表

在采购订单中添加行项目时,Netsuite检查库存项目供应商列表,netsuite,Netsuite,我正在尝试创建一个客户端脚本,用于检查在采购订单正文字段中选择的供应商是否实际提供了库存项目。我可以获取当前行项目的字段值,但不知道如何加载已标记为提供该项目的供应商列表。或者,最好不要让列表显示所选供应商没有的任何项目。在此方面的任何帮助都将不胜感激 我知道了,所以我想我会发布我的解决方案。如果有人知道一个更好的方法,并愿意分享,请这样做 我担心的两个更改事件首先,当选择供应商时,我加载该供应商是首选供应商的所有库存项目。第二种情况是添加或更改“项目”以对照供应商项目列表检查项目,并在需要时显

我正在尝试创建一个客户端脚本,用于检查在采购订单正文字段中选择的供应商是否实际提供了库存项目。我可以获取当前行项目的字段值,但不知道如何加载已标记为提供该项目的供应商列表。或者,最好不要让列表显示所选供应商没有的任何项目。在此方面的任何帮助都将不胜感激

我知道了,所以我想我会发布我的解决方案。如果有人知道一个更好的方法,并愿意分享,请这样做

我担心的两个更改事件首先,当选择供应商时,我加载该供应商是首选供应商的所有库存项目。第二种情况是添加或更改“项目”以对照供应商项目列表检查项目,并在需要时显示警报

var vendorItemList = '';
function fieldChange(type, name) {
    try
    {
        //on vendor change set vendorItemList
        if (name == 'entity')
        {
            //first check if current selected vendor supplies item selected
            var vendorId = nlapiGetFieldValue('entity');
            var vendorName = nlapiGetFieldValue('entity_display');

            //check if vendor supplies item
            var filters = [new nlobjSearchFilter('internalid','vendor','is', vendorId)];
            var columns = [new nlobjSearchColumn('itemid')];

            results = nlapiSearchRecord('inventoryitem',null,filters,columns);

            if (results != null)
            {   
                for(var i=0,l=results.length; i < l; i++) { 
                    var result = results[i];
                    var itemid   = result.getValue('itemid');

                    vendorItemList += itemid + "\n";
                }   
            }
        }   
    } catch (err) {
        alert(err.message);
    }

    try
    {
        if (name == 'item')
        {
            if (!vendorItemList.contains(itemText))
            {
                alert(vendorName + '\' is not a  vendor for \'' + itemText + '\' inventory item.');
            } 
        }
    } catch (err) {
        alert(err.message);
    }

}
var vendorItemList='';
函数字段更改(类型、名称){
尝试
{
//关于供应商变更集vendorItemList
如果(名称=‘实体’)
{
//首先检查是否选择了当前选定的供应商供货项目
var vendorId=nlapiGetFieldValue(‘实体’);
var vendorName=nlapiGetFieldValue('entity_display');
//检查供应商是否提供该项目
var过滤器=[新的nlobjSearchFilter('internalid','vendor','is',vendorId)];
var columns=[新的nlobjSearchColumn('itemid')];
结果=nlapiSearchRecord('inventoryitem',null,筛选器,列);
如果(结果!=null)
{   
对于(var i=0,l=results.length;i