Да так и делаю и все вроде работает, но видимо:
"Using wildcards and comma-separated range values
Again, the previous example here was using standard syntax, not the special syntax using expressions. It's not possible to modify the above examples to work with wildcards.
The above statement applies to AX versions < 5.0
AX 5.0 introduced solution to wildcards - while you still cannot directly use wildcards in ranges, now it supports the 'LIKE' keyword.
(AccountNum LIKE "*AA*" || Name LIKE "*AA*")"
Забыл указать Ах3.0
Мой сумбур на данный момент выглядит так:
Код:
...
QueryBuildDataSource qbdsTable1;
QueryBuildDataSource qbdsTable2;
QueryBuildRange qbrTable1;
QueryBuildRange qbrTable2;
FreeTxt qValueTable1;
FreeTxt qValueTable2;
;
qbdsTable1 = this.query().dataSourceTable(tablenum(Table1));
qbdsTable2 = this.query().dataSourceTable(tablenum(Table2));
qbdsTable2.addLink(fieldnum(Table2, num), fieldnum(Table1, num));
qbdsTable2.joinMode(JoinMode::ExistsJoin);
qbrTable1 = qbdsTable1.addRange(fieldnum(Table1, RecId));
qbrTable2 = qbdsTable2.addRange(fieldnum(Table2, RecId));
while select Table3
{
if(qValueTable1)
qValueable1 += '||';
qValueTable1 += strFmt('(%1.Type=="%2")', qbdsTable1.name(), Table3.Type);
}
while select Table4
{
if(qValueTable2)
qValueTable2 += '||';
qValueTable2 += strFmt('(%1.Param=="%2")&&(%1.Value=="%3")',
qbdsTable2.name(), Table4.Param, Table4.Values);
}
qbrTable2.value(qValueTable2);
qbrTable1.value(qValueTable1);
...
Смого главного добиться не знаю как.