Video Tech Tips [VTT]

Managing Obsolete Files in SOLIDWORKS PDM

February 06, 2024
In this video, we're going to look at one way you can manage obsolete files in SOLIDWORKS PDM. To start, we have a cover component that we need to make obsolete. I'll do this by changing the state to our obsolete state. We can see this is now marked with the all-caps state and the red icon letting us know we shouldn't use this part. Now, over on the administrator side where I want to show you what our general workflow looks like.

I've added this obsolete state here just with a simple transition. But remember, everything in PDM is customizable. Perhaps you want to restrict a transition like this to certain users. Maybe the path to being re-approved must go through other approvals. This is all customizable, but for the sake of a demo, I just made a simple, obsolete state here. Now, once a file reaches the obsolete state, what we would want to do is set up a check somewhere else in the workflow so that if an assembly makes it to this past approval point, it'll check to see if any of the referenced components are in the obsolete state and then prevent that top level assembly from reaching the next approved state if any of the parts within it are obsolete.

We will edit this past approval transition and we will apply a condition. This is called the child reference state condition, and we want to say that it cannot be equal to the engineering obsolete state. As long as the files are not in the still obsolete state, then the state change should succeed. We'll go ahead and save this change and push it out to the vault. Here we have a top-level assembly that's in the waiting-for-approval state.

Now, I already know that this is referencing an obsolete file, but let's see if PDM can catch it. I'll try to change this using the past approval transition. What we're met with is a warning that the child references do not meet the state conditions. We can see it has that additional warning there. We can also very easily see that this file is in an obsolete state. At this point, I would have to cancel the state change operation and then either remedy this by removing the obsolete component or replacing it with something else. Or perhaps bringing this component back into a working state where it's no longer obsolete.