Indigo DRS Data Reporting System Indigo DRS
Report Fields Indigo DRS Help

Report Fields are applied to Report Paragraphs, Report Table Cells and other Report Queries. Report Fields are used to process and display Report Data.

XQuery, XSLT and Python can be used in Report Fields and provides the means to query, extract and manipulate data from the Report Data Source.

Enter the details for the Report Field using the property grid. Names for the Report Field are automatically generated, however Field Names should reflect the data being queried in the Report Data Source.

Clicking the Query (...) property button will open the Query Designer.

Report Fields can apply multiple Data Formatting options to Report Data.

Select the best formatting option to display the Field Data according to your requirements. Data can be formatted for Time, Date, Number, Currency and Strings.

Regular Expressions and built-in functions can also be applied to data formats to manipulate and extract report data.

Report Data Formats

Data Formats can also be declared globally in the Report and used throughout the Report to apply common Data Formatting options. If a global Data Format is available it will be shown in the drop-down for Field Formatting under Format Name.

Regular Expressions

Regular Expressions are a sequence of characters that define a search pattern. Usually this pattern is then used by string searching algorithms for "find" or "find and replace" operations on strings.

The phrase regular expressions, and consequently, regexes, is often used to mean the specific, standard textual syntax for representing patterns for matching text.

Select the RegEx Function and enter a search pattern or select a predefined one from the drop-down list.

XSL Transformations

Reporting features Extensible Stylesheet Language Transformations (XSLT) which is a language for transforming XML documents into other XML documents or other formats such as HTML for web pages or plain text.

To specify an XSLT to Transform the Field Data Context click the button on the XSLT property grid to open the XSLT Editor.

The URI Query for the XSLT can be a series of XQuery or Python statements to specify the location of the File URI. If the Value Type is a 'Literal' the URI location will be determined from the URI property. If the Value Type is 'Query' the URI location will be determined from the URI Query.

Field Query Designer

Report XML Data can be queried using XQuery / XPath or Python.

Queries are associated with Report Fields and the output of a Report Query will be shown in place of the Report Field Name.

By default the Query Type is XQuery which will open the XQuery Designer. The Report Data Context will be passed into the Designer for querying using XQuery.

Creating an XQuery using the Designer a Report Field Name must be specified in order to be recognized by the Content Editor and the XQuery Parser.

XQuery retrieving the 'Name' of a Fee from the Report Data Source and displaying the output.

Python Queries

If the Report Field Query Type is Python then Python Scripting will be used. The Report Data Context will be passed into the Python Editor for querying using Python.

The Python Editor allows Python Functions to be inserted and the script to be validated and executed displaying the output as it will be used in the Report build.

Adding Report Fields to Report Paragraphs

To display the Report Field in the Report Paragraph it needs to be added using the Content Editor.

Click OK to insert the Report Field into the Content Editor.

The Report will now display the Query Result for the Field Name.

Report Rules

Report Rules are conditional XQuery or Python expressions that determine if Report content is enabled and applied to the build. Rule based queries return a Boolean that is either True or False and can query the Report Data Source and other Report Data Contexts. Rules are used for controlling the flow, visibility and activation of reporting content.

Report Rules if empty or null by default will always return True.

Report Namespaces

Report Namespaces are used for providing uniquely named elements and attributes and is a mechanism to avoid name conflicts by differentiating elements or attributes within an XML document that may have identical names, but different definitions. If the Report Data Source contains namespaces they can be applied to the XQuery Processor.