The requestor is a function that is used to create the inquiry screens that are used to display the results of the requests carried out on the database. It operates by temporary extraction of the data in a table, then by running an inquiry on this table. The inquiry can then be made at several levels of detail, defined by successive page breaks.

The structure of this temporary table enables each user to keep the results of the last query run on the database (unless it is a shared query). Using this functionality implies three different phases:

  • definition of the query by this function,
  • launch of the query (either using theor using the inquiry function and then the data refresh request).
  • inquiry of the query if it has already been executed.

The definition of the requests is made by giving a list of fields arising from the database tables, of expressions that can used with the database fields, the constants and the expressions. The joins between tables are automatically determined from the dictionary, but it is possible to explicitly define them thanks to the Advanced tab.

Let us underline the existence of two additional tools: An equivalent query tool to the present one, but based on a visual editor, and an SQL query tool going through identical inquiry screens but whose purpose is to design queries based on the SQL language.

Prerequisite

SEEREFERTTO Refer to documentation Implementation

Screen management

The definition of a query is performed on several tabs but only the first one is mandatory.

Header

The header provides information to identify the query and some setups of a general nature.

Tab Fields

This tab makes it possible to define the information to print in the form of a grid defining the database table where the information comes from, the fields or expressions to extract and the total and break criteria.

Using all the information defined in this grid, the query designer specifies a query on tables linked by join conditions defined by default. Thus, in simple cases, it is not necessary to complete the next tabs.

Tab Advanced

Entering this tab is not mandatory. It is used to specify:

  • criteria related to the data presentation (page numbering, report used, etc.).
  • additional selection criteria.
  • specific join conditions.

The join conditions are useful in the two following cases:

  • if the automatic join algorithm does not work. This case is easy to recognize since an error message is displayed upon query validation. Sometimes it is sufficient to add a link to one of the tables whose links are not described in the dictionary to solve this case (the definition of the other links remains automatic).
  • if the join algorithm links tables in a way that differs from what was expected. As a matter of fact, in complex cases, several links may exist between tables. However, the algorithm stops when the first links is found. In order to verify if the join is in conformity with what was expected, it is possible to use the button Infos / Links, which gives the details of found links.

Tab Access

This tab is used to define the access conditions to the query and the extracted data.

Tab Graphic

This tab can only be entered if a graphical representation is available for the query. The way the data are displayed on the graphic is then defined.

Validate

This button generates a processing associated with the request as well as the dedicated inquiry screen. This validation is linked to the saving of a record, but it is possible to independently launch it if for example a request has been transferred by copy.