Показать сообщение отдельно
Старый 16.12.2008, 07:16   #3  
uchenik is offline
uchenik
Участник
 
119 / 20 (1) +++
Регистрация: 15.12.2008
Да так и делаю и все вроде работает, но видимо:
"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);
...
Смого главного добиться не знаю как.

Последний раз редактировалось uchenik; 16.12.2008 в 07:29.