Use Event based schedules in BOBJ
There are reports which are scheduled based on time (triggered at a particular time) . The issue with such time based reports is that , if the underlying tables are not refreshed or still loading, the reports that are generated will have incomplete data. In such instances, the report has to be refreshed again to view the complete data.
Also if the tables are refreshed earlier than the report schedule timings , users will have to wait till the report is triggered and refreshed.
|Table load Finish time||Report scheduled time||Remarks|
|6:35 PM||6:00 PM||Report will have incomplete data and needs to be retriggered again|
|5:30 PM||6:00 PM||Users need to wait till the report is triggered at 6:00PM though , table load is completed at 5:30 PM|
To resolve the above issues, we need to create File based event schedules instead of time based schedules. File-based events wait for a particular file (the trigger) to appear before the event occurs.
Before scheduling a report that waits for a file-based event to occur, you must first create the file-based event in the Events management area of the CMC. Then, you can schedule the Report and select this event.
File-based events are monitored by the Event Server. When the file that you specify appears, the Event Server triggers the event. CMC then releases any schedule requests that depend on the event
Step By Step Implementation:
- Create a Trigger file at the database server (Oracle, SQL server etc.) which will be generated on completion of the Table load.
- This trigger file needs to be configured to be sent to the Business Objects Server at a particular location .for example, C:\<folder>\<FileName>, or /home/<folder>/<FileName>).
In Business Objects CMC tool, create an File based Event
- Navigate to the Events management area of CMC.
- Open the System Events folder.
- Click Manage > New> New Event
- Under Type list, select File.
- Provide a name for the event in the Event Name box.
- Provide description in the Description box.
- Under the Server list, select the event server that will look for the specified file
- Enter a file name in the Filename box.
Enter the absolute path to the file that the event server should look for (for example, C:\<folder>\<FileName>, or /home/<folder>/<FileName>). The directory should be on a local drive.
- To enable alerting for the event, select Alerting Enabled, and enter a message in the Alert Message box.
When the event is triggered, this message will be included in the alert notification that is sent.
- Click OK.
After the Event is created , you can view them under Events section in CMC.
Date modified defines the time at which the Trigger file was received at BO.
In the report schedule, select the respective File Event that the report needs to be depend on .
After the schedule is created, the report will be triggered after the file based event is updated based on the trigger file sent to BO server from DB server and the remaining schedule conditions are met.
With above steps, you should be able to optimize the scheduling of Reports by saving time and avoid the manual effort of rescheduling.
Some additional information about file events:
My clients who use file events usually do one of two things to make this work:
1. Run a .bat file on a Windows schedule to delete all of the event files at midnight or another specified time.
2. Have steps in the ETL process to delete one or more event files at the beginning of the process and re-create it/them at the end of the ETL process.
Archiving of the event files is required. Running .bat file is good solution on windows based server.
I don't think keeping an "archive" of the event files necessarily makes sense unless there's some text in them that is different every time they're created that is being used for something else. BOBJ doesn't read the text, it just looks for the presence of the file after it has been absent.
thats correct Dell