cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

The PTC Community email address has changed to community-mailer@ptc.com. Learn more.

Enable Windchill search to support ‘pure’ latest iteration search when additional criteria is applied.

Enable Windchill search to support ‘pure’ latest iteration search when additional criteria is applied.

Current behavior: with latest iteration search is performed with State ‘In Work’ then all ‘In work’ objects are searched and later latest iteration filter is applied on it. If you search multiple objects, you will receive duplicated results (which would add up to a wrong search result).The system should be able to show only the real latest object (the “current”) and not the latest from all states.

So a "pure latest" search criteria have to be add to the search function in Windchill.

27 Comments
STEVEG
21-Topaz I

This has drove us nuts.  I whole-heartedly agree.  It is different in PDMLink from Intralink 3.4 and lower.  If I put a criteria of latest objects at In Work then if the object is at 2.2 at Production Released but 2.1 is In Work then I don't want that object to display at all!

cpage
2-Guest

Totally agree.  Multiple users have misunderstood search results, and costly mistakes were made. The actual functionality is different than users expect.  Practically all users depend on Advanced Search, and it is nearly impossible to explain this crazy functional issue to everyone.

TomU
23-Emerald IV

It sounds like what you really want is a priority to the search criteria and then the ability to change that priority.

16.png

First filter for all lastest revisions, then filter for all latest iterations, finally filter for all 'Released' objects.

CaitlinWheeless
1-Newbie

I think this might already have been fixed.

I have the following objects:

search example1.PNG

Part 1:

Versions A.1, A.2, A.3 = In Work

Version A.4 = Released

Part 2:

Versions A.1, A.2, A.3, A.4 = In Work

Version B.1 = Released

I searched for parts that are in the latest iteration and in the In Work state, and got the following results:

search example2.PNG

Note that Part 1 version A.3 was NOT included in the results, which is what the original post seems to be addressing.

Whether or not Part 2 appears is set using the "Latest Version Search" preference -- but that is dealing with revisions, not iterations.

(And technically, specifying latest iteration is unnecessary. By default, all searches are performed against the latest iteration. The Iteration criteria is only necessary if you're searching for a non-latest iteration.)

TomU
23-Emerald IV

This is actually very concerning if it's no longer possible to locate an object where both Criteria are true.  What if you really meant: 1.) find all "in work" objects then 2.) filter this set by the latest one of each?  We do this today for "latest" + "released".  Just because something has been revised to "in work" doesn't mean I should stop seeing the "latest released" version.  Either we need a "pure" latest search (as the idea suggested), or we need to set the priority of the search order (search for "A" first, then filter this by "B", and so on).  If the latest release of Windchill really does change this functionality, then we are in serious trouble.  Latest released data needs to continue to remain available from search, even if there is newer unreleased data in the system.

CaitlinWheeless
1-Newbie

So, for example:

"MyPart1"

A.1 = In Work

A.2 = In Work

A.3 = Released

A.4 = Released

A.5 = In Work

And you would want to search for the latest version of "MyPart1" that's in the "Released" state -- in other words, you want a search that would return MyPart1 version A.4. Is that correct?

One way to do it would be to search for Iteration=All and State=Released, but that search will return version A.3 and A.4. But I can ask the search team if they can think of a way that this might be handled.

TomU
23-Emerald IV

Yes, this is how it works today (10.2 M020).  I want to make sure I don't lose that functionality.

rel1.PNG

rel2.PNG

TomU
23-Emerald IV

What version are you testing on?  10.3?

TomU
23-Emerald IV

By the way, I think this drives much more than just search.  If we have users who are only allowed to see objects that are released, they should still be able to find and display the latest version of those released objects in search, Creo View, structure browser, etc.

CaitlinWheeless
1-Newbie

I was testing on 10.2 M030.

But you're ok -- this didn't go away. I think the difference is latest revision vs. latest iteration. Searching for a non-latest iteration is more complicated.

For example, I created "Part 6" with the following version history:

A.1 = In work

A.2 = In Work

A.3 = In Work

A.4 = Released

     (Revise)

B.1 = In Work

B.2 = In Work

     (Revise)

C.1 = In Work

C.2 = Released

     (Revise)

D.1 = In Work

D.2 = In Work

D.3 = In Work

A search for "Part 6" returns the following:

A.4

B.2

C.2 

D.3

Search for Part 6, Revision=Latest returns the following:

D.3 (In Work)

Search for Part 6, Revision=Latest, State=Released:

C.2 (Released)

-- Which is how you seem to be using it, and it continues to work as expected.

The potential problem would be in a use case where for some reason you iterated C.2 to C.3 and then put C.3 in the "In Work" state:

C.1 = In Work

C.2 = Released

C.3 = In Work

In which case, a search for Part 6, Revision=Latest, State=Released would return:

A.4 = Released

Which is likely exactly what you want!  But strictly speaking, the most recent revision of Part 6 to be in the Released state is version C.2. But since C.2 is now a non-latest iteration, it's ignored by Windchill search.

PTCModerator
Emeritus
Status changed to: New Idea
 
PTCModerator
Emeritus
Status changed to: Acknowledged
 
TomU
23-Emerald IV

Out of more than 3,200 Windchill product ideas, this one is currently ranked 7th.  It's been almost eight years since the  idea was created, and in all this time not a single response from anyone who works for PTC.  Clearly this idea is important to the Windchill community.  What is it going to take to get this behavior 'corrected' in the next version of Windchill?  Does someone need to start a working group???

mdrum
5-Regular Member

For me, what I want is the following behavior:

Part 1 History:                                         Part 2 History:

A.1 In Work                                             A.1 In Work

A.2 In Work                                             A.2 Prototype

A.3 Prototype                                          B.1 Prototype In Work

B.1 Prototype In Work                             B.2 PreProduction

B.2 Prototype

C.1 Prototype In Work

C.2 PreProduction

D.1 PreProduction Change

D.2 Production

 

Today, if I do a search with the following criteria:

State = PreProduction

Revision = Latest

Iteration = Latest

 

I get:

Part 1 - Version C.2

Part 2 - Version B.2

 

What I really want is just to get:

Part 2 - Version B.2 (because the latest revision/iteration of Part 1 is not at PreProduction)

 

Also, if I perform a keyword search on all parts, initially I would get both Part 1 and Part 2, and then, if I were to use a facet for "State" and select "PreProduction", I would only want to see Part 2, because I want to refine my initial search results further, not start a brand new search through the entire history of all objects considered in the search.

 

Finally, if I classify an object today as a BOLT at Version A.2 and then, at version A.3 I fix it to be a SCREW, when I do a classification search on Bolts, I don't want that part to show up in the results at an older version, because it's current latest version is a SCREW.

mdrum
5-Regular Member

As an addendum to my previous comment - to me the combination of:

Revision = Latest

Iteration = Latest

would be the same as saying "Give me the latest version"

 

Maybe that is what we actually need - is a "Version = Latest" option.  This way, if you want the absolute latest version in an object's history to be considered, and ignore all other iterations in the history, then this option could do it.

 

If you want to use Revision and Iteration as criteria, then you are looking back into history.  That would be an acceptable compromise in my opinion, because there may be times when you want to pull up older versions that meet certain criteria - but most of the time when I am doing searching like this, I'm cleaning up data in the system - so I want to know where all the parts are that are in a context that have never been released, and if I do a search on the initial "In Work" state, I don't want to get all the parts that started off at that state and have since moved on to released states, that defeats my objective.

TomU
23-Emerald IV

@mdrum - YES to everything you said.

 

I wish the search criteria were applied in the order defined.  This would solve the problem of not being able to locate the actual latest version and bring so much more capability to the search tool.

 

TomU_0-1585676773804.png

 

Vikram_Sinha
5-Regular Member
Status changed to: New Idea

We do have a future backlog to address the "true latest" concern, but we also have to acknowledge the fact that a majority of our customers do not want this change and are fine with the current behavior. A change in the current behavior would mean "regression" for them. As of now, there are no specific timelines available for this implementation, but whenever this gets implemented, the solution will have to be an optional one, like a switch, wherein the current behavior continues to be the default. 

TomU
23-Emerald IV

@Vikram_Sinha,

Thank you for responding to this product idea.  It's good to know PTC is paying attention to these.  I would like to respond to something you said:

 

... we also have to acknowledge the fact that a majority of our customers do not want this change and are fine with the current behavior.  A change in the current behavior would mean "regression" for them.


1.)  Has PTC really surveyed the majority of their customers on this one specific issue?  I've certainly never been asked about it, and I'm guessing the other 183 companies who voted up this product idea weren't asked either.  (Keep in mind that these 183 votes represent thousands or even tens of thousands of actual end users.)

 

2.)  Did the customers who were asked really understand the nature of the request?  Were they able to see what Windchill is incapable of doing today?

 

3.)  I don't think anyone on this thread is asking for the current functionality to be removed or replaced.  We're simply asking for some way to search for the required information.  This is very easy to do from the database but currently impossible from the Windchill user interface.  Maybe add an extra check box on the advanced search page or add a new user preference, but give us something that will allow us to search for and filter against the actual last iteration and/or revision of an object's history.

 

I really think much of the frustration with this is caused by the definition of 'latest'.  Windchill (apparently) uses latest to refer to mean "the latest among the stuff collected" instead of "the last one that actually exists".  There is a huge difference between these two.  Using @mdrum's example, I think most people naturally expect the bold items below to be the 'latest' iterations and the red items to be the latest revisions (and versions).  What is considered 'latest' should NOT change based on the search criteria, rather it should be fixed based on the objects history.

 

Part 1 History:                                         Part 2 History:

A.1 In Work                                             A.1 In Work

A.2 In Work                                             A.2 Prototype

A.3 Prototype                                         B.1 Prototype In Work

B.1 Prototype In Work                             B.2 PreProduction

B.2 Prototype

C.1 Prototype In Work

C.2 PreProduction

D.1 PreProduction Change

D.2 Production

 

Yes, there is definitely value in being able to get the latest among a collection of objects (post filtering the search results), but right now it's at the expense of being able to actually find the objects we're looking for.  Somehow there needs to be a way to distinguish between what is being searched for and the filtering that happens after the results are returned.

 

@cpage probably said it best (emphasis mine):

Multiple users have misunderstood search results, and costly mistakes were made. The actual functionality is different than users expect.  Practically all users depend on Advanced Search, and it is nearly impossible to explain this crazy functional issue to everyone.


Please reconsider adding this functionality to the next release of Windchill.  Thanks.

nsamardzija
10-Marble
Status changed to: Under Consideration
 
TomU
23-Emerald IV

@nsamardzija,

Could we get an update on this request?  It's the 6th most requested (voted for) Windchill related idea on the community.

 

P.S. Another article just come out from tech support that seems to be related.  

mmahle
8-Gravel

I can 100% support this product idea.

Windchill Search acts different as defined in the Boolean Laws. 😲

I would really appreciate to get to know the person who once decided what we call now "works as specified". This guy has definitely enabled "God-Mode" back then. 

 

Thanks to @TomU for keeping this idea alive.

mdrum
5-Regular Member

@TomU - Thank you and to all that have contributed to this thread.  

 

@nsamardzija @Vikram_Sinha  - I want to make sure we are not losing sight of the other pieces that I mentioned as well, which I feel go hand-in-hand with this same issue.

 

FACETS

Looking at the history of the two objects, this is what I have:

 

Object_1_History.jpg  Object_2_History.jpg

 

Performing a keyword search gives me the latest version of both of these objects:

 

Keyword_Search_Initial_Results.jpg

 

NOTE: The search results are what I would expect based on my current preferences of returning only latest versions of objects.  Object 1, therefore, is returning the C.2 Production version into my current search results window.

 

When I apply a facet to "Refine Results" as indicated, I would expect that to only apply values based on what was originally returned in the search results window.  So clearly, if I said, refine the results to show me objects that are currently at the state of "Prototype", there is only one object in my current search results window that meets this criteria, which is clearly Object 2.  However, here is what I actually get:

 

Facet_State_Results.jpg

 

Instead of "refining" the results, it has (in effect) restarted my search all over again, looking through the history of the objects, to find a match to the criteria, and therefore has given me the A.3 version of Object 1, which was the latest revision/iteration that was at Prototype.

 

Perhaps we need a facet checkbox option or preference to ignore older versions, or have that be the default action, and a checkbox/preference to "include older versions" that would then behave this way for those that want it.

 

CLASSIFICATION SEARCH

 

Similarly, look at the classification history of two objects:

 

Object_1_Class_History.jpg   Object_2_Class_History.jpg

 

Object 1 was originally classified as a 'Bolt', but then, was fixed upon a future change to "Screw".  Object 2 was classified correctly from the beginning as a "Screw".  Therefore, when I perform a search on parts classified as screws, I expect the following results based on the latest versions of the objects:

 

Screw_Results.jpg

 

However, if I do a search on "Bolts", this is what I get:

 

Bolt_Results.jpg

 

Even if I set "Revision = Latest" and "Iteration = Latest", I still get this same result.  So in keeping with the original thread, if we had a way to only look at the latest regardless of criteria, 

BjoernRueegg
17-Peridot

Also supporting this topic 100%. To explain how the Windchill search works is a science in itself. Also the behaviour with special characters like - or _  acts different almost in each version. Searching and finding is more important than ever... And most user are interested only on the pure latest version. The history doesn't completely matter, but 99% of it does.

nsamardzija
10-Marble

@TomU  - thanks for bringing this back up. 

@mdrum - thank you for the example, this helps further understand the pain points.

 

As for an update - we are prioritizing this and are tentatively looking at the next Windchill long term support release (12.1.2.0) as a target. What we are doing now is investigative work on understanding how we can address the current behavior into something that would answer the concerns outlined by this thread.

EV_9577779
3-Visitor

My colleagues and I also support this topic!

 

Main problem in my eyes has to do with the definition of 'latest'. 

Our expected behaviour with use of Revision = Latest: Show only the highest revision of an item (and check if it meets the other criteria).

Real behaviour with use of Revision = Latest: Show the last revision of all items (for which the other criteria are valid).

 

Hope to see something likes 'Revision = Highest' soon in the Advanced search.

 

Even better would be if that option is also added to the Search preferences.

For example, that the current preference 'Latest Version Search' is changed to 'Default Version Search' with values 'Latest, All, Highest'.

In that case, nothing changes for the people that really want the current behaviour of Revision = Latest and all the people that upvoted this topic can change their preference to the, in my eyes, logical behaviour of the Advanced search.