Fields for datasets are described below.
- Name – The name of the dataset.
- Description – The description of the dataset, this is only relevant as documentation.
- 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
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.
In OQL, parameters can be called using a $ symbol, for example: $Month.
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.