About groups Data Model Objects

1-22 Oracle Reports Users Guide to Building Reports ■ Reduce the number of queries in your report as much as possible. In general, the fewer queries you have, the faster your report will run. While multiquery data models are often easier to understand, single-query data models tend to execute more quickly. ■ Queries are processed on the server. ■ To restrict the number of pages that a certain user can produce, insert a record into the PRODUCT_PROFILE table for that user. ■ The only times you should use multiquery data models are: ■ when youre fetching many large columns from the parent and only a few small columns from the child. ■ when youre trying to do things that the query type, such as a SQL query, does not support directly for example, multiway outer join. ■ when you have complex views for example, distributed queries or GROUP BY queries. ■ when you need but do not have or want to use a view. Rationale For a single-query report, Oracle Reports Builder opens only one cursor to fetch all of the master and detail records. For a two-query report, Oracle Reports Builder opens two cursors--one for each query--after appending the detail querys link to the WHERE clause of the detail query. Therefore, for each master record fetched in the master query, Oracle Reports Builder must rebind, execute, and fetch data from the detail query. See also Section 2.3.5, About non-linkable queries Section 4.8.1, Creating a query

1.7.2 About groups

Groups are created to organize the columns in your report. Groups can do two things: separate a querys data into sets, and filter a querys data. When you create a query, Oracle Reports Builder automatically creates a group that contains the columns selected by the query. You create additional groups to produce break levels in the report, either manually in the Data Model view or by using the Report Wizard to create a group above or group left report. Create groups when you want to treat some columns differently than others. For example, you create groups to: ■ produce subtotals that is, totals at a more granular level. ■ create breaks or cross products in your report output. With the exception of cross-product groups, all user-created groups are called break groups. Break groups You create break groups to produce subtotals, print columns in a different direction, create breaks, and so on. A break group suppresses duplicate values in sequential records. For example, Oracle Reports Builder can select the department number for each record; however, the duplicate department numbers are not printed. Basic Concepts 1-23 Cross-product groups You create cross-product groups to perform mathematical cross products, which are generally used to create matrix reports. Group filters Filters enable you to conditionally remove records selected by your queries. Groups can have two types of filters: ■ Oracle Reports Builder packaged filters: ■ First , to display only the first n records for the group for example, the first 5 records ■ Last , to display only the last n records for the group ■ User-created filters, using PLSQL. See also Section 2.3.6, About links versus groups Section 2.6.9, About group filters Section 1.3.2, About group above reports Section 1.3.3, About group left reports Section 2.1.8, About matrix with group reports Section 4.5.1, Creating a report Section 4.5.2, Creating a multiquery group above report Section 4.8.7, Creating a break group Section 4.8.8, Creating a matrix cross-product group

1.7.3 About database columns