Dynamic Parameters
Dynamic parameters map to fields that have a varying list of possible values. When running a report with a dynamic parameter, P6 will offer a list to select one of the available values.
This section contains the following information for each supported dynamic parameter:
- Identifier: The value you must enter in the identifier field in BI Publisher when creating the parameter for the report. In some cases, identifiers can pass in context by appending short names to the end of the identifier. The character in quotations is the separator that the code splits and <name> represents the context you are trying to pass in.
- Details: A description and technical details of the parameter.
- P6: What the editor for the parameter will be in the Reports section of P6.
- Return Value: The values that will be available in P6.
- Maps to field: The database field the return value maps to in the PX Views database. It could match multiple fields in the database, so only the primary table is listed.
- Use case: An example of how you might use the parameter in a report.
The following dynamic parameters are supported:
Parameter: Activity Code Value
- Identifier: p_a_code_val__<short name>
- Details: Enables users to select an activity code value via a list. Context passes into the parameter by appending a colon":" followed by the short name of the activity code type you want to set.
- P6: Provides a list that displays the Activity Code Values for the Activity Code type passed in the context.
- Return value: Short name of the Activity Code (unique per code type).
- Maps to field: ACTIVITYCODE.CODEVALUE
- Use case: Create a report that displays some basic information about activities. Users at five locations need to run the report, but they only want to see the data for activities with codes matching their location. Instead of creating five reports hard coding the location (for example, location=L1) on each report, you can create one report and add this parameter to it (for example, p_a_code_val__Location).
In the data template for the report, filter the activities based on this parameter. Hard code the left side of the activity filter to match the activity code you selected, which in this case is location.
Example query: CODETYPENAME='Location' & CODEVALUE=:p_a_code_val__Location
If you did not have a parameter for this, you would need different templates for each location.
Parameter: User Defined Activity Code
- Identifier: p_activity_code_value "." <number> p_activity_code_type "." <number>
- Details: Enables users to select a user defined Activity Code. The user defined Activity Code is two parameters on the report in BI Publisher, but will display only as one row in the report settings parameter table.
- P6: Provides a list that displays all global Activity Code types. When users expand a type, the list shows the values for that type. By selecting a value, both the type and value will return to the report.
- Return value: Short name for the Activity Code Value, primary key for the Activity Code type.
- Maps to field:
- p_activity_code_value maps to ACTIVITYCODE.CODEVALUE
- p_activity_code_type maps to ACTIVITYCODE.CODETYPEOBJECTID
- Use case: Create a report that can have a variable Activity Code. The report pulls activities and displays some basic statistics of the activities. The data template for the report must accommodate setting both sides of the query. While a typical parameter just sets the IN clause for a user defined field, this parameter must set both sides. The "Activity Code Value" parameter Use case example shows where it hard codes the CODETYPENAME to be Location. This parameter enables multiple user defined activity codes to be used on the same report. For each parameter you use, you must add p_activity_code_value.1 and p_activity_code_type.1. There must be a pair of numbers to ensure that the editor works properly.
Parameter: Cost Account
- Identifier: p_cost_account
- Details: Enables users to select Cost Accounts. The P6 user must have access to view Cost Accounts for the list to populate.
- P6: Provides a list that displays all Cost Accounts in a hierarchical tree.
- Return value: Short name of the cost account (unique).
- Maps to field: COSTACCOUNT_FULL.NAME
- Use case: Filter items using certain Cost Accounts or generate information on the Cost Accounts.
Parameter: EPS
- Identifier: p_eps_id
- Details: Enables a user to select an EPS.
- P6: Provides a list that displays all of the EPS nodes where the user has access.
- Return value: The short name of the EPS.
- Maps to field:
- EPS_FULL.NAME
- EPS_U.NAME
- Use case: Use a parameter for EPS to filter a query to load all projects under an EPS for a report.
Parameter: Expense Category
- Identifier: p_expense_category
- Details: Enables a user to select Expense Category where the user has access.
- P6: Will provide a list that displays all of the Expense Categories.
- Return value: The short name of the Expense Category (unique).
- Maps to field:
- EXPENSECATEGORY_FULL.NAME
- EXPENSECATEGORY_U.NAME
- Use case: Run a report filtered by assignments that use a certain Expense Category associated with them.
Parameter: Funding Source
- Identifier: p_funding_source
- Details: Enables a user to select a Funding Source.
- P6: Provides a hierarchical list filled with Funding Sources where a user has access.
- Return value: The short name of the Funding Source (unique).
- Maps to field:
- FUNDINGSOURCE_FULL.NAME
- FUNDINGSOURCE_U.NAME
- Use case: Filter the report data to include only projects that have the selected Funding Source assigned.
Parameter: Portfolio ID
- Identifier: p_portfolio_id
- Details: Enables a user to select a Portfolio where the user has access.
- P6: Provides a list of Portfolios where the user has access.
- Return value: The portfolio short name (unique).
- Maps to field: PROJECTPORTFOLIO_FULL.NAME
- Use case: Filter the report data to include only the projects in a Portfolio.
Note: If there is a user portfolio that shares the same name as one of the global portfolios, then the report will return data for both when you run it. You'll need to use the Portfolio Name and User ID to make a unique constraint.
Parameter: Project ID
- Identifier: p_project_id
- Details: Enables a user to select one or more projects where the user has access.
- P6: Click the Projects _ menu, and select Open Project to display the Project list. Enables switching between Template and Regular projects.
- Return value: The project short name (unique).
- Maps to field: PROJECT_FULL.ID
- Use case: Run a report where the data comes from selected projects.
Parameter: Project Code Value
- Identifier: p_p_code_val__<short name>
- Details: Select a Project Code value. Note that underscores (_) are the only special character allowed. Do not use other special characters.
- P6: Provides a list containing the project code values for the Project Code whose short name matches the second part of the parameter. For example: If the short name was Scope, and there were four values – Local, Regional, Country, and Global – the list would display Local, Regional, Country, and Global in the list.
- Return value: Activity code value short name (unique per code type).
- Maps to field: PROJECTCODE_FULL.CODEVALUE
- Use case: Filter the set of projects loaded to those projects that have the user-selected Project Code Value assigned to them.
Parameter: User Defined Project Code
- Identifier: p_project_code_value"."<number> p_project_code_type"."<number>
- Details: Similar to the User Defined Activity Code, this parameter consists of two parameters in BI Publisher: One parameter returns the selected Project Code Value, and the other parameter returns the Project Code type ID. For each parameter you use, you must add both p_project_code_value.# and p_project_code_type.#. There must be a pair of numbers for the editor to work properly. You can have multiple sets to allow for more than one User Defined Code Value.
- P6: Provides a list populated with all the global Project Codes as the first level. Expanding a Project Code type will list all the values for the type. In the parameter table, only one row will represent both parameters. After you select a Project Code Value, both parameters will be set.
- Return value: The short name for p_project_code_value and the object id for p_project_code_type.
- Maps to field:
- p_project_code_value maps to PROJECTCODE_FULL.CODEVALUE
- p_project_code_type maps to PROJECTCODE_FULL.CODETYPEOBJECTID
- Use case: Create a report that enables the projects to filter based on a Project Code that the user defines. Unlike the Project Code Value parameter, the report creator should not hard code the Project Code type. Instead, they should write the query to enable the p_project_code_type.1 parameter to determine the Project Code type. This lets a report be more flexible in the filter criteria.
Parameter: User Defined Resource Code
- Identifier: p_resource_code_value "." <number> p_resource_code_type "." <number>
- Details: Similar to the other user-defined codes this parameter consists of two parameters on the report in BI Publisher: One parameter returns the selected Resource Code Value, and the other parameter returns the Resource Code type ID. For each parameter you use, you must add both p_resource_code_value.# and p_resource_code_type .# There must be a pair of numbers in order for the editor to work properly. You can have multiple sets to allow for more than one user-defined code value.
- P6: Provides a list populated with the Resource Codes as the first level. Expanding a Resource Code type will list all the values for the type. In the parameter table, only one row will represent both parameters. After you select a Resource Code Value, both parameters will be set.
- Return value:
- p_resource_code_value: short name for the code value
- p_resource_code_type: object id for the code type
- Maps to field:
- p_resource_code_value maps to RESOURCECODE_FULL.CODEVALUE
- p_resource_code_type maps to RESOURCE_CODE_FULL.CODETYPEOBJECTID
- Use case: Create a report that allows for the resources to be filtered based on a Resource Code Value and type that the user defines. Unlike the Resource Code Value parameter, the report creator should not hard code the resource code type. Instead, they should write the query to enable the p_resource_code_type.1 parameter to determine the resource code type. This allows a report to be more flexible in the filter criteria.
Parameter: Resource Code Value
- Identifier: p_r_code_val__<short name>
- Details: Select a Resource Code value to use for filtering loaded resources for a report.
- P6: Provides a list populated with the resource code values for the resource code type indicated by the <short name> at the end of the parameter. For example: If the short name was Department, the list would display Engineering, Marketing, Research, and Development as the values in the list.
- Return value: The short name of the Resource Code Value (unique per code type).
- Maps to field: RESOURCECODE_FULL.CODEVALUE
- Use case: Create a report where the resources filter based on the resources that match the user-selected Resource Code Value for a particular Resource Code type. The report data query must hard code the Resource Code type for matching resources to the returned code value.
Parameter: Resource Team
- Identifier: p_resource_team
- Details: Enables resource team selection.
- P6: Provides a list populated with resource teams that the user has access to view.
- Return value: The short name of the resource team (unique).
- Maps to field: RESOURCETEAM_FULL.NAME
- Use case: Filter a report to load resources that are on the selected resource team.
Parameter: Resource ID
- Identifier: p_resource_id
- Details: Select a resource to filter a report.
- P6: Provides a list populated with resources that the user has access to view.
- Return value: The short name of the resource (unique).
- Maps to field: RESOURCES_FULL.NAME
- Use case: Filter the activities in a report based on the user-selected resource assigned to the activity.
Parameter: Responsible Manager
- Identifier: p_responsible_manager
- Details: Select a responsible manager (OBS).
- P6 GUI: Provides a list populated with the OBS structure that the user has access to view.
- Return value: The short name of the OBS (unique).
- Maps to field: PROJECT_FULL.OBSNAME and OBS_FULL.NAME
- Use case: Filter a report to load only the projects that have the user-selected responsible manager.
Parameter: Risk Category
- Identifier: p_risk_category
- Details: Select a Risk Category.
- P6: Provides a list populated with all the Risk Categories that the user has access to view.
- Return value: The name of the Risk Category (unique).
- Maps to field: RISK_FULL.RISKTYPE
- Use case: Filter a report to load only the Risks of the user-selected category.
Parameter: Role Team
- Identifier: p_role_team
- Details: Select a Role Team.
- P6: Provides a list populated with all the Role Teams the user has access to view.
- Return value: The name of the Role Team (unique).
- Maps to field: ROLLTEAM_FULL.NAME
- Use case: Filter a report of Resources to include only the Resources that are assigned to the user-selected Role Team.
Parameter: Role
- Identifier: p_p6_role_id
- Details: Select a Role.
- P6: Provides a list populated with all the Roles the user has access to view.
- Return value: The short name of the Role (unique).
- Maps to field: ROLL_FULL.ID
- Use case: Filter a report of Resources to include only the Resources that have the user-selected Role.
Parameter: Timesheet Period
- Identifier: p_timesheet_period_start and p_timesheet_period_end
- Details: This parameter consists of two parameters on the report in BI Publisher, but is represented by a single row in parameter list for P6. The user will select a timesheet period, and it will set the Start Date to p_timesheet_period_start and the End Date to p_timesheet_period_end.
- P6: Drop down menu of the Timesheet Periods in the database. Selecting a Timesheet Period will return the Start Date and End Date in the parameters.
- Return value: The Start Date and End Date of the Timesheet Period selected by the user.
- Maps to field: N/A
- Use case: Filter a report to look for a date between two dates of a Timesheet Period. Instead of adding two date parameters and making the user manually enter the Start and End of the period, the user can use a drop down with the Timesheet Periods in the database.
Parameter: User
- Identifier: p_p6_user_id
- Details: Select a P6 EPPM user name.
- P6: Provides a list populated with the P6 users that the logged-in user has access to view.
- Return value: The user name (unique).
- Maps to field: USERS_FULL.NAME
Related Topics
Allowing for Multiple Values Returned via a List
Last Published Thursday, October 12, 2023