Page History
...
- The
getAllArgumentsAsNameValueMap()
method provides a map of all arguments. The map allows to read a single argument from specifying the argument name. - Argument values are returned in one of the supported data types including string, number and Boolean.
- Consider that argument names are case-sensitive.
...
- Order Variables have to be specified for any Declared Variables that are not assigned a default value.
- Order Variables can specify Declared Variables holding default values. The Order Variable over-rules overrules the default value.
Download sample workflow implementing access to Order Variables (upload .json): pdJavaScriptOrderVariables.workflow.json
...
Reading the list of Order Variables
To iterate the list of Order Variables the following proceeding applies:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
class JS7Job extends js7.Job { processOrder(js7Step) { // get list of order variables var args = js7Step.getOrderArgumentsAsNameValueMap(); js7Step.getLogger().info('[getOrderArgumentsAsNameValueMap]:'); js7Step.getLogger().info('all arguments: ' + args); for (var arg in args) { js7Step.getLogger().info('argument: ' + arg + '=' + args[arg]); } } } |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
class JobArguments { workflowPathcolorBlue = new js7.JobArgument('js7Workflow.pathcolor_blue', true); } class JS7Job extends js7.Job { declaredArguments = new JobArguments(); processOrder(js7Step) { // option 1: access declared argument // option 1.a: access declared argument by name js7Step.getLogger().info('[GetDeclaredArgument] by name:'); var declaredArg1a = js7Step.getDeclaredArgument('js7Workflow.pathcolor_blue'); js7Step.getLogger().info('declaredArgument: ' + declaredArg1a.getName() + '=' + declaredArg1a.getValue()); // option 1.b: access declared argument by object name js7Step.getLogger().info('[GetDeclaredArgument] by object name:'); var declaredArg1b = js7Step.getDeclaredArgument(this.declaredArguments.workflowPathcolorBlue.name); js7Step.getLogger().info('declaredArgument: ' + declaredArg1b.getName() + '=' + declaredArg1b.getValue()); // option 2: access declared argument value // option 2.a: access declared argument value by name js7Step.getLogger().info('[GetDeclaredArgumentValue] by name:'); js7Step.getLogger().info(js7Step.getDeclaredArgumentValue('js7Workflow.pathcolor_blue')); // option 2.b: access declared argument value by object name js7Step.getLogger().info('[GetDeclaredArgumentValue] by object name:'); js7Step.getLogger().info(js7Step.getDeclaredArgumentValue(this.declaredArguments.workflowPathcolorBlue.name)); } } |
Explanations:
- The example suggests two ways how to access declared arguments:
- Accessing the argument value: directly returns the argument value for the given argument name.
- Accessing the argument object: offers to use the
getName()
andgetValue()
methods of the argument object.
- Argument names can be specified by strings or by using the
declaredArguments
instance of theJobArgument
class and the argument objects included.
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
class JS7Job extends js7.Job { processOrder(js7Step) { // accessget argumentlist byof name Job Resource arguments var args = js7Step.getJobResourcesArgumentsAsNameDetailValueMap(); js7Step.getLogger().info('[getJobResourcesArgumentsAsNameDetailValueMap] by name:':'); js7Step.getLogger().info('arguments: ' + args); for (var colorBluearg = js7Step.getJobResourcesArgumentsAsNameDetailValueMap()['color_blue'];in args) { js7Step.getLogger().info('argument color_blue: ' + arg + '=' + colorBlueargs[arg].getValue()); } } } |
Further Resources
...
Overview
Content Tools