Building Reports๐
With Fomin Report Builder (FRB), your users can create, customize, preview, and print reportsโright from your applicationโwithout needing any development skills.
This guide walks through everyday tasks like inserting new reports, applying filters, building layouts, and navigating the ReportManager interface.
๐งญ Navigating ReportManager๐
The ReportManager procedure is the userโs central hub for managing reports. Its tree-style interface displays available .rpt files grouped by type or folder.
ReportManager actions:๐
| Action | Description |
|---|---|
| Insert | Create a new report file |
| Change | Edit an existing report |
| Delete | Remove a report from the list |
| Send the selected report to the printer | |
| Expand/Contract | Collapse or expand report groups |
๐ก The layout and available actions depend on your use of
ReportManagerTreeand supporting control templates (e.g.ReportManagerUpdateButtons).
๐ Creating a New Report๐
- Launch your Clarion app and open the
ReportManager - Click Insert to start a new report
- The Report Formatter opensโa canvas for laying out content using "frames"
- Use the toolbar or right-click to:
- Add report sections (headers, details, footers, groups)
- Insert frames for data, formulas, or static text
- Save the file with a
.rptextension (e.g.CustomerList.rpt)
โ๏ธ Pro Tip: You can also clone an existing report using Change โ Save As..., then tweak the layout.
๐งฑ Report Sections at a Glance๐
FRB lets users build multi-section reports. Each section controls how and when content prints:
| Section | Purpose |
|---|---|
| Page Header | Appears at the top of each page |
| Report Header | Printed once at the top of the first page |
| Group Break | Defines sort order (not printed directly) |
| Group Header | Printed before each group of records |
| Detail | Core data section (one per record) |
| Group Footer | Totals or summaries after a group |
| Report Footer | Final totals and remarks (last page only) |
| Page Footer | Appears at the bottom of each page |
Add, remove, or reorder sections using the section menu or right-click context options.
๐งฎ Adding Data Frames๐
Frames are visual containers that show text, variables, or expressions.
To add a frame:๐
- Select a report section
- Click New Frame or right-click โ Insert Frame
- Resize and position using your mouse or arrow keys
- Set contents:
- Text (e.g.
Customer Report) - Expression (e.g.
=CustomerName) - Formula (e.g.
=FORMAT(TODAY(),@D17))
Formatting options:๐
- Horizontal & vertical alignment
- Fonts, colors, and borders
- Dynamic filling
Pictureformatting (e.g. date, time, currency)
๐ง Expressions starting with
=are evaluated using Clarion'sEVALUATE()function.
๐ Sorting, Filters & Totals๐
๐ฏ Filtering Records๐
In Report Properties:
- Use logical expressions to limit records (e.g.
Balance > 1000) - Combine with
AND,OR,>=, etc.
Use the [Dictionary] button to insert fields.
๐ข Sorting (Group Breaks)๐
To sort records:
- Insert a Group Break
- Set a Sort Expression (e.g.
LastName) - Add Group Header/Footer to display grouped values or totals
Group order determines sorting hierarchy.
ฮฃ Calculating Totals๐
You can define result variables for:
- Sum
- Average
- Count
- Min / Max
- Custom
Evaluate()expressions
Configure Tally On and Reset rules to control when calculations run (per record, group, or page).
๐จ๏ธ Printing & Previewing๐
Before printing, you can:
- Set page layout (margins, size, orientation)
- Define preview mode (always, never, ask at runtime)
- Choose print destination (printer or file)
Preview options include support for third-party tools like:
- CPCS (Creative Reporting Tools)
- RPM (Report and Presentation Manager)
๐ Using the Dictionary & Formulas๐
Press F2 or click the [Dictionary] button when entering:
- Filters
- Sort expressions
- Frame formulas
Youโll see a tree-style reference for:
- Available table fields
- Clarion operators and functions
- User-defined variables and totals
This makes building powerful expressions easyโeven for non-programmers.
โ๏ธ Power Features๐
- Save As...: Duplicate reports quickly for reuse
- Frame Copy/Paste: Speed up layout building
- Suppress Printing: Use conditional logic to hide sections (e.g.
Page_Counter = 1) - InvokeDictionary Button: Lookup available formula variables at runtime
๐งโ๐ซ Example: Date & Time in a Frame๐
Add this expression to a frame in the header:
=FORMAT(TODAY(), @D17) & ' ' & FORMAT(CLOCK(), @T1)
Outputs something like:
2025-07-09 18:45:00
๐ง Keyboard Tips๐
Ctrl + Tabโ Cycle through sectionsCtrl + Arrowโ Move selected frameTab/Shift + Tabโ Select next/previous frameCtrl + Clickโ Multi-select frames
โ Next Step๐
Dive into the developer guide to see how to plug FRBโs capabilities into your Clarion projectโincluding multiple RunTimeReport procedures, user functions, and embedding FRB actions in your code.
โLet your users own their reports. You just build the tools.โ