In principle, there are two different types of reports for the user:

  1. Simple reports (SimpleReports)

  2. The complete HTML report (HtmlReportCreator)

Simple Report

From any extent, a simple report about the current view can be generated by selecting the 'Create Report' menu.

TODO: IMAGE

Alternatively, the user can create an instance of the 'SimpleReportConfiguration' element. In the detail view of the element, a 'Create Report' button is created. Through this, the user can then select the extent or the element over which the report is to be generated.

TODO: Image

A random file is created on the hard drive, which is then displayed via the default browser.

Configuration

The simple report is configured via the SimpleReportConfiguration:

Name Description

name

Name of the configuration

rootElement

The root element whose properties are to be displayed.

showDecendents

true if its children should also be displayed

showRootElements

true if the root elements should be displayed

showMetaClasses

true if a column should be automatically inserted showing the metaclass of the objects

showFullName

true if a column should be inserted showing the path (full name) to the object

form

If no automatic form is to be generated, a form can be specified here. This must be of type ListForm.

descendentMode

None, Inline, PerPackage

typeMode

PerType, AllModes

The DescendentMode determines whether a new table should be created in the report for each package.

The TypeMode determines whether a new table should be created in the report for each type.

The HTML Report

A report is defined via two configurations:

  1. Via a ReportDefinition, the user can define the format and elements of the report. This is not yet coupled with the data sources.

  2. The actual report is then instantiated via the ReportInstance. Here, the data sources are linked with the Report Definition.

reports classes.uxf

Report Definition

Report Instance

The Report Instance consists of a reference to the ReportDefinition and the sources of the data. These connect the name of the source to a URL via which the DatenMeister reads the data.

The resolution of the URL in the source is done with the help of the WorkspaceResolver of the corresponding workspace.

Definition ReportInstance:

name

Name of the report instance

reportDefinition

Reference to the definition of the report

sources

Collection of ReportInstanceSources that allow the user to specify different sources per report.

HtmlReportInstance

Derived from ReportInstance and enables the export of an HTML document from the ReportDefinition.

AdocReportInstance

Derived from ReportInstance and enables the export of an ADoc document from the ReportDefinition.

ReportInstanceSource

name

Name of the source

url

URL to reference the extent, the collection, or the object.

ReportParagraph:

Expresses a paragraph in the report. This can contain a static text or be generated dynamically via evalParagraph or evalProperties.

name Name of the element

paragraph

Default text that is displayed

viewNode

If evaluation takes place, the ViewNode query describes which object was selected. The selected object is available via the instance 'i' in the parsers.

cssClass

CSS class of the table

evalParagraph

Set if the paragraph text is generated dynamically.

evalProperties

Set if the template parser is to be used to change the properties of the view. The definition of the paragraph itself is accessible via 'v'.

ReportTable

Describes a table that expresses the elements of a ViewNode. The columns of the table are defined via a form definition.

name Name of the element

viewNode

Describes the dynamic query that selects the elements to be displayed in the table

form

Defines the form. This form should be instantiated from the type ListForm.

cssClass

CSS class of the table

evalProperties

Performs an evaluation. The elements themselves are accessible via 'items'.

Table Cell of EvalTextFieldData

A table cell supports the following properties:

name Name of the element

text

Text content of the cell

cssClass

In the case of the HTML report, the CSS class of the cell