Automate scheduling using File event
Hi All,
In this article, I will be providing all the perquisites and details that are required to Automate scheduling in BusinessObjects 4.1on Windows platform. These details are specific to scenarios when we are using network drive to trigger file event as well as export the schedule instance.
Overview: File based event triggering is most commonly being used in automating the scheduling in BusinessObjects (BO) once loads are completed in BW. In this example below mentioned workflow is defined to automate the scheduling:
Workflow explanation:
1: When Scheduling is configured as mentioned in implementation steps in below section, Report schedule immediately goes into pending status.
2: Event server monitor the location set in file based event for dummy text file.
3: As soon as File is created and Event server detects that, it notifies Central Management Server (CMS) server and file based event is triggered.
4: When File event is triggered, report schedule runs and export is sent to the specified destination.
5: Schedule success or failure will trigger Schedule event.
6: Schedule event triggering will execute Program file and dummy file is deleted from shared location. Dummy file create on file server has been deleted, so that for next load completion, event can be triggered for new dummy file generated.
7: As recurrence is set for daily, schedule again goes into pending status and wait for new load to complete and dummy file to get
generated.
Prerequisite:
1: User ID with which BusinessObjects services are running on server, must have full access on Network drive where dummy file is placed by BW loads and Exported files from BusinessObjects schedule needs to be placed.
Ex. If Server Intelligence Agent (SIA) is running with Domain user, then that Domain user must be have full control on shared location on file server where dummy file is placed by BW loads and Exported files from BusinessObjects schedule needs to be placed.
Refer: 1219698 – Event server not triggering an event when a trigger file is created onnetwork
2: Add domain user account to the following policy to schedule the program object successfully.
a. Replace Process Level Token Policy.
b. Log on as a batch job.
c. Adjust memory quotas for a process.
d. Access this computer from the network.
Refer: 1918082 – A scheduled Program Objects fails with error “The Program Object reported an error while running, but no error code was provided” in BI 4.0.
3: Adaptive job server must have destination type as file system included.
Steps to implement:
1: Create a file based event Z_File_Event in CMC with below mentioned parameter:
Server = <BO server name>.<Event Server Name>
Folder= \\<File server name> \<folder name>\Loads_complted.txt
Where Loads_Complted.txt is a dummy file name. This file will be placed by BW in above mentioned shared location once loads are completed.
2: Create one more event as Schedule event, named as Z_Schedule Event in CMC.
3: Add a Program file in repository to delete a dummy file created by BW from shared location as mentioned below:
Create a Windows batch file named “To delete dummy file.bat” with below mentioned content on your machine:
DEL <File server>\<Folder Name>\Loads_complete.txt
Upload the Program file to repository as shown in screenshot.
4: Now, schedule a report, let’s say in our case “Charting Sample.wid”
5: For scheduling setting, Set recurrence as daily for daily data load.
6: Destination: To set export on shared location, set parameters as described below:
User name/Password: it will be the user name and password of the user that has access to the network share.
Ex: User Id: Domain\<User name>
Password= <Domain Password>
Directory will be the fully qualified domain name path of the shared location.
<File server>\<Folder Name>\
File Name = Name you want to give to the scheduled instance
7: In the Event section of Scheduling settings, select event to Wait for Z_File_Event and Events to trigger on completion Z_schedule Event.Refer Screenshot:
8: Click on schedule.
9: Right click on Program object “To delete Dummy file.bat” and select schedule.
10: For scheduling setting, Set recurrence as daily for daily data load.
11: In the Event section of Scheduling settings, select Event to wait for “ Z_Schedule Event”.
12: In Program Logon section, enter userid and password that has full access on shared location where dummy is placed.
Ex: User Id: Domain\<User name>
Password= <Domain Password>
13: Click on Schedule.
Important: BusinessObjects Scheduling must be implement prior to dummy file is placed in shared location. Schedule will be trigger only after file is created, not for the existing file.
Once above mentioned steps are implemented and new load is completed, a dummy text file will be placed by BW to the shared location and schedule will start in BusinessObjects. Dummy file will also be deleted automatically after schedule is completed. In thi way scheduling is completely automated.
Thanks,
Manveer Nakoti
BO Consultant
Accenture
Very Nice Document Manveer!!
Really Helpful.... 😎
Excellent Document.
Good Job Manveer.
Good Document
Amazing. thanks
I am having a problem with scheduling a LCMBIAR, whenever I do a promotion it takes 4hours. I check with DBA and Network Admin. Everything fine.
Don't know why please help me in this
Hi Guys,
For a recurring scheduled job that waits for the file based event to occur, is there a way to receive a failure notification email if the file that the report is waiting for doesn't arrive on that day.
SAP BO version 4.1 Sp3
I have a webi report scheduled to start at say 9 AM every day when a text file is created on the shared drive. Obviously, I'm using a file based event here to trigger the scheduled job. I have enabled the Notification email setting to receive both the success and failure emails. Since this is a recurring job (scheduled the report to run every day for the next 2 years) the report runs everyday at specified time and looks for the file. If the file arrives in the specified destination the scheduled job runs for that day and send a success notification email.
If the file doesn't arrive for whatever reason on that day then the scheduled report will not run, but I will not receive a failure email notification either because the report never failed since the expiry date on the report is set to 2 years from today. How do I notify the admins/users so that they know that the report failed to run for that day so that they are not waiting for the report to arrive? My requirement is that when the file doesn't arrive after certain time on a given day eg:- if the report instance starts at 9 AM and the file doesn't arrive by 11 AM then I need to send a notification to the users that the report failed to run. Is this possible or is it a limitation in BO?
Thank you!
Hi Dilip,
As per my understanding. It is not possible as we know that when we set file based event, schedule job goes into pending status and will be in the same status until file is generated in the defined location.
Hi guys,
Is there any guide to follow about how do create file in BW after chain process has been finished?
Regards
S. Gordon
Hi Manveer,
I just have question on Scheduling. So basically, we have a Recurring report instance based on a File-Event trigger. We've set the recurrence to Daily 6pm. Based from the Schedule window, it will run once per day.
My question is, will the File-Event trigger overrule(?) the recurrence we've set? Our goal is that the Recurring report to be dependent on the File-Event trigger. During our test, the recurrence ran only once even though the File-Event has been triggered.
Kind Regards,
Mark
Good Doc , I implemented this feature in BO XI R3 but BO now have new advanced Features in BO 4.1 SP5 based on Security Profile Report Busting .
with regards,
Anitha
Just in case if you do not have the domain account added to security policy as mentioned in the pre-requisites above :
2: Add domain user account to the following policy to schedule the program object successfully.
a. Replace Process Level Token Policy.
b. Log on as a batch job.
c. Adjust memory quotas for a process.
d. Access this computer from the network.
Make sure, once you add the domain user account to the policy, you need to restart the SIA.
Thanks.
For me, logon issues were solved with note http://service.sap.com/sap/support/notes/1990424
Hi
Is there any document available similar to this for LINUX environment?
Regards
Pramod
Hi,
I sometimes experience issues where few (1-3) out of 20 scheduled reports have not run even though the scheduling settings and the trigger event file is exactly the same. Any ideas what to do to find out what is cause of this issue? I mean there has to be something why the schedule service has not been started in SAP BO. Using SAP BO 4.2 SP2.
P.S. If it would be a problem with an event or schedule, then the other 20 reports would not run as well. But in this case there is only a few (mainly 1) that is sometimes not running.
Thanks,
Vytautas
please check the error detail in failed instance. It will give you more detail
Please note that there was no failed status. The schedule simply did not start at all. Looks like it skiped the schedule for some reason. So there is no error detail to check. Maybe trace would be able to help in this case. Anyway, I kind a solved this issue once I have applied the limits on all BI folders and rescheduled those schedules that sometimes did not run. I do not remember having this issue since January. But I still do not understand what was the problem why sometimes very few reprot schedules will simply not run for no obvious reason.
Hi,
Could you please let me know how do you solve this issue.
We are trying to implement File based scheduling for various reports.
but while testing , i am facing same issue.
issue: lets say we have 2 reports (A & B) which are using only one single file based event to trigger the both, if report A is schedule at 9 AM and B is scheduled at 10 AM. The Event is triggering the report A after the File has been placed in the server. but report B is not running at 10 AM.
Could you please let me know how to solve this issue.
Thanks in Advance,
MohammadZ.
Good write up. Useful.
My attempt end up failed on file deletion and receiving error message "Could not capture output for the program".
Any idea?
Hi Manvir,
This blog was really helpful. Thank You!
I am at this point only trying to schedule a report on daily basis that is defendant on a Load_completed.txt in our shared network
For this I first created a system event then a schedule event as mentioned in your steps and then scheduled a report based on these events.
I also made sure that domain user account that CMS is running has read write permissions on the network location where the Load_Compelted.txt is placed.
But my schedule is in pending status all the time...not doing anything when testing it.
Am I missing anything?
it will be in pending until load_completed.txt is not generated. please test it by generating test file. it should work,
I scheduled by Event to start at 5PM......does the event start looking for load_completed.txt only after that? I assume answer is YES. But I am wondering what if load_completed.txt is sitting in network location before 5PM? does the event pick up that file or still waits?
In my test I observed that the event keeps looking for file from 5PM and only picks a file that comes after 5PM....if there is a file sitting with time stamp 4:59PM the event does not pick it up....is this the expected behavior?
Hi guys,
I have configured a similar scenario but just to launch one report once a file is created, I performed all the necessary steps assigning the domain account to run the BO processes and assigned the domain account privileges within the shared network drive.
I have validated using the domain account lo login into the server holding BO services(Event Server) and I was able to access to the path provided in the monitored event using the IP of the shared drive.
The concerns is that is only working when using IP and not by hostname, did someone has experienced the same behavior or any ideas to make it work by using hostname?
One remark is that the hostname is taken from the DNS that is configured for all servers within the Network, so if pinging the hostname through CMD I'm able to reach it without concerns, also while trying to access the path through the IP, but if I try to use the hostname to access the path I'll receive a prompt to provide the credentials again with below error message, even by adding the entry to the "hosts" file:
"The system cannot contact a domain controller to service the authetication request. please try again later"
Hope someone can guide me on how to make it work, I would think the concer is within the DNS but any ideas would be great.
Thanks,
Roy