cancel
Showing results for 
Search instead for 
Did you mean: 

Automating bulk WEBI report modification

Former Member
0 Kudos

Hi All,

My existing scenario as below,

Data contained in 1 single DB-1 (across n tables), 1 Universe existed (U1) & 1 webi document using U1 with many reports representing many KPIs.

(Many WEBI reports exist like above)

Now a new requirement,

Due to volume of data, there is a decision to distribute the data across 2 DBs or even 3 DBs. i.e., same schema would exist in 2/3 DBs with different data set. So, all existing reports may need to support data retrieval from 2 or 3 DBs instead of 1(as earlier)

Current Plan:

1. Create 1 universe per DB (i.e., same copy per DB)

2. Create copy of every existing report & modify new report to replicate everything from existing report but obtain from 2 or 3 universes (instead of 1)

Questions:

1. Since there are many reports looking for suggestions to possibly auto the above plan. Is it possible to automate with either WEBI Restful SDK? any possible issues?

2. Any other way possible to achieve same result but easier than the 'current plan'?

Thanks in advance for any possible directions.

Best Regards,

Baskar

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Baskar,

I believe your first choice is good according to your requirement, as it needs less programming efforts.

You can create/design the same universe copy & point it to some other database, using Semantic Layer Java SDKs. I am not sure we can do the same using the Semantic Layer REST web service SDKs or not.

On the other hand you can modify the universe of a webi report by the following steps using REST web service:

Please follow the below steps for changing the data provider when there is no parameter present in the webi report:-

Step 1:-  To getting proposal mappings

------------

Request Body:-

URL:- http://localhost:6405/biprws/raylight/v1/documents/6709/dataproviders/mappings?originDataproviderIds...

Method:- GET

Headers:- Content-Type: application/xml

X-SAP-LogonToken: "<Your X-SAP-LogonToken>"

Step 2:- To update the mapping for a data provider

-----------

Request Body:-

URL:- http://localhost:6405/biprws/raylight/v1/documents/6709/dataproviders/mappings?originDataproviderIds...

Method:- POST

Headers:- Content-Type: application/xml

X-SAP-LogonToken: "<Your X-SAP-LogonToken>"

Data:- 

Provide the full XML which you are getting in Step 1.

Step 3:- Commit the changes in the document

----------

Request:-

URL:- http://localhost:6405/biprws/raylight/v1/documents/6709

Method:- PUT

Headers:- Content-Type: application/xml

X-SAP-LogonToken: "<Your X-SAP-LogonToken>"

Data:-<blank>

Step 4:- Now check that your report is pointing to the universe which you provide in the step 1.

You can also use the second way that you mentioned in the description but it requires big programming efforts. You can create a copy of a webi document but at the end you have to again repoint the same report to some other universe to retrieve the different data.

Please refer the Section 7.1.4 -> Copying a Document at page 82 of the link.

Hope this helps.

Thanks,

Shailendra

former_member197386
Active Contributor
0 Kudos

Is it ok now?

Regards,

Anthony