Overview

You can trigger reports from Business Objects on successful completion of PowerCenter workflows. For example, you have an FTP session and other sessions in a workflow that load data into Oracle database and calculate fact tables. You want to trigger a report from Business Objects if all sessions in the workflow succeed. You do not want to trigger the report from Business Objects if any session or workflow tasks fail. When the workflow completes successfully, use the file to trigger the Business Object report.

To trigger Business Objects reports when a workflow completes successfully:

Configure the PowerCenter workflow.

Call the workflow success file from Business Objects.

Schedule Business Object reports in Central Management Console.


Configuring the PowerCenter Workflow


As the workflow is sequential, add a link condition between sessions such that the next session runs if the previous session succeeds.

In the Workflow Designer or Worklet Designer workspace, double-click the link you want to specify. The Expression Editor appears.

Untitled.png

Trigger Reports in Business Objects via Informatica workflows

In the Expression Editor, enter the following link condition: $<SessionName>.Status = Succeeded.

Validate the expression using the Validate button.

The Workflow Manager displays validation results in the Output window.


Untitled.png

The last session in the workflow creates a flat file, wf_name_success.txt. You use this file to trigger reports from Business Objects.

Untitled.png

Calling the Workflow Success File from Business Objects

Create a script that copies wf_name_success.txt local to the Business Objects server.

Log in to CMC in Business Objects.

Click Events.

Click New Event.

Select File as type.

Enter the event name.

Trigger Reports in Business Objects via Informatica workflows

Select the server name.

Under the file name, enter the path that you copied the wf_name_success.txt file on to the Business Objects server.

Untitled.png

Scheduling BO Reports in Central Management Console (CMC)

Schedule Business Objects reports using external events in CMC.

Log in to the CMC console.

Untitled.png

Create an event to trigger the report.

Trigger Reports in Business Objects via Informatica workflows

The event is the file that the last session in the workflow creates after successful completion of the workflow. You can bring this control file local to the Business Objects server with an FTP script or by creating the file on server.


Click Events.


Click New Event.

Untitled.png

Select File as the type.

Enter Trigger Report as the event name.

Select the server name.

Enter the complete path of the file name that the Business Objects server uses to trigger the report.

For example, enter the path as C:\CTRL_Files\Trigger_Report.txt.

Click OK.

The list of all events under the events name appears.

Untitled.png

Trigger Reports in Business Objects via Informatica workflows

Select the report to schedule.

For example, select User Activity per Session.

Untitled.png

Click the Schedule tab.

Select the Daily option.


Untitled.png


Select Every X days with events as run.

Enter the start date. Start time should be before the trigger arrives on the BO server location.

Enter the end date.

• Under available events, choose Trigger report, the event that you created in step 6.

• Click Add.

• Click the Schedule button.

Untitled.png

Click the History tab.

Untitled.png

Select the instance name.

This shows how the schedule of the report and that the report is waiting for the trigger report event.

Untitled.png

Note: You get the schedule of the reports on successful completion of the workflows. You can create a batch script to delete these Business Objects control file. When you run the workflow for the next day, the Business Objects uses the control file generated for the next day’s schedule.


Sample script to copy the file from Informatica to BO server:

#!/usr/bin/ksh Host_name=”some ip”

USER_ID=”user_name”

PWD=”password”

echo “Host Name is : $Host_name”

echo “User_id is : $User_id”

echo “Password is : $Pwd”

ftp -n <$Host_name> <<End-Of-Session

user $USER_ID $PWD

type binary

put some-file

bye End-Of-Sessi

exit;

if [ $? -eq 0 ] then

echo “Successfully FTP’ed the file to remote server…”

else

echo “Error has occured while FTP’ing the file to remote server”

fi

echo “End of the script…”


To report this post you need to login first.

6 Comments

You must be Logged on to comment or reply to a post.

  1. Luis G Rivera

    For those that are not ETL devolopers, is there anyother way to condition scheduled report? I have scheduled several reports to run every week. I would like to run the reports only if it exists data for that week. Otherwise, I there is no need to run the report. Any piece of advise?

    (0) 

Leave a Reply