Webi publishing through dynamic recipients and issues faced
This document will be covering below areas in WEBI publishing:
A. Publishing Webi reports using dynamic recipient for 2 scenarios
B. Issues faced during Webi publication using dynamic recipient and correction steps
A. Publishing BO Webi reports via dynamic recipient
Publishing reports through dynamic recipient solves two purposes:
- One can deliver reports to users based on their requirement. For example, a user in India would be interested in getting reports specific to India only and a user in Pakistan would be interested in getting reports specific to Pakistan only. We will end of creating 2 copies of same report filtered on Country. It might also be possible that a new country gets added up, then again we will end up creating 3rd copy. In such cases we need to create a publisher with dynamic recipient.
- There was a scenario in our project where user wanted to split reports based on different values of a characteristic and save the reports on FTP server. For example, in a report there are 108 countries, then user wanted 108 copies of report where each copy was specific to one country. Here we may end up creating 108 copies of a report filtered on country. This can easily be achieved by using dynamic recipient.
Step by step implementation of above scenarios using dynamic recipient:
Scenario 1:
- Create a dynamic recipient report. Create a webi report which contains a Country, user name and email fields.
- There should not be any prompt while executing this WEBI report. If it is there then there should be some default value.
- The basis on which report needs to be split for each user for example in this case Country Key, it should be not available as prompt. It might throw error after scheduling. This I have observed in BO 3.1
- Save the report by unchecking “Refresh on Open”.
The dynamic recipient report must contain below fields:
Country Key |
Country Name |
User Name |
|
Ind |
India |
Amit |
|
Ind |
India |
Ravi |
|
Pak |
Pakistan |
Amit |
e. The main report which needs to be scheduled should have Country Key in report output. Based on this only splitting of report for different users will take place.
Document id |
Country Key |
State |
Sales |
1 |
Ind |
Uttar Pradesh |
50 |
2 |
Ind |
Delhi |
100 |
3 |
Pak |
Karachi |
200 |
4 |
Pak |
Islamabad |
600 |
f. Create a publisher on the parent report. Right click –> New –> Publication
g. In general properties give the description of the publisher
h. Go to source documents and select the report which needs to be published to different users
- Go to Dynamic Recipients and select the source for dynamic recipient. In our case it would be Webi
j. Select the recipient Webi report created in step a to step e.
k. Select the query and uncheck Use Entire List. Remember after doing uncheck data should appear below. This has to display else we will end up throwing errors. Select which call countries you want to split data else check Use Entire list for all countries.
Save.
l. Go to Personalization
Here mapping between fields of source document and dynamic recipient list report is done.
m. Go to Format. Select the output format.
n. Go to Destinations.
As shown in above screen shot:
- %SI_EMAIL_ADDRESS% à this will send mail to mail ids mentioned in Recipient List Report.
The file which user will receive will be determined by Use Specific Name. Here we have mentioned Report %SI_OWNER%.%EXT%
The user will receive report as Report Ind.ext, Report Pak.ext
o. Click on Ok and we can see publisher “Country sales Publisher”. Right click –> Schedule
p. Check options Destinations and Formats , it should have values same as given in publisher. Click on schedule.
Scenario 2: Scenario 2 can be achieved by modifying above steps
q. In step k, only mapping for Recipient Identifier is required, remove mappings for Name and Email
r. Step l and Step m will be same
s. In Step n, destinations need to be modified. Choose FTP server and provide the details
The reports will get saved in Publication folder of FTP server. There will be different copies of the report based on country values.
The reports will be saved on FTP server as Report Ind.ext, Report Pak.ext
t. Step o and Step p will be same. Only in destinations FTP Server must appear.
B. Errors occurred in Publication and rectification:
- On scheduling you may get dynamic recipients error – An exception was caught while doing dynamic recipient resolution.
This may be because of below reasons:
- In dynamic recipient option there might be zero records when we uncheck Use entire list
If this is empty then we will get error after scheduling. We can see that in above screenshot there are 1 to 7 pages but there is no data.
Solution: Here we opened the Dynamic Recipient report in info view and refreshed the query and saved it. Then go to edit query and uncheck if it is refresh on open. Click on save –> close the prompt for edit query –> again save the report.
It may happen that still data might not appear. In such cases delete the publisher and re-create it. After following above steps my issue got resolved.
- This issue can occur if dynamic recipient list report has # values for recipient identifier. Here Country key should be having # values in recipient list report
- This issue can occur if dynamic recipient report has prompt for recipient identifier. i.e. country key should not prompt at query level. Other prompts can also be there but they should have default values. Best is to not have any prompts in report.
- This issue can also occur if dynamic recipient has setting to refresh on open.
- Error received while publishing files to a file system i.e. shared folder
This error is received when we are trying to publish and save report on shared folder which is Windows machine. Since Bobj server is UNIX server so issue occurs because of incompatibility between two systems. Below needs to be followed:
- On UNIX server, start rexec demon.
- After that a third party tool needs to be used i.e. Samba, which will help in writing files on Window server.
- Best way is to not use File System for scheduling. Instead FTP server can be used.
- Error –> destination dll disabled. crystalenterprise.diskunmanaged
This error occurs because of destinations. For example if one wants to schedule a report with destination as “EMAIL” and gets above error, then this because of adaptive server.
- Login to CMC
- Go to Servers
- Right click on all adaptive servers –> Go to properties –> Click on Destinationà
- Add Email in destination –> Save and Close
- There can be issue where users receive reports with all countries, splitting of reports does not take place
Solution: This is because of setting in Personalization. We need to check whether mappings are properly done.
- Error –> The execution of the specified analysis query failed.-The Web Intelligence server cannot be reached. Contact you Business Objects administrator. (Error: RWI 00236)
Solution: This error occurs if there are more than 1 million rows or 10 million cells in report(SAP Note -1459759). Here, we need to reduce the number of records. Another way is to schedule the publisher by un-checking “Use Entire List” in dynamic recipient and putting selection. When this gets successful then reschedule the publisher with other selections.
Good .
nice job....
Very Clearly explained. I was thinking that Dynamic Recipients report won't work if there are any prompts. Your blog helped me to resolve my issue. After unchecking "Refresh on Open" and providing default values it worked. Thanks a lot.
I have one query. In the above example for the Dynamic Recipients Report for Country India two users are there. So, when we schedule will it send two reports to two users or only picks up anyone of the users. As it matches with Country key with source report.
What i have observed was if there are duplicate records in Dynamic Report when we publish the report that time system won't generate duplicate mails thats the best.
Just explain clearly, In your example for India you mentioned two different users instead of with same user two entries in this case system genearte only one e-mail. This was my observation. This situation occurs when we use the same source report as dynamic report for sending mails this scenario occurs.
Hello,
I dont understand one thing :
I've made a webi report to get the dynamic recipients, based on a universe. The list of the different recipients have changed for the time I created the publication, but the publication emailing only recipients of the beginning.
I tried to publish every days the recipient webi report, but always the recipients list of the beginning.
So, how to make a dynamic recipient list based of a webi report which is refrehed just before the publication
Thanks
Hi,
Getting an error when trying to run the publication after SAP BO 4.2 SP04 Patch 04 installation. Seems to be the problem with the WebIProcessing server. Do you have any ideas what might cause this error? I am getting this error once trying to run any publication with dynamic recipients. Everything else seems to work fine.