Note: This function is an Axeda ConnectedConfiguration feature. If the Axeda Platform is not licensed for ConnectedConfiguration, you will not have access to this function.
The CfgBoolValue() function finds the Boolean value corresponding to the specified Path for the asset in the rule execution context. When multiple identical Paths exist in the configuration, the Path argument should include the array index to indicate which configuration element should be returned. For example, the Path "/Config/Hardware/Motherboard[2]/Version" identifies the third occurrence in the array. Returns a Boolean.
Boolean CfgBoolValue(String "path)
where:
path -- The Path defined for this comparison. Trailing or leading Asterisk (*) wildcards are allowed.
The following example determines if the version of the motherboard specified in the Path (for the related asset) 0.
If: CfgBoolValue(“/Config/Hardware/MotherBoard/version”) == 0
Boolean CfgBoolValue(String "path, String "model", String "serial")
where:
path -- The Path defined for this comparison. Trailing or leading Asterisk (*) wildcards are allowed.
modelNumber -- The model of the asset configuration (Path) for this operation
serialNumber-- The serial number of the asset configuration (Path) for this operation
The following example compares determines if the version of the motherboard specified in the Path for the ACME_Z asset (defined by model and serial number) has a version greater than 0.
If: CfgBoolValue("/Config/Hardware/MotherBoard/version", "modelXYZ", "serial123") > 0
Notes on Rule Execution:
The Platform first compares the incoming configuration event with non-persisted configuration values. If the value is not found or if the path was specified for a different asset than the one in the current context of the event, then the Platform checks persisted (saved) values. The rule will NOT trigger if the Configuration event does not provide any paths that are used in the Expression rule.
If the rule does not evaluate, make sure the following are true: the Path exists as specified, you've used valid function argument types and the correct number of arguments, the asset you identified exists as specified (modelNumber/serialNumber). Also for CfgStrValue, CfgDoubleValue, CfgBooleanValue, CfgItem, CfgHas, CfgLongValue: the rule will not evaluate if multiple node/values are found for the specified path (with or without wildcard). Finally, if a rule defined with SetCfgValue action doesn't execute, make sure the SetCfgValue action path does not contain any trailing or leading wildcards ‘*’ .