Monday 5 May 2014

Title:  Report Design Aid Tips


Reports available within the PeopleSoft EnterpriseOne software provide the ability to view data on-line or as printed material, in an organized and useful format. In addition to predefined reports, the PeopleSoft EnterpriseOne software provides the Report Design Aid Tool (RDA), which allows for customization of  reports as well as creating new reports, or manipulating and converting data into or out of EnterpriseOne software tables. 
Report Design utilizes the Report Design Director and the Navigation Assistant to aid in report creation.  The Director allows for the creation of a report object and guides the user step-by step through the report creation process. Using the Director, one body section can be created which can be a group, tabular, or columnar section. Application reports include predefined report director templates to create application specific reports such as financial, fixed asset, or profit management reporting.

·                     Report object
·                     Report template
·                     Report versions
·                     Report sections

Columnar Section
The layout of a columnar section consists of column headings with the associated column values listed under the headings. The column heading (a constant) is linked to the column data (variable) and cannot be disconnected in the report. If one is deleted, the other is deleted also. This section will execute once per record.

Group Section
Group sections have a free-form layout. This section type has the most flexibility for object positioning. For data items, initially the constant and variable of the data field are linked. They can be disconnected and either the constant or the variable can be hidden or deleted.
Tabular Section
Within a tabular section, you can present data with spreadsheet functionality in columns, rows and cells. Tabular sections summarize and print data at the lowest level break. Level breaks are defined in the Data Sequencing for the tabular section. Automatic row description and subtotals are printed for each level break. A grand total is also printed at the end of the report. You can disable totaling for a specific column variable by checking the ‘Suppress at Totals’ box under the Advanced tab when you select the item's properties. Removing the row description will not print the description; instead it will print a blank line. It can be added back by selecting Column|Create|Row description column.
Note: A tabular section cannot be defined as a conditional section, cannot be used within a sub-section join and cannot have level break header or footer sections. 

Sub-Section Join
A sub-section join creates a parent-child relationship between two sections by joining the child section to a parent section based on like values. An option is also provided to join the child section at level breaks defined in the parent section. The parent and child sections cannot be tabular sections; they can be either columnar or group or a combination of both. The child section is printed each time after the parent section has printed. 
Page Header, Page Footer, Report Header, Report Footer
 A report can only have one of each of these sections.
Custom section
    Custom sections allow you to control, through event rules, the information that prints on a report. You can use custom sections to force a page break by creating a custom section with no objects, then activating Page Break after Print in that section’s Section Properties. You can use custom sections to print variable text. Custom Sections can also be used for sections that present the same information, but are formatted differently. You can call a custom section from any event rule except INIT_Section. If you try to call a custom section using INIT_Section, your report will not process.


Order of Section Execution
In RDA, the layout of sections is not necessarily the order of section execution. Other than the report header section, a level one section will be executed first. A level one section is a non-conditional, non-header/footer, non-level-break and non-child section. When looking for the first driver section, all the "level one" sections are loaded and then sorted by their position in RDA. The top most section will be executed first.
Page Footer/Header & Level Break Footer/Header Sections as Conditional Sections:
By design, page footers and headers will print at their appropriate location at the end and beginning of each page even if marked as a conditional section. Level break footer and header sections will also print at each level break even if they are conditional.  Marking a level break as a conditional section does allow it to be processed at other times by using the "Do Custom Section" system function.  If you do not want the information printed at its normal location as well as when called, use group sections rather then header or footer sections. 
Printing Report Footer
When a report contains a report footer section, the report will always page break before printing the report footer section.  The Report Footer is not designed to print at the end of a page. You can work around this by to calling a conditional section from within the Report Footer with lots of spaces to force the footer to the end of the page.
Level Break Header Section
Business View fields in this section can have an Associated Description display beside the field value by selecting the option for Edit|Associate|Description. There is no need to use Table I/O event rules or call a business function to retrieve the description.  This is true for any data items that contain a Data Dictionary edit rule to retrieve a corresponding description.  

Level Break Footer Section
When viewing the business view value for a Level Break footer, the value is always the value for the next set of records rather then the current set that the footer is totaling.  Therefore, business view fields should not be used in a Level Break Footer.  Instead, create the appropriate data dictionary report variables within the section and use event rules to assign the report variable equal to the PC variable or Previous Business View value.
Grand Total Section
The automatic grand total functionality currently does not create a section similar to the level break header or footer section. Instead, a custom grand total section must be manually designed and event rules used to accumulate the grand total amounts.
Processing Options and Versions
Processing Options are attached to a report on the report template. Processing Options provide the report designer with additional variables that can be updated by the user at runtime.  It is up to the developer of the report to create the appropriate event rules or data selection statements to use the processing option variables within the report.  No automatic functionality occurs simply by attaching a processing option template. 
To run a report, a specific version must be selected. To get the processing options for a version to prompt at runtime, the prompting value on the version detail screen should be “2”.  If there is no processing option template attached to a report, the prompting value on the versions list will be grayed out.  If a report has processing options, but the version prompting option is set to "No Processing Options", the processing option values for the version are ignored at runtime.  Check-out and update the version prompting option within Version Detail to allow the processing option values to be available at runtime.  

Edit Code on Property Box
You can utilize the edit code on a field’s properties for its display feature. The edit code controls the display of zero balances, commas, and negative numbers. You can also make numeric fields show a “%” sign.  To change the edit code, double click on the column and then choose the tab for Display.  The list of valid Edit Codes are stored in the UDC table 98/EC.  If a field should always have the same edit code when selected on a report, this change can be made at the data dictionary level for the appropriate data item. 

Display Decimal
In RDA, there is a Display Decimal override where you can override the display decimals for a numeric field. This property will work for amount fields only if multi-currency is not activated in the environment. Currency decimals take precedence over display decimals, so when currency is activated, the decimals that display for a numeric are based on the currency decimals.  A workaround to override the decimal placement is to use business function B0000164 - Set Currency Decimals.  This business function will allow you to specify the number of decimals to display on a numeric variable.  

Limit on Number of Sections in a Report
Within the Report Design Aid, there is a limitation to the number of sections that can be created within one report.  If the number of sections within one report causes the report design to exceed 45 inches in length when the ruler is displayed in RDA (available under User Options), then the sections after 45 inches will not print in the correct order.   Currently, if you need additional sections in a report so that the report will exceed the 45 inch constraint, consider creating the sections in multiple different reports and connecting them by using report interconnects.

Hidden Sections in Report Design Aid
In the report tree view, available by selecting View|Report Tree View, all the sections including hidden sections will display with all the fields. This is a good place to search for a section in an existing report. Hidden sections can also be displayed in the workspace by turning on the option for Hide/Show Invisible Sections under View. 

Preview Mode
As a general guideline, Preview should only be used to check the layout of the report. It should not be used to verify that the correct data is printed on the report; instead run a version of the report using Batch Versions.

Version Design Override
If you want to change the report specifications for a version, you do not need to change the template report. Instead, you can override the report specifications at the version level. The changes made to the report specifications for a particular version do not affect other versions associated with the same report template. However, any changes made to specifications at the template level will not be updated in a version with overridden specifications. Therefore, whenever changes are made to specifications at the version level, it helps to describe any modification and difference between the base report and the version in the Version Detail field on the Version Detail form. 

The following 5 sections can be overridden independently of each other at the version level:
·                     Section Layout
·                     Section Data Selection
·                     Section Event Rules
·                     Section Database Output
·                     Section Sort Sequence

When making a version override, select only the options that apply to the override being made.  Do not select additional override options that are not needed for the version modification.  To change the design of a version, the version must already be checked out to the workstation where you intend to do the modification. Once in RDA for the version, focus on the section and select Override Version Specifications from the Section Menu. Check the box for the section to override; now the section will be available for changes.

Version Data Selection and Sequence
Data Selection and Sequence can be accessed either from the Work With Batch Versions form or from the Version Prompting form when the version is submitted. 

When accessed from the Row menu of the Work With Batch Versions form, the version must be checked-out to the workstation. This process is similar to going into Version Design and checking the override box for Section Data Selection and Section Sort Sequence. Changes made this way are saved with the version report specifications. Keep in mind that clicking OK while reviewing the data selection or sequence when accessing it through the row exit saves it as an override; therefore it is good practice to press cancel rather then OK if no data selection and sequence changes have been made and the information should be based on the report template.
When data selection or data sequencing options are accessed from the Version Prompting form when the version is submitted, values entered during submission are runtime only data selection and sequence and the values are used for processing only. Any changes made are not saved with the version specifications.

Data Selection based on Today's Date
Beginning with the PeopleSoft EnterpriseOne software release Xe, a System Value of "DateToday" is now available only in Event Rule design in RDA. It is not available in Data Selection which is the most likely place where it would be useful. As a workaround, a report variable can be created and defined as global in a section such as an invisible report header section and assigned the system value.  Then this report variable will be available for use in data selection for the report.

How to skip printing on bottom part of a pre-printed form
Create a blank page footer section as wide as the section to skip printing.

How to force a page break on a report
Create a custom conditional section with the box for "Page Break after Print" ON under the section properties.  Call this conditional section when the page break needs to occur.

How to print the Version Name and Title on the Page Header Section
Insert Data Dictionary variables to store the version name (alias VRID) and version title (alias JD). In the event DO Section, assign the system value SL VersionName to the DD variable version name and call business function N4002400 - F983051 Get Version Title to retrieve the title into the DD variable version title (pass SL ReportName  and SL VersionName to the business function).

RDA Sections

A report can hold various sections depending upon the business needs. The report design aid provides following different type of sections

§     Columnar Section.
§     Group Section.
§     Tabular Section.

Columnar Section
            The columnar section is used, whenever column layout is preferred.

Characteristics
  • The layout of a columnar section consists of column headings with the associated column values listed under the headings.
  • Each data field used in the section is column heading and values are the record listed under the heading is row.
  • The column heading is linked to its corresponding column data, and the two cannot be disconnected in the report as in group section.
  • If the column heading is deleted, then the corresponding column data item will also get deleted.
  • The column section is least flexible, because the user cannot change the column section.
  • User can include multiple columnar sections in a report.
  • To print level-break headers and totals on a columnar report, level-break header and footer sections are required.

When to Use a Columnar Section

Following are the situations, when the columnar section can be used.
  • The column style layout is desired.
  • The totaling levels in the report are mostly static; therefore, they are not subject to change at run time.
  • The section needs to be joined to other sections.
  • Control over the format and appearance of level-break headers and footers is required.
  • You need to make the section conditional.

Group Section
Group section is the most flexible as it is not restricted to standard column and row layout.
  • Group sections are characterized by free-form layout. Because you can place data fields anywhere in the group section.
  • Data fields in the group sections are called controls. Controls are composed of a constant component and a variable component
  • The constant and variable of the control can be disconnected to meet the business needs.
  • Group sections are almost always used for level-break header and footer sections because of free format.

When to Use a Group Section
Following are the situations, when the group section can be used.
  • The free-form layout is desired.
  • The totaling levels in the report are mostly static; therefore, they are not subject to change at run time.
  • The section needs to be joined to other sections.
  • Control over the format and appearance of level-break headers and footers is required.
  • You need to make the section conditional.
The invisible section shown in the figure demonstrate the group section, controls are positioned in the free format according to user preference.

Tabular Section

  • Columnar section has built-in spreadsheet functionality like column and row format. This makes the tabular section suitable for presenting numerical data.
  • The numerical data can be summarized with subtotals and grand totals.
  • An audit trail can be created with the drill-down feature.
  • Tabular sections automatically include the Description column. This column displays descriptions for rows based on data sequencing and level-break fields.
  • Totaling is automatic in a tabular section. If a column does not require totaling, you can turn the totaling function off.

When to Use a Tabular Section

Following are the scenarios, when user will require tabular section.
  • Need to add rows such as a calculation row.
  • Need to work with individual cell properties.
  • When the report requires automatic totaling.
  • When the totaling level changes frequently.
  • Conditional execution at the section level is required.
  • Data selection is required at the column level.
  • When the user need to calculate grand totals.
  • Drill down functionality is required.

Page Footer Section
  • This section gets printed once at the end of each report page.
  • Page footer can have an explanation about what is found in the report.
  • Page footers include data fields, such as constant and run-time fields along with the date variables.
  • A report can contain only one page footer at design time.
When to Use a Page Footer Section
  • When the user needs to print some details regarding proprietary rights of content in every page.
  • To give page number and date details at each page.
Page Header Section
  • A report can contain only one page header.
  • Page header gets printed once at the beginning of each report page.
  • A page header might have a company name, page number, and date.
  • Page headers include data fields, such as constant and run-time fields along with the date variables.

When to Use a Page Header Section
  • To give report title at every page.
  • When the user needs to print some details regarding proprietary rights of content in every page.
  • To give page number and date details at each page.

Report Header Section

Characteristics
  • A report can contain only one report header.
  • Report header gets printed once at the beginning of the report, unlike page header, which gets printed at every report page.
  • The report header might include the report title and date the report was processed.
  • Report headers include data fields, such as constant and run-time fields, and alpha, numeric, and date variables.

When to Use a Report Header Section
  • To give report title at the beginning of the report.
  • To give company name and date details.

Report Footer Section
  • Similar to report header section, but gets printed only once at the end of the report.


6 comments:

  1. HOW CAN I ADD A HEADINGS FOR COLUMN HEADING IN COLUMNAR SECTION?

    ReplyDelete
  2. Add custom section with reprinting in the beginning of the page, do custom section on level break for instance
    Or simply use page header for printing column titles

    ReplyDelete
  3. supress section write ...when to use

    ReplyDelete
  4. supress section write ...when to use

    ReplyDelete
  5. Thanks for the information..!!
    How can we add media objects in reports??

    ReplyDelete
  6. Hi there, You have done an excellent post on Report template design. I’ll certainly digg it and personally recommend to my friends. I am sure they will be benefited from this post.

    ReplyDelete