如何在Netsuite Suitescript 2.0中按公司ID搜索案例?

如何在Netsuite Suitescript 2.0中按公司ID搜索案例?,netsuite,suitescript2.0,Netsuite,Suitescript2.0,我可以按公司名称搜索案例 var mySearch = search.create({ type: search.Type.SUPPORT_CASE, columns: [{ name: 'title' }, { name: 'company' }], filters: [{ name: 'company', operator: 'is',

我可以按公司名称搜索案例

var mySearch = search.create({
      type: search.Type.SUPPORT_CASE,
       columns: [{
          name: 'title'
      }, {
          name: 'company'
      }],
      filters: [{
          name: 'company',
          operator: 'is',
          values: 'Test'
      }]
  });
  return mySearch.run({
    ld: mySearch.id
  }).getRange({
      start: 0,
      end: 1000
  });
但我无法按公司id搜索案例。 公司ID是115

下面的代码不起作用

(一)

(ii)

根据
的说法,company
是一个文本过滤器,这意味着您必须向它提供公司的准确名称,而不是内部ID

相反,您可能希望使用
customer.internalid
联接筛选器来提供内部ID。此外,内部ID字段几乎总是选择字段,这意味着它们不接受
is
运算符,而是需要
anyof
noneof
运算符

您可以在名为“搜索操作员”的帮助页面上按字段类型找到有效的操作员,因为“公司”是一个文本过滤器,这意味着您必须向其提供公司的准确名称,而不是内部ID

相反,您可能希望使用
customer.internalid
联接筛选器来提供内部ID。此外,内部ID字段几乎总是选择字段,这意味着它们不接受
is
运算符,而是需要
anyof
noneof
运算符


您可以在标题为“搜索运算符”的帮助页上按字段类型找到有效的运算符。首先,您可以尝试以下操作:

var supportcaseSearchObj = search.create({
   type: "supportcase",
   filters:
   [
      ["company.internalid","anyof","100"]
   ],
   columns:
   [
      search.createColumn({
         name: "casenumber",
         sort: search.Sort.ASC
      }),
      "title",
      "company",
      "contact",
      "stage",
      "status",
      "profile",
      "startdate",
      "createddate",
      "category",
      "assigned",
      "priority"
   ]
});
第二:我是怎么得到这个的?答案是让你的生活更轻松的提示:

  • 安装“NetSuite保存的搜索代码导出”chrome插件
  • 在Netsuite UI中,创建保存的搜索(用代码进行搜索总是比较容易)
  • 保存搜索后,再次打开它进行编辑
  • 在右上角(靠近列表,netsuite页面中的搜索菜单),您将看到一个链接“导出为脚本”:单击它,您将获得代码;) 如果无法安装chrome插件:

  • 在Netsuite UI中,创建保存的搜索(用代码进行搜索总是比较容易)
  • 在代码中,加载保存的搜索
  • 添加log.debug以显示
    [LoadedSearchVar].过滤器
  • 然后,您可以复制日志中的内容,将其用作搜索过滤器

  • 祝你好运

    首先,您可以尝试以下方法:

    var supportcaseSearchObj = search.create({
       type: "supportcase",
       filters:
       [
          ["company.internalid","anyof","100"]
       ],
       columns:
       [
          search.createColumn({
             name: "casenumber",
             sort: search.Sort.ASC
          }),
          "title",
          "company",
          "contact",
          "stage",
          "status",
          "profile",
          "startdate",
          "createddate",
          "category",
          "assigned",
          "priority"
       ]
    });
    
    第二:我是怎么得到这个的?答案是让你的生活更轻松的提示:

  • 安装“NetSuite保存的搜索代码导出”chrome插件
  • 在Netsuite UI中,创建保存的搜索(用代码进行搜索总是比较容易)
  • 保存搜索后,再次打开它进行编辑
  • 在右上角(靠近列表,netsuite页面中的搜索菜单),您将看到一个链接“导出为脚本”:单击它,您将获得代码;) 如果无法安装chrome插件:

  • 在Netsuite UI中,创建保存的搜索(用代码进行搜索总是比较容易)
  • 在代码中,加载保存的搜索
  • 添加log.debug以显示
    [LoadedSearchVar].过滤器
  • 然后,您可以复制日志中的内容,将其用作搜索过滤器

  • 祝你好运

    谢谢你的解释,埃里克。但是[“company.internalid”,“is”,“115”]是working@Prabhu您确定它使用“is”返回正确的值吗:有时搜索不会给出错误,但如果不使用正确的运算符,它将给出错误的结果。在这种情况下,正确的运算符是“ANYOF”。是。我敢肯定。它正在与“is”合作。我使用contact&supportcase进行了测试。两人都返回了准确的结果感谢eric的解释。但是[“company.internalid”,“is”,“115”]是working@Prabhu您确定它使用“is”返回正确的值吗:有时搜索不会给出错误,但如果不使用正确的运算符,它将给出错误的结果。在这种情况下,正确的运算符是“ANYOF”。是。我敢肯定。它正在与“is”合作。我使用contact&supportcase进行了测试。两者都返回了准确的结果感谢您提供了更多详细的资产感谢您提供了更多详细的资产
    var supportcaseSearchObj = search.create({
       type: "supportcase",
       filters:
       [
          ["company.internalid","anyof","100"]
       ],
       columns:
       [
          search.createColumn({
             name: "casenumber",
             sort: search.Sort.ASC
          }),
          "title",
          "company",
          "contact",
          "stage",
          "status",
          "profile",
          "startdate",
          "createddate",
          "category",
          "assigned",
          "priority"
       ]
    });