Using Like in axapta x++ Query

Sometimes, we want to filter records in Dynamics AX Query, using Like criteria and we don't know how to do it... 

The way to do that is using DataAreaId as a FieldId to filter.

In this example, we want to filter the InventTable records that the ItemId begins with "01", ends with "00" and has a length of 10 chars.

Query createQuery()
    Query                   q;
    QueryBuildDataSource    qbdsInventTable;

    q = new Query();

    qbdsInventTable = q.addDataSource(tablenum(InventTable));

    qbdsInventTable(fieldnum(InventTable, DataAreaId))
                    .value(strfmt('(ItemId like "%1")',"01??????00"));

    return q;

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.