21 Replies Latest reply on May 29, 2012 1:23 PM by Brian Dalton

    How to maintain version references on clerical changes.

    Brian Dalton

      I'm afraid I already know the answer to this, but there may be a simpler way, so I'll ask.

       

      When we perform a clerical correction on a part, it is not up-revved nor given a new P/N, but the system creates one or more new versions to maintain the file history.  When that happens, the references held by any assy or sub-assy that uses the part are no longer current - they need to be changed to point to the new released version.  Then, any assy or sub-assy that uses that assy also must be updated... all the way up the tree.

       

      I don't see any way around doing all this the tedious, manual way.  Does anybody have a suggestion for automating this in some way, or otherwise reducing the grunt work that it causes?

        • Re: How to maintain version references on clerical changes.
          Brian Dalton

          This problem is still plaguing me, and I still can't see a reasonably efficient way to deal with it.

           

          It occurs to me that I may simply be going about the process in the wrong way.  Is there another 'organizational philosophy' that can be used to reduce the importance of version-based references, such that they would not need to be manually and tediously updated even for something as mundane as a clerical change?

           

          Or, perhaps there is an answer to my original question that has yet to come to light?

            • Re: How to maintain version references on clerical changes.
              Jeremy Feist

              I expect an add-in could be written to cycle through the levels of where used and do all of the check out and ins for you, but I don't see the point.

               

              We do not pay attention to the version that is referenced, only the rev. How do you use the refernced version info now that you need it to list the latest version?

                • Re: How to maintain version references on clerical changes.
                  Brian Dalton

                  Great question Jeremy.

                  Jeremy Feist wrote:

                   

                  We do not pay attention to the version that is referenced, only the rev. How do you use the refernced version info now that you need it to list the latest version?

                   

                  It strikes right at the heart of my dilemma, which is a bit complicated, so let me give an example.

                   

                  We start with an assembly:

                  123.ASM  which is released to rev A, version 5

                   

                  This assembly contains (references) two parts:

                  456.PRT:  Released to rev A, version 5

                  789.PRT:  Released to rev A, version 3

                   

                  If a user Gets this assembly using the Referenced Version option, they will get the correct component parts, because the references are up to date.  All are released at the latest version, so using the Later Version method to get the assembly would yield the exact same, correct result.

                   

                  Now, suppose that one user makes a clerical change in 456.PRT and in the process creates two new versions: 6 and 7.  This is now re-released to the same rev A, but at version 7.

                  Simultaneously, a different user begins an up-rev of 789.PRT and in the process creates three new versions.  This change is still under review and has not yet been released.

                   

                  Now we have:

                  123.ASM  rev A, version 5

                  -- reference to 456.PRT version 5

                  -- reference to 789.PRT version 3

                  and

                  456.PRT   rev A, version 7

                  and

                  789.PRT   no rev, version 6

                   

                  If a user seeking 123.ASM 'Gets' the assembly using the Referenced versions option, they will get:

                   

                  456.PRT   rev A, version 5     NOT CORRECT, TWO VERSIONS BEHIND

                  789.PRT   rev A, version 3     CORRECT

                   

                  If they choose instead to get the assembly using the Latest versions option, they will get:

                   

                  456.PRT   rev A, version 7     CORRECT

                  789.PRT   no rev, version 6     NOT CORRECT, UNRELEASED VERSION

                   

                  Either way, one of the parts will be in the wrong version.  Unless they go through each individual part and sub-assy and 'get' them all individually (not practical in an assembly of any reasonable size) they will not be able to get the full complement of components at the correct version level.

                   

                  The problem could be solved by my original suggestion of updating the reference that 123.ASM holds to 456.PRT, but again, in a large, complex assembly this would be monstrously inefficient.

                   

                  There must be a 'best practices' solution that I'm missing here...

                    • Re: How to maintain version references on clerical changes.
                      Jeremy Feist

                      So, the big difference between our set-up and yours seems to be that we use "always use latest" option, so we do not have the choice of using the referenced version option.

                       

                      For your specific example, you may be able to use user/group privilage settings to help control what people can get. if the user did not have permision to see files in your "editing" state, they could use the get latest option and they would see the clerical change that had been approved, but not the other, that has not beeen approved.

                      • Re: How to maintain version references on clerical changes.
                        Jason Capriotti

                        Yeah, the ability to work with latest 'Released" is lacking.....its all or nothing. In engineering, users can see all files at all states. This can be a problem when a part is inwork on one ECO but used in an assembly on another unrelated ECO. If the assembly goes first, it may show changes that aren't really there yet.

                         

                        We use the "Always work with latest" option because it's too easy to not have the latest and the user doesn't realize it. It's also too global, I want it for some files, but not others.

                         

                        What's need is an option on how references should be treated on the state itself.

                        So on our state called "Release", need an option:

                         

                        • "When file is a reference, always use the the latest version in this state"
                          • Checkbox: Use latest version regardless of state when variable "ECO Number" matches.

                         

                        This covers an assembly that is inwork and a part that is inwork on another ECO. The assembly will continue to reference the "Release" state version of the file. With the checkbox option, if the part is also inwork and its ECO number variable (user defined) matches the assembly, then use the latest version.

                         

                        We also need the ability to force it to get "as built" even though always work with latest is selected. Just as a one time operation. Next time you open it, it gets the latest, unless you force it.

                        • Re: How to maintain version references on clerical changes.
                          Nahid Rumana

                          Brian,

                          Does this problem happens to the "PDF conversion" too? We are looking at using the task for automatic PDF conversion of the released Solidworks drawings. As far as I know, when the task is executed, it opens the Solidworks drawing and the referenced files in Solidworks in a host computer and then save as PDF - which versions of the referenced files the task will open?

                           

                          If the referenced files have been modified but not released and the PDF conversion task opens the latest versions, the generated PDF will be wrong.

                           

                          Nahid

                    • Re: How to maintain version references on clerical changes.
                      Gary Radish

                      But Brian what I don't understand that a change isn't a revision it just sounds like your company is being lazy.  A change is a change no matter what it is, you revised a document. Unless you can make 100% sure you got and destroyed every sent file, printed copy etc. of original revision A then it is a revision no if's and's or but's!

                       

                      Gary

                        • Re: How to maintain version references on clerical changes.
                          Brian Dalton

                          A drawing is a specification, and if the specification is changed, it is either a revision (interchangeable change) or a new part number (non-interchangeable change).  A clerical change does not change the specification, so requiring the full review and approval process that a change of specification requires would be massively inefficient and a waste of the time of many valuable employees.  Efficiency trumps pointless bureaucracy.

                           

                          The drawing files released in the archives are the official versions of the specifications.  Printed copies are just copies and by definition are for reference only.  Employees are required to make sure that any printed material they refer to in their work matches the official released archives, to which they always have access.

                            • Re: How to maintain version references on clerical changes.
                              Gary Radish

                              I completely understand.  In our workflow we have 3 seperate Revision processes to cover the different scenerio's and approval processes.  Not sure if you could do it but in a workflow transition or check-in could you run a task scheduler task to update associated files?

                                • Re: How to maintain version references on clerical changes.
                                  Stephen Lapic

                                  We just have one workflow for modeling and drafting but when it is in the released state I, as admin, can transition it into a quick change state for clerical issues and then move it back to released with no bump on the revision.  This is a very simple loop in the workflow with no special conditions.

                                    • Re: How to maintain version references on clerical changes.
                                      Brian Dalton

                                      There is, however, a 'bump' in the version, so any files with references to the one that has undergone clerical now hold references to an out-of-date version.  This is the crux of the problem.  States and revisions are under our control, but versions (ie, file history) are ever-progressive.  Any time there is a change to a variable, a change to the underlying document or a change to any file references EPDM forces the creation of a new version, but does nothing to update the references to that document from other files.

                                        • Re: How to maintain version references on clerical changes.
                                          Laura Whittle

                                          I just did a check with in our test vault.

                                           

                                          I had an assembly, checked out one of the parts on version 2, changed something on it, saved and checked it back in. Became version 3.

                                           

                                          Then I checked out the assembly and it automatically referenced the the new version 3 of the part.

                                           

                                          Do you want it to reference version 2? 

                                            • Re: How to maintain version references on clerical changes.
                                              Brian Dalton

                                              If you have your system set to 'Always work with the latest version' then a check out or get will give you just that, as you saw.  It did not, however, change the version that the assembly has a reference to.  It merely ignored the version part of the reference and showed you the latest version.

                                               

                                              If you perform a 'Get' (not Get Latest) on the assembly and you select the 'Referenced Versions' option, you will see that the assembly is still pointing to the previous version - or more accurately, it's pointing to whatever version it was pointing to when its latest version was created.

                                                • Re: How to maintain version references on clerical changes.
                                                  Laura Whittle

                                                  We do not have "always work with latest version" checked on our system for cad users.

                                                    • Re: How to maintain version references on clerical changes.
                                                      Brian Dalton

                                                      When you checked out the assembly, it grabbed the latest version of the referenced part by default, and if you checked the assembly back in, it would have an explicit reference to that latest version.  However, it would also have created a new version of the assembly.  The previous version of the assembly would still contain a reference to version 2 of the part.

                                                       

                                                      I don't want to check out the assembly and create a new version of it.  The existing version has already been released as an official revision.  That official revision has a reference to the part as it existed before the clerical change.  If I change the reference of the assembly to point at the new version of the part, I will need to re-release the assembly because it now has a new version which is not the one which was approved and released.  This problem extends all the way up the assembly tree.  For large assemblies it creates a massive amount of work which seems to be a waste of time, and should not be necessary for just a simple clerical change.