Query build extended range example

static void testExtendedQuery(Args _args)
    Query                   q   = new Query();
    QueryBuildDataSource    qbds= q.addDataSource(tableNum(UtilElements));
    QueryRun                qr;
    str                     extRange;
    UtilElements            utilElements;

    extRange = strFmt("(((%1.%2=%3) || (%1.%2=%4)) && (%1.%5 LIKE \"%6\"))",
            qbds.name(), fieldStr(UtilElements, recordType),
            enum2int(utilElementType::OutputTool), enum2int(utilElementType::ActionTool), 
            fieldStr(UtilElements, name), 'RetailLabel*');
    qbds.addRange(fieldNum(UtilElements, recordType)).value(extRange);

    qr = new QueryRun(q);
    while (qr.next())
        utilElements = qr.get(tableNum(UtilElements));
Resulting query:
SELECT * FROM UtilElements(UtilElements_1)
    WHERE (((((UtilElements_1.recordType=2) || (UtilElements_1.recordType=3))
           && (UtilElements_1.name LIKE "RetailLabel*")))



DaxOnline.org is free platform that allows you to quickly store and reuse snippets, notes, articles related to Dynamics AX.

Authors are allowed to set their own AdSense units.
Join us.

Blog Tags