Non-simple query ordering

Microsoft Axapta Development, Management, Functional and Technical Support Discussions.

Non-simple query ordering

Post by usenet » Fri Jul 03, 2009 3:01 pm

I must to do a query with 3 table: ProdTable,ProdRoute and WrkctrTable.

I must to select some production orders from ProdTable and order them by b
WrkctrTable.ProdunitId

I have 2 problem:

-When i join ProdTable with ProdRoute, i could have more records, but i
would retrieve only the ProdRoute with the MIN OprNum for each ProdId from
ProdTable .

-How order my production orders by WrkctrTable.ProdunitId.

My actual query is:

Query q;
QueryRun qr;
QueryBuildDatasource prod,route,wrk;
QueryBuildRange qbr;
;

q=new Query();

prod=q.addDataSource(tablenum(ProdTable));
qbr=prod.addRange(fieldnum(ProdTable,ProdId));
qbr.value(prodsid); //prodsid is a QUERYRANGECONCAT of ProdId previously
selected

route=prod.addDataSource(tablenum(ProdRoute));
route.addLink(fieldnum(ProdTable,ProdId),fieldnum(ProdRoute,ProdId));
route.joinMode(joinMode::InnerJoin);

qbr=route.addRange(fieldnum(ProdRoute,OprPriority));
qbr.value(queryvalue(RouteOprPriority::Primary));

route.addSortField(fieldnum(ProdRoute,OprNum));
route.addSortField(fieldnum(ProdRoute,Level),SortOrder::Descending);


wrk=route.addDataSource(tablenum(WrkCtrTable));
wrk.addLink(fieldnum(ProdRoute,WrkCtrId),fieldnum(WrkCtrTable,WrkCtrId));
wrk.joinMode(JoinMode::InnerJoin);

But this give me more records from ProdRoute for each ProdId and i don't
know how to order by them by WrkCtrTable.ProdUnitId

Any suggestions?
Thanks.
More available at Technology Forums
usenet
 
Posts: 80094
Joined: Wed Jun 24, 2009 8:14 am

Return to Axapta



Who is online

Users browsing this forum: No registered users and 1 guest