I'm having an issue with a SET command. I seem to remember it working before, but I may be mistaken.
I'm trying to set a table parameter of a child element in a templated service using a button. Each service has the table filtered to a single row, and I am using the Write Parameter ID. I've noticed that if I use [serviceDefinitionFilter] in the Execute shape data it doesn't work, but if I copy and paste the display key that it works.
However [serviceDefinitionFilter] seems to work when reading parameters throughout the same Visio.
Could it be because the Write parameter is not included in the service?
EXECUTE shape data that doesn't work
SET|DCM B|9255:[serviceDefinitionFilter]|0|
EXECUTE shape data that does work
SET|DCM B|9255:{Exact DisplayKey}|0|
Protocol: Cisco DCM v1.0.3.99
Parameter: Table Data > Backup TS (Input) > Input TS Backup List > Active Input
Parameter IDs: Read=9205, Write=9255
I managed to figure this out with support, it turns out the issue was that the display key filter for that service used wildcards (*), so using [serviceDefinitionFilter] was passing through the wildcards to the actual set request sent to the device, which did not resolve them to the matching key.
To fix it I was able to add a [param:] placeholder using the display index parameter ID in the SET command.
SET|DCM B|9255:[param:DCM B,9207,[serviceDefinitionFilter]]|0|
Unlike the SET command (in this instance at least), the [param:] placeholder does allow wildcards. So I was able to use [serviceDefinitionFilter] inside [param:] to get the actual display key value (9207 is the parameter ID for the display key here).