Select Added Operation

Hi All,
In the Engineering Workbench you can add new operations to a part/rev by clicking and dragging from the MOM > Engineering > Operation Master tab, to the tree view of operations on the left.

Currently, when an op is added this way, the last op that was selected stays selected, or the focus moves back to the first op in the list.

The request is to highlight the operation that was just added in this fashion, without moving the tab focus to the MOM >Operations > Detail tab. I want to keep the focus on the Operations Master tab, so I can keep adding operations, but I want to know which one I last added.

Ideally I am looking for a way to highlight one, or some operations in the tree view.

I thought I could tack this functionality on to my method directive, but it looks like it may need a customization.

What do you think?

Thanks for your time!
Nate

This would have to be a customization. I would also pass this to support as an enhancement.
For the customization, maybe you can set the active row on a grid to be the item where RowMod=A or the highest oprseq.

Good idea. I could do that in a BPM, but I am not sure how to go about that in the customization.

A BPM can’t do a lot on the UI/UX side of things. While it’s a great idea to put logic in BPMs to make consistent data, it can’t replace what a customization can do for the user on the screen.
You will serve yourself well to grow in customizations. :smile:

1 Like

What syntax do I use to access the engineering workbench tree view on the left?
What property can I use to set the active field?

There’s a lot of topics here about TreeViews. You can also use the Infragistics website for a lot of UI information.

I have done some searching, and have used the Infragistics site in the past. However, I can’t seem to figure out how to access the internal treeview held in the engineering workbench. The other topics I found here on treeviews didn’t seem to be very helpful.

You can reference it using
csm.GetNativeControlReference(GUID);

I’m sorry. I just don’t know enough to use this information.
I believe that I need to do the following in a customization:

  1. identify the event that is triggered when a new op is dragged into the op list.
  2. when this event fires, find the native control for the tree view.
  3. set the selected property to true for the op that was last added.

The GUID for the “methodTree” as the form calls it, is:“aa3bab29-2b72-4cc6-a1a1-2ba303797476”
EDIT: I see that the GUID changes each time I reopen my customization. Again my ignorance is showing here…

So in my initialize block I think that I need to set an internal variable to this native control. Something like:

var myTree = (EpiUltraGrid)csm.GetNativeControlReference("aa3bab29-2b72-4cc6-a1a1-2ba303797476");

Is EpiUltraGrid the right control type? EDIT: I found that EpiTreeView is probably the better control type.
Once I have created the variable, how do I update the selected value?
What form event should I be tapping into for this?
Thanks!

The control type is the property under the GUID.
Take a look here to find details:

https://help.infragistics.com/Help/Doc/WPF/2015.1/CLR4.0/html/InfragisticsWPF4.DataPresenter.v15.1~Infragistics.Windows.DataPresenter.TreeView.html

Jason Woods
http://LinkedIn.com/in/jasoncwoods

The only type there is: Ice.Lib.Framework.JobLib.MethodTree
That isn’t a valid control type, is it?

Yes (for that screen). It will have inherited from the Infragistics TreeView which inherented from the Microsoft TreeView.

Jason Woods
http://LinkedIn.com/in/jasoncwoods

How do I grab the current GUID for the native control? It changes every time I reload my customization. So I can’t hard code it, like I see most code examples do.

Yikes. Then you need to get it’s parent and iterate through the children.

Jason Woods
http://LinkedIn.com/in/jasoncwoods