Tracing Performance Problems in IFS Business Reporter Reports

The following section gives some tips on how to trace performance problems related to IFS Business Reporter.

Experiencing bad performance happens either during the design phase or is maybe more often reported by the end users. In both cases one obvious option is to investigate the design. This is done be the designer that has to have access to the correct version of IFS Business Reporter.

One possibility, if the report is published to IFS Reporting or published for BR Access Only, is to find out how long time it took for the latest execution of the report. This can be done by looking up the form BR Report Level Execution Parameters within Solution Manager in the IEE client.

Figure 1: BR Report Level Execution Parameters form in IEE

The form can be used to find out:

It is now possible to find the data sets that consumes most of the total execution time. The associated SQL statements can be investigated and it is possible to do some server side parameter settings that might improve the performance. This is described more in detail in the section about BR Execution Parameters.

Many times it will however be necessary to also investigate the design of the related IFS Business Reporter report, since the design might cause the performance problem. If the server data sets that consumes most of execution time are known, the Data Set ID in the BR Report Level Execution Parameters form is useful, since it can be used to find the associated client data sets and and the corresponding design.

Taking a closer look at the corresponding IFS Business Reporter report.

Figure 2: IFS Business Reporter report design

There are three Design Rows,1 Design Column and repetition is performed on sheet level.

In order to figure out about data sets, it is necessary to enable display of data sets. This is done in Design Mode before running the report by in the IFS Business Reporter ribbon click on Report Options and then on Debug and then select the option Display Dataset Info Before Executing.

Click OK to save the settings.

Figure 3: Design Mode Report Options in IFS Business Reporter.

When executing the IFS Business Reporter report, after supplying necessary input parameters, the dialog Data Set Information is displayed:

Figure 4: Data Set Information dialog in IFS Business Reporter.

The dialog shows the data sets to be sent to the server and for each data set the corresponding client data sets are displayed via the Design row references grid. Thus it is possible to figure out how many client data sets that are merged into each server data set and also the origin of each client data set in the design.

Click Cancel to avoid executing the report.

Note: If a BR report has been executed then it is recommended to use the Cached Data option when it is executed the next time, since it leads to that only server data sets related to modified client data sets will be executed. Caching of data only applies in Design Mode.

Figure 5: Choosing Cached Data when executing an IFS Business Reporter report in Design Mode.

If a IFS Business Reporter report has bad performance it is of interest to figure out what part of the design that leads to the slow execution. As mentioned before it is possible to find the execution time for each server data set in the BR Report Level Execution Parameters form. This however only works if it is a published report. For a non-published report it will be up to the designer to investigate the performance. The designer still has the possibility to publish the report for BR Access Only but in order to get information about the execution time, the report must be executed at least once and that process can be time consuming in some cases. The option is to start investigating the performance in IFS Business Reporter by using the following options:

  1. Disable Design Sheets
  2. Disable Server Datasets

If the report has many Design Sheets one approach is to disable all sheets except one and then execute the report. If the report execution time is acceptable, then disable the sheet and enable another one and then test again until the most time consuming sheet has been found. Of course it might also be so that all sheets require a fairly equal execution time and that the it is the sum of the time for all design sheets that is the problem.

Figure 6: Disabling a Design Sheet in IFS Business Reporter

The other possibility is to disable server datasets via the dialog Data Set Information in order to find the most time consuming dataset.

In the following example one out of three server data sets in a IFS Business Reporter report has been disabled and thus only two server data set will be executed.

Figure 7: Disable Server Data Sets in IFS Business Reporter.

Note: The report design does not have to be modified.

If the report option Display Dataset Info Before Executing has been defined in Design Mode it leads to that the Data Set Information can be displayed in Report Mode. So once the report has been executed it is possible to find out the timings for each data set by clicking on the Data Set Info button in the options page (in Report Mode).

 

Figure 8: Finding the execution time for server data sets related to an IFS Business Reporter report.

Once the most time consuming part of the investigated report has been found, then focus on this part and try to find a suitable solution. The solution might be different from case to case, i.e.: