我在AX 2012 R2环境中。
我想在HcmEmployment表中添加一个查询范围,并筛选出LegalEntity值为0的行。
以下代码在运行时失败,异常"无效范围"。
qbrLegalEntity = qbds.addRange(fieldNum(HcmEmployment, LegalEntity));
strRangeCondition = '(%1 != %2)';
qbrLegalEntity.value(strFmt(strRangeCondition,
fieldStr(HcmEmployment, LegalEntity),
queryValue("0")));
是否可以对此范围条件进行编码?
谢谢。
答案 0 :(得分:5)
不要让它变得更难:
qbds.addRange(fieldNum(HcmEmployment,LegalEntity)).value(SysQuery::valueNot(0));
查询表达式失败的原因是使用引用零的queryValue("0")
。将其更改为0
也会起作用,但又太费力了。
更短的是:
qbds.addRange(fieldNum(HcmEmployment,LegalEntity)).value('!0');
要诊断查询错误,请查看生成的SQL:
info(qbds.toString());