Sometimes we need to add two or more datasources in our code. We use QueryBuildDatasource class for this purpose. Below is a sample job which is creating a query in code using Query class and joining two datasources by using QueryBuildDatasource class. And off course if we know how to add second datasource to first datasource, you could add more datasources using the same technique..
static void JoiningTwoDatasourcesSample(Args _args) { Query query; QueryBuildDatasource queryBuildDatasource; query = new Query(); //Adding table as the first datasource in query.. queryBuildDatasource = query.addDataSource(tableNum(PurchTable)); //adding table into the datasource of previously created datasource.. queryBuildDatasource = queryBuildDatasource.addDataSource(tableNum(PurchLine)); //Specifing which type of join you want to use in between both of the above datasources.. queryBuildDatasource.joinMode(JoinMode::InnerJoin); //whether we want to use auto relations between table (i.e. True) or to create link by your own as mentioned below (i.e. False) queryBuildDatasource.relations(false); //Adding link to both table by specifying the fields of both tables which links them together.. queryBuildDatasource.addLink(fieldNum(PurchTable, PurchId), fieldNum(PurchLine, PurchId)); info(query.xml()); }
No comments:
Post a Comment