I'm trying to pass a table index that has a space in it to an automation script to populate a variable. Here is an example...
Script:webclick||dmaID=222741;elementID=15;parameterNumber=406;tableIndex=Contol 32;parameterValue=1|||NoConfirmation,CloseWhenFinished,NoSetCheck
In the above - Control 32 - is the problem. I've tried to add double and single quotes around it but when I save they seem to get dropped leaving the above string that doesn't work.
Is it possible that your value is "Control 32" rather than "Contol 32" as the shape data would suggest?
Other than that I also see no problem with the shape data, other than the possible typo and also that I would suggest using the prefixes for the different parts as can be seen in one of the bullet points of our documentation.

From what I can tell in your exception, everything seems to be passed through to the script. So likely something is going wrong in the processing there rather than in Visio.
Hi Edward,
I tried to reproduce the issue that you reported but without success. Below the description of the small test performed:
Element:
For this test I will change the value of 'Column Parameter B3' from 61 to 25. Notice that the index of the table is 'Contol 32' (similar as your use case)
Overview:
Below you can find the content of the data shape 'Execute'
Script:test_execute_script||dmaID=107;elementID=21;parameterNumber=2003;tableIndex=Contol 32;parameterValue=61|||NoConfirmation,CloseWhenFinished,NoSetCheck
Note that I had to change the name of the script, IDs, and values.
Script:
ScriptParam spDmaId = engine.GetScriptParam("dmaID");
ScriptParam spElementId = engine.GetScriptParam("elementID");
ScriptParam spParameterNumber = engine.GetScriptParam("parameterNumber");
ScriptParam spTableIndex = engine.GetScriptParam("tableIndex");
ScriptParam spParameterValue = engine.GetScriptParam("parameterValue");engine.GenerateInformation("[INFO]|Run|dmaID=" + spDmaId.Value);
engine.GenerateInformation("[INFO]|Run|elementID=" + spElementId.Value);
engine.GenerateInformation("[INFO]|Run|parameterNumber=" + spParameterNumber.Value);
engine.GenerateInformation("[INFO]|Run|tableIndex=" + spTableIndex.Value);
engine.GenerateInformation("[INFO]|Run|parameterValue=" + spParameterValue.Value);Element element = engine.FindElement(Convert.ToInt32(spDmaId.Value), Convert.ToInt32(spElementId.Value));
if (element != null)
{
element.SetParameter(Convert.ToInt32(spParameterNumber.Value), spTableIndex.Value, spParameterValue.Value);
}
else
{
engine.ExitFail("[ERROR]|Run|Element does not exist.");
}
Once the overview is loaded, I was able to change the value:
Hope it helps.
I updated the typo and received the same error and it did not perform the set either. This was from Cube. I'm sure the web would have the same result.
Element name Parameter description Value Time Root time
Script execution failure Script Failure (webclick): Last of 2 errors: (Code: 0x80131500) Skyline.DataMiner.Net.Exceptions.DataMinerException: Set Parameter ('_195***_15':406/*Control 32*) Failed: 0x80004005
at CManagedAutomation.RunWrapped(CManagedAutomation* , Int32 iCookie, IUnknown* pIAutomation, tagVARIANT* varParameters, tagVARIANT* pvarReturn, String scriptName)
at CManagedAutomation.Run(CManagedAutomation* , Int32 iCookie, Char* bstrScriptName, IUnknown* pIAutomation, tagVARIANT* varParameters, tagVARIANT* varEntryPoint, tagVARIANT* pvarReturn, tagVARIANT* pvarEntryPointResult) (CSharp; 0x80131500h): (see comment for more details) Today 1:34:10 PM Today 1:34:10 PM