business objects - How to read Union Reports and Combined webi reports from BO Java SDK -


i need read webi reports metedata information has tables , columns. can able read few webi reports metedata info combined , unioun webi reports not able read metedata data information. getting query null kind of reports. can 1 please let me know how can read metedata data it.

code:

string query="select * ci_infoobjects si_kind in('webi') , si_instance = 0 , si_ancestor = 23";  sessionmgr = crystalenterprise.getsessionmgr(); enterprisesession = sessionmgr.logon(username,password,ip,"secenterprise"); reportengines = (reportengines) enterprisesession.getservice("reportengines"); reportengine wirepengine(reportengine)reportengines.getservice(     reportengines.reportenginetype.wi_report_engine); iinfostore infostore = (iinfostore) enterprisesession.getservice("infostore");   iinfoobjects infoobjects = (iinfoobjects) infostore.query(query); system.out.println(infoobjects.size());  (int =0; i<infoobjects.size(); i++) {     iinfoobject report = (iinfoobject)infoobjects.get(i);     widoc = wirepengine.opendocument(report.getid());     providers = (dataproviders) widoc.getdataproviders();     for(int prov=0; prov<providers.getcount(); prov++)     {         dataprovider providername = providers.getitem(0);         datasource datasource= providername.getdatasource();         string universename=datasource.getname();         query providetgetquery=providername.getquery();         system.out.println("query:-"+providername.getquery());         for(int k=0; k<providetgetquery.getresultobjectcount(); k++)         {             providerquerychild=providetgetquery.getresultobject(k);             system.out.println("columns:-"+providerquerychild);             treenode providerqueryparent=providerquerychild.getparent();             system.out.println("tables:-"+providerqueryparent);         }     } } 

in bo 3.1:

instead:

query providetgetquery=providername.getquery(); 

try this:

query providetgetquery; if (providername.hascombinedqueries()) {     providetgetquery = (query) providername.getcombinedqueries().getquerynodeat(0); } else {     providetgetquery = providername.getquery(); } 

in bo 4.0:

at moment part of report sdk unavailable. available: http://help.sap.com/businessobject/product_guides/boexir4/en/xi4_rebean_omd.pdf

it should available in bo 4.1: http://scn.sap.com/community/bi-platform/blog/2012/11/18/what-is-coming-in-businessobjects-bi41-customer-validation-asug-webcast


Comments