Axapta querybuildRange中的表达式

Axapta querybuildRange中的表达式,axapta,x++,dynamics-ax-2009,Axapta,X++,Dynamics Ax 2009,您好,我正在尝试执行此查询: Select ProjInvoiceJour where NOT (ProjInvoiceJour.ProjInvoiceType == ProjInvoiceType::Onaccount && ProjInvoiceJour.CountryRegionID != "ES") 但我需要通过querybuilder来完成: qbds.addRange(fieldnum(ProjInvoiceJour, ProjInvoiceType)).valu

您好,我正在尝试执行此查询:

Select ProjInvoiceJour 
where NOT (ProjInvoiceJour.ProjInvoiceType == ProjInvoiceType::Onaccount && ProjInvoiceJour.CountryRegionID != "ES")
但我需要通过querybuilder来完成:

qbds.addRange(fieldnum(ProjInvoiceJour, ProjInvoiceType)).value(strfmt('!%1',
                           strfmt("((%1.%2 == %3) && (%4.%5 != '%6'))",
                                    tablestr(ProjInvoiceJour),
                                    fieldstr(ProjInvoiceJour, ProjInvoiceType),
                                    any2int(ProjInvoiceType::OnAccount),
                                    tablestr(ProjInvoiceJour),
                                    fieldstr(ProjInvoiceJour, CountryRegionID),
                                    queryvalue("ES"))));
但是查询有一些错误:

SELECT * FROM ProjInvoiceJour WHERE ((NOT (ProjInvoiceType = 255)))
谢谢

救援人员:

select ProjInvoiceJour 
    where !(ProjInvoiceJour.ProjInvoiceType == ProjInvoiceType::Onaccount && 
            ProjInvoiceJour.CountryRegionID != 'ES')
相当于:

select ProjInvoiceJour 
    where ProjInvoiceJour.ProjInvoiceType != ProjInvoiceType::Onaccount ||
          ProjInvoiceJour.CountryRegionID == 'ES'
或在查询中:

qbds.addRange(fieldnum(ProjInvoiceJour, ProjInvoiceType)).value(strfmt('((%1.%2 != %3) || (%4.%5 == "%6"))',
                                tablestr(ProjInvoiceJour),
                                fieldstr(ProjInvoiceJour, ProjInvoiceType),
                                0+ProjInvoiceType::OnAccount,
                                tablestr(ProjInvoiceJour),
                                fieldstr(ProjInvoiceJour, CountryRegionID),
                                'ES'));

如果要删除strFmt部分并将其自身放入作业中,它会打印出什么?这是你期望的吗?你能试着把第一个STRFTM中的单引号改为双引号吗?考虑接受一个答案。引号改变了。