cancel
Showing results for 
Search instead for 
Did you mean: 

Tecnomatix .NET API - Setting Complex Parameters?

Experimenter
Experimenter

Hello all,

 

We are trying to set path editor values using the .NET API.

 

Our main goal is to set Base Nr, Tool Nr, and Zone. We would even be okay with a method to copy those columns from one locationoperation to another.

 

 

Using the code provided by DiannaG:

https://community.plm.automation.siemens.com/t5/Tecnomatix-Developer-Forum/How-to-obtain-Circ-Motion...

public void ShowMotionType()
        {
             TxObjectList selectedObjects = TxApplication.ActiveSelection.GetItems();
             if (selectedObjects.Count == 1)
             {
                 ITxRoboticLocationOperation op = selectedObjects[0] as ITxRoboticLocationOperation;
                 if (op != null)
                 {
                     string paramValue = GetDynamicParameter((op.Collection as ITxRoboticOrderedCompoundOperation).Robot.Controller.Name, "Motion Type", op);
                     MessageBox.Show("Motion Type = " + paramValue);
                 }
             }
        }

        public string GetDynamicParameter(string controllername, string columnName, ITxOperation op)
        {
            string paramValue = string.Empty;

            TxOlpControllerUtilities utils = new TxOlpControllerUtilities();
            ITxOlpRobotControllerParametersHandler paramHandler = (ITxOlpRobotControllerParametersHandler)utils.GetInterfaceImplementationFromController(controllername, typeof(ITxOlpRobotControllerParametersHandler), typeof(TxRobotSimulationControllerAttribute), "ControllerName");
            if (paramHandler != null)
            {
                if (paramHandler.HasComplexRepresentation(columnName, op, TxOlpCommandLayerRepresentation.UI))
                {
                    paramValue = paramHandler.GetComplexRepresentation(columnName, op, TxOlpCommandLayerRepresentation.UI);
                }
            }

            return paramValue;
        }

 

We have correctly implemented functions to get text of the current  Base Nr, as well as getting the text for each column of the drop down; using GetComplexComboItems()

 

We just don't see where to SET the parameters, and it doesn't seem like using the standard methods work

eg:

ITxRoboticLocationOperation operation = selectedObjects[0] as ITxRoboticLocationOperation;
TxRoboticIntParam param = new TxRoboticDoubleParam("Base Nr", 0);
operation.SetParameter(param);

Many Thanks,

 

 

2 REPLIES

Re: Tecnomatix .NET API - Setting Complex Parameters?

Siemens Phenom Siemens Phenom
Siemens Phenom

Please use paramHandler.OnComplexValueChanged()

Re: Tecnomatix .NET API - Setting Complex Parameters?

Experimenter
Experimenter

I thought that was an event.. I was incorrect.

 

Thank you, very much!