Product Structure "Attribute Filtering" Does not Traverse the Full Depth of the Structure?
I have a use case where I would like to filter the BOM in the Product Structure Browser (PSB) using an attribute. I assumed this would be a quick and easy way to identify all the components in a structure that meet a certain criteria without exporting the BOM to Excel.
Default Structure Filtering
Attribute Structure Filtering
You can see in the images, the CC=Yes parts at the lower levels are ignored when the filter is applied.
After a little research I learned Attribute Filters are not applied through the full depth of the structure and this limitation is documented under PTC TS Article - CS189116 There is an SPR number listed, but it was closed as "no plans to implement".
I could not find a Windchill Idea requesting this capability.
Is there anyone out there using structure filters to successfully identify different types of items in the structure or is everyone just taking the BOM out of Windchill to sort and filter in Excel?
I find it so frustrating when simple use cases like this always end up in the BOM going to Excel rather than being a built in capability allowing people to use the native application.
The use case was multiple states within the same Lifecycle that are considered “release states".
The objective was to recursively, which is what you're looking for, display the released structure.
The definition of released structure in this case was the latest iteration that is at any of states considered to be a "released" state. If none are at a released state include the latest iteration.
The filter could certainly have excluded anything that was never released but, hey, I just do what I'm told.
We keyed off the state but one can key off anything including any attribute value.
It works like this.
OOTB by default structured displayed is the latest rev.iteration.
The user selects a custom action that builds the structure filter per the spec. And yes, the spec is built recursively through all levels of the structure.
Then they select the filter and display the structure per the spec.
In this example the two states I was using to simulate the released states were Released and In Progress. Yeah, I know In Progress doesn't sound like released but it's just an example of filtering by state.
So, this is very doable.
Seems to be bombproof too.
Now that I've written the code to do it it would not take much to edit the code to filter by any other attribute.