![]() |
#6 |
Участник
|
А теперь, если так
X++: static void Job103(Args _args) { InventDim inventDim; InventTrans inventTrans; Query query; QueryBuildDataSource qbsInventTrans, qbsInventDim; QueryBuildLink qbl; QueryRun queryRun; QueryBuildRange qbrInventSizeId, qbrStatusIssue, qbrTransType, qbrItemId; Qty mQty; ; query = new Query(); qbsInventTrans = query.addDataSource(tablenum(InventTrans)); qbsInventDim = qbsInventTrans.addDataSource(tablenum(InventDim)); qbsInventDim.relations(true); qbrTransType = qbsInventTrans.addRange(fieldnum(InventTrans,TransType)); qbrTransType.value(queryvalue(InventTransType::Sales)); qbrStatusIssue = qbsInventTrans.addRange(fieldnum(InventTrans,StatusIssue)); qbrStatusIssue.value(queryValue(StatusIssue::OnOrder)); qbsInventDim.orderMode(OrderMode::GroupBy); qbsInventDim.addSortField(fieldnum(InventDim, InventSizeId)); qbsInventTrans.orderMode(OrderMode::GroupBy); qbsInventTrans.addSortField(fieldnum(InventTrans, ItemId)); qbsInventTrans.addSelectionField(fieldnum(InventTrans,Qty),SelectionField::Sum); qbsInventTrans.addSelectionField(fieldnum(InventTrans,ItemId)); queryRun = new QueryRun(query); if(queryRun.prompt()) { while(queryRun.next()) { inventTrans = queryRun.get(tablenum(InventTrans)); inventDim = queryRun.get(tablenum(InventDim)); info(strFmt('%1 %2 %3', inventTrans.ItemId, inventDim.InventSizeId, inventTrans.Qty)); } } } Мне кажется, что что - то неправильно имеено в кускочке кода X++: if(queryRun.prompt()) { while(queryRun.next()) { inventTrans = queryRun.get(tablenum(InventTrans)); inventDim = queryRun.get(tablenum(InventDim)); info(strFmt('%1 %2 %3', inventTrans.ItemId, inventDim.InventSizeId, inventTrans.Qty)); } Последний раз редактировалось longson; 02.03.2008 в 16:36. |
|