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.
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.