Показать сообщение отдельно
Старый 17.02.2005, 13:15   #7  
vesna is offline
vesna
Участник
 
39 / 10 (1) +
Регистрация: 04.11.2004
Адрес: Москва
X++:
q = this.queryRun().query();
    qbd  = q.dataSourceTable(tableNum(CustInvoiceTrans));
    qbds = qbd.addDataSource(tableNum(InventPackagingUnit));
    qbds.joinMode(JoinMode::InnerJoin);
    qbds.addLink(fieldnum(CustInvoiceTrans, ItemId), fieldnum(InventPackagingUnit, ItemRelation));
    qbds.addSelectionField(fieldNum(CustInvoiceTrans, Qty), SelectionField::Sum);
    qbds.addRange(fieldNum(InventPackagingUnit, ItemCode)).value(Enum2Str(TableGroupAll::Table));
    qbds1 = qbds.addDataSource(tableNum(InventPackagingUnitMaterial));
   qbds1.joinMode(JoinMode::InnerJoin);
    qbds1.addLink(fieldnum(InventPackagingUnit, RecId), fieldnum(InventPackagingUnitMaterial, PackingUnitRecId));
    qbds2 = qbds1.addDataSource(tableNum(InventPackagingMaterialCode));
    qbds2.addSelectionField(fieldNum(InventPackagingMaterialCode,PackMaterialCode));
    qbds2.addLink(fieldnum(InventPackagingUnitMaterial, PackMaterialCode), fieldnum(InventPackagingMaterialCode, PackMaterialCode));
    qbds2.joinMode(JoinMode::ExistsJoin);
    qbds2.fetchmode(queryfetchmode::one2one);
    qbds2.orderMode(OrderMode::GroupBy);
   qbds2.addSortField(fieldNum(InventPackagingMaterialCode, PackMaterialCode));
Вполне понимаю нежелание тестировать запрос. Я этим займусь. Кстати, GroupBy у меня в запросе уже есть. Но итог прежний, независимо от вида Join