November 12th, 2021
Parameters are one of the most powerful tools available in EcoSys. Parameters expand the possibilities of how users interact with the system. To obtain the desired level of interactivity, EcoSys designers must effectively harness the power and flexibility of EcoSys Parameters in the design of interactive EcoSys configurations.
An EcoSys Parameter allows the end user to provide a lookup or manual entry value to be utilized in EcoSys. This user input can then be used to filter the data, to add supplementary information (such as comments), and to supply information to configuration in the background (via Default Values Reports, Looping Reports, Source Reports, etc.).
When creating a Parameter, the designer must first determine the Parameter type.
Parameters can be the following types:
- Lookup: provides a list of existing values in the system (ex. Cost Object, Task, Category, etc.)
- Manual Entry: allows the user to enter a value in the form of String, Datetime, or Number
- Column Generator: dynamically outputs a set of columns based on logic configured by designer. (A parameter of this type will not be visible to users in the green parameter bar.)
When deciding the type and beginning to configure the Parameter, the designer must look at how the Parameter will be utilized. The most prominent use for Parameters is for filtering data. For example, a Cost Object Parameter can be configured in a Report. At runtime, the user selects a Cost Object from the Parameter lookup of values in the database, which informs the Report to only display data associated with the selected Project. This Parameter is configured as a Lookup Value Parameter.
In addition to filtering, Parameters can be utilized to allow end users to enter additional data either for immediate use (such as a Report Title) or to set a field’s value (such as a Comment). A Report Title Parameter allows a user to enter the report title of their choosing to then be displayed on their Report upon run. Similarly, a Comment Parameter allows a user to enter a comment associated with a process to be stored in the Log, for example. These Parameters are configured as Manual Entry Parameters.
Column Generators parameters can be utilized to dynamically generate columns based on user input at run-time. A common example is utilizing Start and End Minor Period Parameter values, selected by the user at run-time, to dynamically display columns for each month between the designated Start and End Minor Periods.
Parameters can also be utilized to dynamically generate values for calculated fields. Using these Parameters, a user entered Parameter value interacts with an EcoSys internal value, typically through an EcoSys Formula, in order to generate a new value. For example, a What-If Analysis is needed to see how sales volume would change if sales improved by a certain percentage. The Sales Change Percent Parameter would capture the percent from the user. This value would then be utilized in the configured formula (What If Sales = Sales * (1 + “@=SalesChangePercent” / 100)) to calculate the What-If Sales field in the Spreadsheet. This Parameter is configured as a Manual Entry Parameter with ID “SalesChangePercent”.
As explored above, EcoSys designers can expand the functionality and interactivity of Reports, Spreadsheets, etcetera by adding Parameters to their configurations. When utilizing Parameters, the selection of the appropriate settings is essential in order to achieve the desired results. Next, some of the more complex Parameter settings are discussed along with recommendations for their usage in different scenarios.
Screen Settings Save Mode
As a user navigates through different EcoSys screens, the Parameter values for each of the screens is stored in the user’s screen setting history. The ‘Screen Settings Save Mode’ options determine if the Parameter value is stored for the screen and how its value is reloaded in the Parameter.
There are three options for Screen Settings Save Mode:
- Same Screen – Stores and reloads Parameter values of the same ID in the user’s history from only within the screen/module where it is configured.
- Ex: If the ‘Project’ Parameter in the Forecast screen layout was set to Same Screen, then the parameter would search for values in the user’s history only from the configuration objects within the Forecast screen layout.
- Tip: This setting is recommended for all Action Parameters when used in an Action Batch and in lower-level configuration elements within a Screen Layout (such as nested Screen Layouts, spreadsheets, reports, etc.)
- Cross Screen – Stores and reloads Parameter values of the same ID within the user’s history from any screen/module in the system. Cross Screen Parameters will only reload values stored from other Cross Screen Parameters
- Ex: If the ‘Project’ Parameter in the Forecast screen layout was set to Cross Screen, then the parameter would search for values in the user’s history from other screens with parameters set to Cross Screen, such as Portfolios, Budgets, or Changes.
- Tip: This setting is recommended for top-level Screen Layouts to bind module Parameters, as described in the example above.
- Warning: This setting should only be used for visible Parameters, allowing an end user to verify that the correct value is being passed to the Parameter.
- None – Does not store or load any values and will only resolve from the user’s selection at runtime or from a Default Value Report or Looping Report.
- Ex: If the ‘Start Period’ Parameter in the Forecast screen layout was set to None, then the parameter would not search for any values and would be populated only when the user selects the value manually.
- Tip: This setting is recommended if the value is being supplied by a Looping Report or Default Values Report, or if the user is manually selecting or entering a Parameter for each run.
In some instances, the value of a Parameter should depend on the value of another Parameter. For example, the ‘WBS’ Parameter (dependent Parameter) may depend on the value of the ‘Project’ Parameter (independent Parameter). In this example, the value of the ‘WBS’ Parameter should be cleared if the value of ‘Project’ Parameter (independent Parameter) changes, otherwise a ‘WBS’ Parameter selection that does not belong to the ‘Project’ Parameter could remain selected unintentionally.
The Parameter ‘Depends on’ option can be used to effectively clear the value for the ‘dependent’ Parameter (ex. ‘WBS’) whenever the value changes for the specified ‘independent’ Parameter (ex. Project).
- Tip: This setting is recommended if using override categories or default value reports with a required parameter, in order to clear the associated parameter value if another Parameter value, such as a Cost Object parameter, changes.
Screen Layout Binding
The ‘Screen Layout Binding’ settings determine how values should pass to other Parameters within Screen Layouts. The four Screen Layout Binding options are:
- Automatic – automatically binds the Parameter in the following progression:
- The system first searches to match the Parameter ID with other fields or Parameters of the same ID.
- If a match is not found, the system then searches to match the Parameter with other Parameters or fields of the same data type (e.g. Cost Object).
- Lastly, if a match is still not found, the system then searches to match the Parameter with other Parameters or fields of a similar data type (e.g. Cost Object).
- By Parameter ID – strictly binds with other Parameters with the same ID, regardless of subject area, and then resolve by conversion rules.
- The ‘By Parameter ID’ can be used to bind Parameters with matching IDs but different subject areas. For example, when Task Category Parameter ID and values match Cost Object Category Parameter ID and values.
- The Resolve by Conversion Rules include:
- Convert Lookup values to – controls what format of the value will be passed from this Parameter to other Parameters. This is the outgoing value.
- Resolve values by – controls how to resolve the Parameter value being passed in from another Parameter. This is the incoming value.
- For more information, check out the Using Parameter ID Binding Option in Screen Layouts
- Strict (only for Manual Entry Parameters) – binds first by Parameter ID and then by Manual Entry data type (i.e. ‘String’).
- No Binding – does not bind the Parameter to any other Parameter or field.
- ‘No Binding’ can be used when the desired result is to have no value passed to the Parameter and the user manually selects a value for first run. After first run, the value selected by the user will be saved to the user context and used for subsequent runs, depending on the ‘Screen Settings Save Mode’.
Parameters are useful for adding interactivity and flexibility to EcoSys. Proper configuration of Parameters is critical for the Parameters to work as expected in the system. If and how Parameters should be retrieved from the user’s history, how values should be passed and resolved, and if a Parameter should depend on the value of another Parameter are important considerations when configuring Parameters.
Learn more about Parameter configuration and other EcoSys configuration concepts by attending one of our Training courses, ranging from introductory to advanced. New to EcoSys? The TECO2000 Introduction to EcoSys Configuration course is designed for technical and business leaders, providing EcoSys navigation and configuration practice through hands on exercises. Already taken the TECO2000 course, but looking to learn more? Attend our TECO2200 Advanced EcoSys Configuration course to boost your current EcoSys knowledge with advanced configuration concepts and scenarios with hands-on configuration and problem solving. For more information or to register today, visit the EcoSys Training website!