This blog describes the basic concepts of report design in Crystal Reports and helps you to decide what information you want to include in your report.
The report design canvas is the area where you design the structure of your report. You can place various elements on the canvas including data objects, charts, and text elements. Two views are available for laying out the information and previewing it. One view shows the structure only (“Structure” mode) and the other view is a page that includes data (“Page” mode).
Content of the report
Before you start deciding your report design, you should outline the information you want the report to provide.
Define report purpose
A good starting place in the development of a report is to write out the purpose of the report in a sentence or two. The purpose statement helps you focus on your primary needs, and it gives the report both a starting point and a goal.
For example, the purpose of the report is to show sales activity for every day / week/ monthly.
Defining the purpose of the report before you start is a critical step in the overall process.
Determine the Report Layout
First write report tittle and include print date, information on who prepared the report, a block of text to describe the purpose of the report, the range of data covered, or something similar. The information can come from a variety of sources, depending on the kind of information you plan to use.
Identify the Data
Find out the type of database you are reporting from and check out whether you will be using a data file, SQL/ODBC, or another data source for your crystal reports.
The body should contain all the data needed to fulfill the statement of purpose you wrote for the report. It should also contain all of the data needed by the various users that you have identified. Crystal Reports allows you to combine data from different databases when you create reports, so you have a great deal of flexibility in your work.
Some report information can be drawn directly from data fields (sales information, for example); other information will have to be calculated based on data field values (for example, sales commission, based on the relationship of sales to quota). In your planning, it can be helpful to segregate or flag data that needs to be calculated from that which can be used directly.
You should take the time to get to know the data type for data fields that will be used in your calculations. Since formula functions and operators work with specific kinds of data, it is important to recognize the data type you are working with, before you start any calculations. For example, some functions require numeric data, while others work with only string fields.
Manipulate the Report Data
There are several ways to manipulate data when you design a report. Below are some options you may want to consider while manipulating the report data in required form.
Grouping Data – Crystal report provides several options to Group your data. For example, you can group your report data by Customer/ by date / by hierarchy, etc.
Sorting the data – Crystal reports gives you sorting options and you can sort your data whatever the way want.
Selecting specific Record – Crystal Reports gives you the opportunity to base a report on all records in a given database, or on a limited set of records from the database. Crystal Reports can be used to select records based on simple date ranges or comparisons, or to create complex formulas to identify the records to be included. Take a few minutes to determine the records needed for the report and list the criteria to be used for selecting those records. For example,
• Records only for a specific group of customers.
• Records for a specific range of account numbers out of the total number of records in the database.
• Values from only those records that fall within a particular date range.
Aggregation – Crystal Reports allows you to do total, average, count, or determine the maximum or minimum value included in all the values in any column on the report, and it also allows the grand total (or the grand total average, grand total count, and so on) to be placed at the bottom of the selected column.
Alert / Flag – You may want to call attention to some data by flagging it on the report. For example, non-moving inventory items are often flagged on inventory reports so they can be given special attention. You might want to flag each item that has shown no activity during the last month, during the last three months, or during some other defined period. To flag information, identify it and any conditions that will trigger the flagging.
Format – Crystal Reports gives you the opportunity to underline report elements, and change the font type, size, or color used for specific report items. It allows you to put borders around items and to draw lines and boxes (to break the report into sections), set off headings, and so on. All of these formatting tools can be used to highlight key data on a report.
Define Printing Area Characteristics – Each report area has its own printing characteristics. It is important to understand these characteristics because they affect when and how often different report objects get printed.
Order of Print Area in report – Areas print in the order they appear on the Design tab (top to bottom). If there is more than one section in an area, the sections print in the order they appear. For example, if you have three Report Header sections, all three of those sections will print, in order, before the section(s) in the Page Header area begin to print.
Report Objects Print Frequency – The way objects print will determine how you design your report. This will help you to decide where to place charts, Cross-Tabs, and formulas to get specific results.
Report Header – Objects placed in the Report Header area print once, at the beginning of the report.
• Charts and Cross-Tabs placed in this area contain data for the entire report.
Note: Both charts and Cross-Tabs can filter report data by using a Group Sort; in such cases, the data shown in the chart or Cross-Tab is a subset of the data for the entire report.
• Formulas placed in this area are evaluated once, at the beginning of the report.
Page Header – Objects placed in the Page Header area print at the beginning of each new page.
• Charts or Cross-Tabs cannot be placed in this section.
• Formulas placed in this area are evaluated once per page, at the beginning of each new page.
Group Header – Objects placed in the Group Header area print at the beginning of each new group.
• Charts and Cross-Tabs placed in this area contain data just for the group.
• Formulas placed in this area are evaluated once for each group, at the beginning of the group.
Details area – Objects placed in the Details area print with each new record.
• Charts or Cross-Tabs cannot be placed in this area.
• Formulas placed in this area are evaluated once for each record.
Group Footer – Objects placed in the Group Footer area print at the end of each group.
• Charts and Cross-Tabs placed in this area contain data just for the group.
• Formulas placed in this area are evaluated once for each group, at the end of the group.
Report Footer – Objects placed in the Report Footer area print once at the end of the report.
• Charts and Cross-Tabs placed in this area contain data for the entire report.
Note: Both charts and Cross-Tabs can filter report data by using a Group Sort; in such cases, the data shown in the chart or Cross-Tab is a subset of the data for the entire report.
• Formulas placed in this area are evaluated once, at the end of the report.
Page Footer – Objects placed in the Page Footer area print at the bottom of each page.
• Charts and Cross-Tabs cannot be placed in this area.
• Formulas placed in this area are evaluated once per page, at the end of each new page.
Develop Report Prototype
1. create a new report and define the page size (paper size – A4, A3, etc.) and you will be using for the finished report.
2. Position the title and other descriptive header information, using boxes or lines to represent report elements.
3. Position the footer information.
4. Review the page layout for balance.
5. Look at the information you intend to include in the body of the report:
• Count the number of fields being used and estimate the appropriate spacing between fields.
• Use rectangles to pencil in the fields within the estimated spacing.
• Change the spacing if you need to.
• Decide on a logical sequence for presenting the data in the body of the report.
• Label the fields to indicate that sequence.
6. Use small boxes to indicate group values and totals.
7. Place random flags in the column where you want flags to appear.
8. Darken any elements you want highlighted to make them stand out from the rest of the prototype.
9. Review the finished product for layout and balance, and make changes as needed.
Hi Madesh
Very warm Regards.Kindly help me out in resolving the issue being faced in Crystal reports.The error shows:
“Failed to retrieve data from the database. Details: HY000:[Teradata][ODBC Teradata Driver][Teradata Database].Call cannot be submitted in multi statement request[Database Vendor Code:-5497]”
Thank you
Hi madesh keep posting. Thanks for your valuable time and knowledge for sharing
I have one doubt pls clarify.
If any obj added in DB later,without interrupting the universe can we get that obj into webi.
Can we achieve this by using custom SQL? What is custom SQL why it’s used.
Hi Venkat,
Best way you have to refresh the universe structure and check the changes in Webi report.
In report query panel you can see the report SQL and if you want to change any minor logic in the query and you can select the option custom SQL and change accordingly. If you add any new objects into the Query panel, again the Custom SQL will go off and this method is not recommended for good report design.