摘要标准中保存的搜索 Netsuite 错误
Saved search Netsuite error in Summary Criteria
我正在使用标准中的摘要进行保存的搜索(查找完全应用的客户付款)
在 UI 中它工作正常,但在 suitescript 中给我这个错误:
ERROR CODE: INVALID_SRCH_SUMMARY_TYP \n DESCRIPTION: An
nlobjSearchFilter contains an invalid summary type: formulanumeric:
SUM.
我已尝试加载搜索
var searchPayment=search.load({
id:'customsearch_paymentsCXC'
});
或使用 SearchExport 扩展:
search.create({
type: "customerpayment",
filters:
[
["type","anyof","CustPymt"],
"AND",
["systemnotes.field","anyof","CUSTBODY_REFJOURNALENTRY_IVA"],
"AND",
["systemnotes.date","within","thisweek"],
"AND",
["customer.custentity_zona_cliente","anyof",zonaid],
"AND",
['sum(formulanumeric: CASE WHEN SUM(NVL({appliedtolinkamount},0)) = MAX(NVL({amount},0)) THEN 1 ELSE 0 END)','equalto','1']
],
columns:
[
search.createColumn({name: "tranid", label: "Document Number"}),
search.createColumn({name: "custbody_fe_uuid_cfdi_33", label: "UUID CFDI v3.3"}),
search.createColumn({name: "custbody_fe_sf_mensaje_respuesta", label: "Mensaje de Respuesta"}),
search.createColumn({
name: "tranid",
join: "appliedToTransaction",
label: "Document Number"
}),
search.createColumn({
name: "internalid",
join: "appliedToTransaction",
label: "Internal ID"
})
]
});
我仍然在带有摘要的过滤器中遇到相同的错误:
['sum(formulanumeric: CASE WHEN SUM(NVL({appliedtolinkamount},0)) = MAX(NVL({amount},0)) THEN 1 ELSE 0 END)','equalto','1']
我在这里缺少什么?
尝试使用过滤器对象而不是字符串数组
...
Filters: [
...
'AND',
Search.createFilter({
name: 'formulanumeric',
summary: 'sum',
operator: 'equalto',
values: 1,
formula: 'CASE WHEN SUM(NVL({appliedtolinkamount},0)) = MAX(NVL({amount},0)) THEN 1 ELSE 0 END'
})
],
...
试试这个
...
Filters: [
...
'AND',
['formulanumeric: CASE WHEN sum(nvl({appliedtolinkamount},0)) = max(nvl({amount},0)) THEN 1 ELSE 0 END','is','1']
],
...
我正在使用标准中的摘要进行保存的搜索(查找完全应用的客户付款)
在 UI 中它工作正常,但在 suitescript 中给我这个错误:
ERROR CODE: INVALID_SRCH_SUMMARY_TYP \n DESCRIPTION: An nlobjSearchFilter contains an invalid summary type: formulanumeric: SUM.
我已尝试加载搜索
var searchPayment=search.load({
id:'customsearch_paymentsCXC'
});
或使用 SearchExport 扩展:
search.create({
type: "customerpayment",
filters:
[
["type","anyof","CustPymt"],
"AND",
["systemnotes.field","anyof","CUSTBODY_REFJOURNALENTRY_IVA"],
"AND",
["systemnotes.date","within","thisweek"],
"AND",
["customer.custentity_zona_cliente","anyof",zonaid],
"AND",
['sum(formulanumeric: CASE WHEN SUM(NVL({appliedtolinkamount},0)) = MAX(NVL({amount},0)) THEN 1 ELSE 0 END)','equalto','1']
],
columns:
[
search.createColumn({name: "tranid", label: "Document Number"}),
search.createColumn({name: "custbody_fe_uuid_cfdi_33", label: "UUID CFDI v3.3"}),
search.createColumn({name: "custbody_fe_sf_mensaje_respuesta", label: "Mensaje de Respuesta"}),
search.createColumn({
name: "tranid",
join: "appliedToTransaction",
label: "Document Number"
}),
search.createColumn({
name: "internalid",
join: "appliedToTransaction",
label: "Internal ID"
})
]
});
我仍然在带有摘要的过滤器中遇到相同的错误:
['sum(formulanumeric: CASE WHEN SUM(NVL({appliedtolinkamount},0)) = MAX(NVL({amount},0)) THEN 1 ELSE 0 END)','equalto','1']
我在这里缺少什么?
尝试使用过滤器对象而不是字符串数组
...
Filters: [
...
'AND',
Search.createFilter({
name: 'formulanumeric',
summary: 'sum',
operator: 'equalto',
values: 1,
formula: 'CASE WHEN SUM(NVL({appliedtolinkamount},0)) = MAX(NVL({amount},0)) THEN 1 ELSE 0 END'
})
],
...
试试这个
...
Filters: [
...
'AND',
['formulanumeric: CASE WHEN sum(nvl({appliedtolinkamount},0)) = max(nvl({amount},0)) THEN 1 ELSE 0 END','is','1']
],
...