Mapping parameters to DAS reports
Overview
Mapped ProReport parameters are special parameters that link a ProReport parameter with a parameter or report variable of the underlying reports or a system variable. This mapping allows for special functionality to be surfaced to the ProReport such as allowed values, more performant filtering, and access to context data about the report run.
There are three types of ProReport Mapped Parameters: Regular, Report Variable, System and mobie Variable.
Note
Mapped parameters cannot support a dynamic or static value source. The ProReport parameter dialog will validate and automatically remove value sources from these parameters.
Regular Parameters
This mapped parameter is a two way link to a regular parameter of the underlying report. The initial value of the parameter will show in the ProReport parameter panel. Setting the value of the parameter will set the value in the underlying report. Any visual assists from the underlying report parameter will show in the ProReport.
A regular parameter can only be single value ProReport parameter. Multiple values will be passed to the underlying report as a single string value delimited by a semi-colon. The ProReport parameter dialog will validate and automatically fix any parameter that are set to multi-value.
The ProReport parameter type will match the underlying report parameter editor type if, and only if, the underlying report parameter uses the 'Single value' input mode. All other parameter configurations need to be typed as a string.
Important
A ProReport with regular mapped parameters cannot be published to mobie. These parameters are designed to drive the running of the underlying reports that are not present on a mobie portal.
Report Variables
This mapped parameter is a one way link to retrieve the value of a report variable from an underlying report. A Report variable is a calculated value using the user visible parameters as input. As such, this parameter is read-only and should never be made visible.
A report variable will be created as hidden since showing and allowing editing of the value on the parameter panel will have no effect on the value of this variable in the underlying report.
A report variable can be a ProReport multi-value parameter.
Report variables are available on mobie.
System and mobie Variables
This mapped parameter is a one way link to retrieve the value of a global system variable or mobie security association values. Like report variables, this parameter is read-only and should not be shown on the parameter panel.
A mobie system variable is a special type of system variable that is only available when running in mobie. It is used to retrieve the value of a mobie security association. For example, if you have a mobie security association named Business Unit and you want to retrieve the value of that association, you would map a mobie system variable named Business Unit. mobie system variables are configured by your mobie administrator. These variables describe attributes about the mobie user viewing the report. They can be used to implement security policies for the non-JDE mobie user.
The SYS_USER and SYS_LastRunTime system variables are available in ProReports run in standard report mode in addition to mobie. All other variables are only available in mobie. SYS_LastRunTime is the date/time of when the underlying report was run.
These variables are normally hidden on the mapping dialog. Click the 'Show mobie variables' button to show them.
A system variable will be created as hidden since showing and allowing this value to be edited on the parameter panel will, of course, have no effect on the global system value.
A system or mobie variable can be a ProReport multi-value parameter.
Mapping Parameters
From the Home tab, choose the Map Parameters button to map a ProReport parameter to a DAS report parameter.
To map the parameter Business Unit, click the double arrow. A unique parameter name will be generated and can be used as the parameter name. You also have the option of changing that name. The name must be unique and properly formatted to be set. In addition, you also have the option of mapping report variables as well as mobie variables.
Note the single arrow mapping for 'Account ID - AID'. This indicates this parameter will be set with the value of the report variable from the 'sales data demo' report after it is run.
If your ProReport uses two DAS reports that have parameters with the same name, it is possible to link those parameters to a single ProReport parameter. This is done by default when you map the parameter. The parameter in italics with the same name is also linked to that ProReport parameter so both DAS reports can be set using one ProReport parameter value.
When Print Preview is clicked, choose the parameter value and then choose your data size. The parameter value will be set on both DAS reports for filtering and the reports will be run.
Multi-valued Parameters
It is possible to map a semi-colon delimited list of values from a parameter to a multi-valued ProReport parameter. This allows for easier report filtering using the 'In' operator.
Note
Only report variables and system variables can be multi-value. Regular parameters are always single value.
Example accessing the list of business units from a company:
- Create a report variable using the 'Filter: List of Values' summary type.
- Map this variable in ProReports.
- Set the Multi-Value property on the mapped parameter.
- Use the parameter in a report-level or band filter.
Trim([Branch Plant]) In (?Business_Units_for_Company)
Fetching data using Mapped Parameters
Mapped parameter values are used in the database filter. When run in Report mode, the report will be run every time the mapped parameter value changes, or when the user manually runs a ProReport.
For example, if you passed the following values in order to a report using a mapped parameter, this would be the result:
- Mapped parameter value: 1 – a database fetch is always performed on the first run of a report, and it will include the filter value “1”
- Mapped parameter value: 1 – since the value of the parameter did not change, a fetch does not happen
- Mapped parameter value: 2 – a database fetch is performed using filter value “2” since the mapped parameter value changed.