Getting started with Scribe
Basic concepts
The process of creating reports involves the interaction of two foundational components: Business Logic and Presentation Layer. The Business Logic's task is to define the numeric, textual and other values that make the content of the report. The Presentation Layer's task is to provide a form that displays the report content with the proper text formatting and placement of text, images and graphics on the printed page.
In Scribe, the Business Logic component is implemented with executable procedure flowcharts that are grouped into Reports, Processes and User-defined Functions. The Presentation Layer is built with Print Templates that provide detailed page layout and define visual characteristics of the printed data.
General overview
Scribe is a tool for the graphical development of database reports. Print Template and Procedure Flowchart editors offer a set of pre-fabricated building blocks that provide a high-level abstraction of routine operations such as retrieval of rows from the database tables, or formatting of dates, floating-point numbers and money values. In addition to this, Scribe provides a mechanism for incorporating user-developed Java code as plug-ins, which opens an opportunity to expand and enhance the Scribe functionality in ways not provided for or anticipated by the Scribe development team.
The development of a Scribe report starts with the creation of Print Templates. An example of the Print Template is shown in the following figure:
(click
on the image to enlarge)
When the print template is ready, the Report Procedure can be created. Procedures are flowcharts that define the logic of extracting, calculating and formatting data to be shown in the report. The data can be retrieved from one or more database tables, or it can be returned from system- or user-built functions. Once defined, the data is passed to the print template for proper formatting and display, as shown in the following example:
(click
on the image to enlarge)
The division of functions between report procedures and print templates can be best described as follows:
the print template knows how to display the data, but does not know how to obtain it
Working together, report procedures and print templates produce reports; this example is based on the print template and report procedure shown above: