Pinnacle : Execute


  • “Execute” is used to run a command stored in a string.
  • It can be utilized when using a variable in a command is not possible.
  • It is also particularly useful for dynamically generating a command.
  • The command can be hardcoded into the script or created by a script
  • This command is different than “ExecuteNow” which is used to run a script
  • Execute can be run with either =””; or =1;. Both should work for all situations.


Execute a command dynamically generated by a script.

//Displays the DVH corresponding to the current trial.
Store.StringAt.SelectDVHTrial = "PluginManager.PlanEvalPlugin.TrialList.#";
Store.At.SelectDVHTrial.AppendString = TrialList.Current.Index; //Uses current trial to specify DVH to display
Store.At.SelectDVHTrial.AppendString = ".Selected =1"
Store.At.SelectDVHTrial.Execute = 1; //or ="";

Execute a command hardcoded into a script.

//Displays the DVH corresponding to the second trial (index 1).
Store.StringAt.SelectDVHTrial = "PluginManager.PlanEvalPlugin.TrialList.#1.Selected = 1;";
Store.At.SelectDVHTrial.Execute = 1;

Create an IF-THEN test and then execute that test on multiple objects by utiliziing a loop.

//This command will output a message if PTV is present in RoiList.
Store.StringAt.str = "PTV";
Store.StringAt.tst = "IF.RoiList.Current.Name.STRINGEQUALTO.Store.StringAt.str.THEN.InfoMessage = message"; //***Quotes around the "message" are not necessary
RoiList.ChildrenEachCurrent.#"@".Store.At.tst.Execute = "";

Use to set a parameter (loop or single instance).

Store.StringAt.Action="TrialList.Current.BeamList.Current.Machine=MachineName";//Do not use quotes around the machine name
TrialList.ChildrenEachCurrent.#"@".Store.At.Action.Execute=""; //Change 1st beam in all trials

//Or change only the first beam in the current tria