Показать сообщение отдельно
Старый 25.02.2010, 15:48   #1  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
просто немного не правильный ситаксис.
во первых QueryRun надо инициализировать после того как собрали Query...
предполагаю что Ваш запрос должен выглядеть так (это пример):
X++:
Query                   query;
    QueryBuildDataSource    qbdsInventSum, qbdsInventTrans;
    QueryBuildRange         qbr;
    QueryRun                qr;
    InventLocationId        cInvLoc;
    TransDate               dBgn;
    ;

    query = element.Query();

    qbdsInventSum = query.dataSourceTable(tableNum(InventSum));
    qbr = qbdsInventSum.addRange(fieldNum(InventSum, InventLocationId));
    qbr.value(QueryValue(cInvLoc));

    qbdsInventTrans = qbdsInventSum.addDataSource(tableNum(InventTrans));
    qbdsInventTrans.addLink(fieldNum(InventSum, ItemId), fieldNum(InventTrans, ItemId));
    qbdsInventTrans.addLink(fieldNum(InventSum, InventDimId), fieldNum(InventTrans, InventDimId));
    qbdsInventTrans.joinMode(JoinMode::ExistsJoin);
    qbdsInventTrans.firstOnly(true);

    qbr = qbdsInventTrans.addRange(fieldNum(InventTrans, DatePhysical));
    qbr.value(SysQuery::range(dBgn, dateMax()));

    qr = new QueryRun(query);
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем