ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / Editors / Report editor / Data sources
  • Overview
  • Characteristics the report based on a Table control
  • Creating a report based on a Table control from the window editor
  • Creating a report automatically and a button used to print the report
  • Characteristics of the new report based on a Table control
  • Creating a report based on a Table control from the report editor
  • Creating a report based on a Table control from the report editor
  • Printing a report based on a Table control
  • Printing a report based on a Table control
  • WINDEV example
  • WEBDEV example
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Report based on a Table control
Overview
A report based on a Table control is used to directly print the information displayed in the control (based on a data file or populated programmatically):
  • in a window or page of the application. This window or page must be displayed when printing the report.
  • in a window or in an internal page. The window (or the page) that displays the internal window (or the internal page) must be displayed.
Reports & Queries cannot be used to create reports on Table control. However, it is possible to customize reports on a Table field created in the built-in report editor (color, font, size, etc.).
A report based on a Table control can print:
  • all rows displayed in the Table control (ability to filter the data found in the Table control with the magnifier).
  • the rows selected by the user (for the multi-selection Table controls where the rows are selected with the Ctrl key). This option is not available in WEBDEV.
Characteristics the report based on a Table control
If the report is based on a Table control:
  • Each row in the Table control corresponds to a record.
  • Each column of Table control corresponds to a Static Text control (even the invisible columns).
    WINDEV Note: Columns defined as not to be printed (option "Export and print" in the "General" tab of the column description) are not taken into account..
For a table report, the order in which the columns are displayed in the report corresponds to the order of columns in the window being edited. In WINDEV, if the user modifies the order of columns in the window, the order in which the columns are displayed in the report will not be modified dynamically.
Caution: Data printed in the report are sorted according to the sort column defined for the Table field..
Report based on a Table control
A report on Table control can be created:
  • from the window editor. The created report corresponds to a table report.
  • from the report editor. The report creation wizards starts, allowing you to choose the type of report to create (table, form, etc.).
Once the report based on the Table control is created, you can:
  • change the data source of the report ("Data" tab in the report description).
  • add or delete Static Text controls linked to the Table control associated with the report.
Caution: It is not possible to test a report on a Table control directly from the report editor, as the window or page containing the Table control must be open.. To run the test of a report based on a Table control, you must:
  • create (if necessary) a button in the window or in the page of Table control. This button can be used to print the report with the data from the Table control (iPrintReport).
    Internal windows: If the Table field is present in an internal window, it is advisable to create the button in the internal window and not in the host window.
  • test directly the window or page containing the Table control, then test the report (via the button).
    Case of internal windows: the test must be run from the window that hosts the internal window.
Creating a report based on a Table control from the window editor
WINDEV The window editor allows you to automatically create a report based on a Table control and a button used to print the report. No programming required.
Remark: The window editor can only be used to create an array report.. To create another type of report, use the report editor.
WINDEV

Creating a report automatically and a button used to print the report

To automatically create a report and a button used to print the report:
  1. Open the window containing the Table control on which the report will be based.
  2. Select the Table control.
  3. On the "Creation" tab, in the "Data" group, expand "Table and List Box" and select "Report based on a Table control".
  4. The mouse cursor changes and the button shape appears under the cursor. Click in your window to create and position the button. This button is used print the report based on the Table control.
  5. A table report based on the selected Table control is automatically created in the report editor. For more details, see Characteristics of the new report.
  6. Confirm that the created report must be added into the current project.
  7. Save the created report and the window containing the Table control.
WINDEV

Characteristics of the new report based on a Table control

By default:
  • the created report is a Table report. For more details, see The different types of reports.
  • the created report is named "Report_<CaptionTableControl>".
  • the created report contains:
    • a table containing as many columns as the Table control.
      By default, the width of columns in this table corresponds to the width of columns in the Table control.
      If the table does not occupy the entire report width, the table columns are proportionally enlarged in order for the table to reach its maximum size.
      Caution: Columns defined as not to be printed (option "Export and print" in the "General" tab of the column description) are not proposed..
    • a Static Text control displaying the caption of Table control.
    • four preset controls used to display today's date, the number of the current page, the total number of pages in the report and the total number of lines printed in the report.
  • the skin template of created report corresponds to the skin template of current project.
  • the report prints all rows found in the Table control.
All these characteristics can be modified in the report editor.
Creating a report based on a Table control from the report editor
The report editor allows you to create any type of report based on a Table control (table, form, etc.).
Once the report is created, the print must be programmed in WLanguage. For more details, see Printing a report based on a Table control.

Creating a report based on a Table control from the report editor

To create a report based on the Table control from the report editor:
  1. Click New in the quick access buttons.
    • The window for creating a new element is displayed: click "Report" then "Report".
    • The report creation wizard starts.
  2. Choose the layout of your report (table, form, label, ...). For more details, see The different types of reports.
  3. Select (if necessary) the report template to use. A report template is used to comply with a specific page layout. For more details on report templates, see Report templates.
  4. Select the data source of the report ("From a Table or Looper control").
  5. Select the Table control on which the report will be based. Only the Table and Looper controls in the windows or pages of the current project will appear.
  6. WINDEV To print:
    • all rows displayed in the Table field: select the "All Table field rows" option.
    • only user-selected rows: select "Only rows selected in the Table field"..
      Remark: This choice can be modified by programming using property SelectionOnly.
  7. For each Table control column displayed in the report:
    • specify whether the column must be printed or not via the checkmark.
    • type the corresponding caption. This caption will be displayed:
      • before the control. For example:
        Caption before the control
      • in the column header (for the Table reports). For example:
        Caption in the columns

        This caption can be modified in the report editor.
    • select the block in which the control associated with the column of Table control will be printed. The positions of different controls can be modified in the report editor. For more details on the different blocks and their position in a report, see Report blocks.
  8. Modify (if necessary) the display order of controls in the report with the arrow buttons found on the right of table.
  9. If the Table control associated with the report contains at least one numeric item, calculations can be performed on these items. Specify the calculation performed for each item (sum, average, ...). Two types of calculations are available:
    • general calculation: a Calculated field will be created in the block End of document.
    • calculation on breakage: a Calculated field will be created in the Breakage bottom block. In the calculations on break, the calculation result is reinitialized after each break. To perform a calculation on break, a break must be found in the report currently created.
  10. Depending on the type of report currently created, indicate the specific options.
    Type of reportSpecific options
    Report based on a formForm image, printing the form image, ...
    Options presented in detail in Report based on a form
    Label reportFormat of labels, number of identical copies, ...
    Options presented in detail in Label report
  11. Specify the format of sheet on which the report will be printed. The report is printed in A4 format by default.
    Note: By default, report controls are arranged in a single column. To create a multi-column report, simply specify the desired number of columns in the "Format" tab of the report description window.
  12. Select the skin template of the report if necessary.
  13. Type the name and title of the report (name of ".WDE" file corresponding to the report). This name will be used to identify the report in your programs.
    WINDEV You can also specify whether the report can be modified by the end user in "Reports & Queries".
  14. Validate the report creation.
  15. The report editor automatically proposes to change the report format if the following conditions are fulfilled:
    • the report currently created includes a table.
    • the report format does not allow to display all table columns.
  16. Specify (if necessary) the mode for reducing the report size:
    • Print the report on several pages. In this case, the end user will have to group the pages. For more details, see Multi-page print.
    • Use the landscape mode.
    • Reduce the report size. Please note: depending on the reduction percentage selected, the printed report may become illegible..
  17. The report currently created is displayed in the report editor.
Printing a report based on a Table control

Printing a report based on a Table control

A report based on a Table control must be printed from the window displaying the Table control to print. If the button was not created automatically, you must:
  1. Create a button in the window (or page) containing the Table control.
  2. Configure the report print destination:
    • WINDEV In WINDEV, with iDestination (report viewer, print in an HTML file, etc.).
    • WEBDEV - Server code In WEBDEV, with iDestination (print in an HTML file, etc.).
    For more details, see Print modes of a report.
  3. Specify the name of the report to print with iPrintReport.
Remarks:
  • If additional parameters must be passed to the report, these parameters must be specified in iPrintReport, after the name of the report to print. For more details, see Report with parameters.
  • WINDEV If the window that contains the source Table control is opened multiple times (modeless opening with OpenChild), the full name of the control to be printed must be passed as a parameter to the report. For example:
    // La propriété NomComplet va contenir le nom de la fenêtre 
    // qui doit être ouverte avec un alias 
    // afin de distinguer chaque fenêtre
    iPrintReport(ETAT_Table_Client, TABLE_Client.NomComplet)

    // Code d'ouverture de l'état: 
    PROCEDURE ETAT_Table_Client(NomTableSource)
    MyReport.NomSource = NomTableSource
  • WINDEV The SelectionOnly property is used to identify and modify the records to be printed in the report: print all records or only selected records.
In Reports & Queries software, you can print a report:
  • by starting a print job (Print icon).
  • by testing the report (Report Go).
Therefore, no programming is required to print the report.
WINDEV

WINDEV example

The information to print is in the Table control named "TABLE_CustomerTable" found in the "WIN_Customer" window.
The report to print is named "RPT_Customer" and it is printed during a click on the "BTN_Print" button.
In this example, the click code of "BTN_Print" button is as follows:
// Ouvrir le visualisateur de rapports
iDestination(iViewer)
// Imprimer l'état basé sur le champ Table "TABLE_TableClient" 
iPrintReport(ETAT_Client)
WEBDEV - Server code

WEBDEV example

The information to print is in the Table control named "TABLE_CustomerTable" found in the "PAGE_Customer" page.
The report to print is named "RPT_Customer" and it is displayed in a PDF file during a click on the "BTN_Print" button.
In this example, the click code of "BTN_Print" button is as follows:
// Génère un nom de fichier unique 
NomFicUnique is string = fRepWeb() + "\" + "ETAT_Client_" + DateSys() + HeureSys() + ".pdf" 
// Paramètre la destination de l'impression
iDestination(iPDF, NomFicUnique) 
// Imprime l'état basé sur le champ Table TABLE_TableClient
iPrintReport(ETAT_Client) 
// Affiche l'état au format PDF
FileDisplay(NomFicUnique, "application/pdf")
// Supprime le fichier
fDelete(NomFicUnique)
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 09/21/2024

Send a report | Local help