If you would like to upgrade to a newer long-term support version of Studio Pro, see Moving from Mendix Studio Pro 8 to 9.

Datasets

Last modified: August 27, 2024

Introduction

A dataset can be used to define the data shown in reporting widgets in pages.

A dataset is defined using either an OQL query or a custom Java action. To constrain a dataset, parameters can be defined which can be used in the OQL query or Java action.

Fields for datasets are described below.

General

  • Name – The name of the dataset.
  • Description – The description of the dataset, this is only relevant as documentation.

Source

  • OQL query – The OQL query which defines the dataset.
  • Java action – The interface of the Java action which returns a dataset. The columns and data types of the columns need to be specified in Studio Pro. Based on this specification Studio Pro will create a template for this action.

The following shows an example OQL query that calculates the aggregated total order amount for all orders of a customer for a specific group of customers:

FROM CRM.Customers As CustomerObj
INNER JOIN CustomerObj/CRM.Orders_Customer/CRM.Orders As OrderObj
WHERE CustomerObj/CRM.Customer_Group = $ParGroup
GROUP BY CustomerObj/Name
SELECT CustomerObj/Name As Name, SUM(OrderObj/TotalAmount) As TotalAmount

Parameters

A dataset can have multiple parameters. Parameters are used to filter / manipulate datasets. Security on datasets is configured based on the parameters. In a Java action, the parameters are used in the generated template.

A parameter has the following configurable properties:

  • Name – The name of the parameter
  • Type – The type of the parameter: Object, Enumeration or a primitive (for example, Date and time, Integer, Boolean, etc). See Data Types for the possible parameter types.
  • Constraints – The constraints on a parameter. These constraints influence which values can be selected for parameter input values by the end-user. Constraints can be associated with user roles in the dataset security. There are two type of constraints: ranges which apply to numeric and date parameters and XPath constraints which apply to object parameters.
  • Ranges – When a parameter is defined as a range the drop-down box in the report shows each range instead of all values within the ranges. Decimal parameters are always ranges.
  • XPath Constraints – An XPath constraint can be defined using XPath. Multiple constraints can be defined on a parameter and each constraint can be associated with a user role.