Netsuite nlapiSearchRecord Expression过滤器不起作用

时间:2014-04-11 16:33:50

标签: javascript netsuite

使用nlapiSearchRecord()遇到问题我可以将nlobjSearchFilter()对象应用于searchRecord,但我需要一个OR选项,而且似乎searchFilter唯一传递的是AND。我看到这篇文章“NetSuite And/Or Filter”给了我正确的信息,但我不断收到以下错误。

  

标题SSS_INVALID_SRCH_FILTER_EXPR_OBJ_TYPE
  类型系统
  详情过滤器

我不知道为什么,我试图搜索错误标题“SSS_INVAILD_SRCH_FILTER_EXPR_OBJ_TYPE”,但谷歌没有提供任何有用的信息。

这是我正在运行的表达式代码

filterExpr = [
                    ['internalid',null,'is',itemId],
                    'AND',
                    [
                        ['inventorylocation',null,'is',locationId],
                        'OR',
                        ['inventorylocation',null,'is',3]
                    ]

                ];

var results = nlapiSearchRecord('item',null,filterExpr,columns);

---已解决---

想出来的问题是我在过滤器中的null应该是这样编写的。

filterExpr = [
                    ['internalid','is',itemId],
                    'AND',
                    [
                        ['inventorylocation','is',locationId],
                        'OR',
                        ['inventorylocation','is',3]
                    ]

                ];

var results = nlapiSearchRecord('item',null,filterExpr,columns);

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

过滤器不需要null选项,因为我没有完全检查格式。

---已解决---

想出来的问题是我在过滤器中的null应该是这样编写的。

filterExpr = [
    ['internalid', 'is', itemId],
    'AND', [
        ['inventorylocation', 'is', locationId],
        'OR', ['inventorylocation', 'is', 3]
    ]
];

var results = nlapiSearchRecord('item', null, filterExpr, columns);