14 Replies Latest reply on Sep 7, 2017 5:26 PM by Todd Sorel

    Get Latest Subassembly Overwrites Main Assembly

    Todd Sorel

      I don't quite understand what I'm doing wrong. I am using PDM Client on a fairly large assembly with a number of subassemblies in SW2017 SP2.0. It seems like whenever I get the latest version of a subassembly, it overwrites the main assembly that I have checked out. It will ask me to Save As a new file or load the version in the vault. I click "Cancel" because I don't want to do either of those things. However, it will continue to load the latest version of the subassembly AND reload the main assembly from the vault, destroying all the work I've done. If I choose "Save As" it will not allow me to save it as the same name because I have it checked out...

       

      Am I supposed to save and check everything in before I "Get Latest" on subassemblies?

        • Re: Get Latest Subassembly Overwrites Main Assembly
          Austin Broeker

          "Get Latest" will load the latest version of a file that's available from the vault into your computer's memory. Best practice is to get latest before checking anything out, that way you avoid the issues you're having.

           

          Are you trying to work from an older version of the main assembly for a specific reason?

            • Re: Get Latest Subassembly Overwrites Main Assembly
              Todd Sorel

              I am typically working on the latest version of the top level assembly. Others will occasionally check in updated versions of subassemblies. When those come available, I try to incorporate them into the main assembly. If I'm only loading the subassembly, why does it reload the top level assembly? It should just update as if I made a change in the subassembly, not reload the archived version.

                • Re: Get Latest Subassembly Overwrites Main Assembly
                  Austin Broeker

                  Unless you don't have the latest version of the top-level assembly, or if you're doing a "get latest" on the top-level assembly itself, it shouldn't be reloading the top level. If you do a "get latest" on the top level when you have it checked out, even if you already have the latest version, it will try to load the most recent version from the vault, which means it will try to load the version that existed just prior to you checking it out (so it will ask you to either "save as" to preserve your changes, or to erase them by replacing the current model with the version from the vault).

                   

                  This is why I typically "get latest" before I check out a file and before I've opened anything up in Solidworks. We've had too many headaches due to loading old versions of files - getting the latest version first helps reduce these headaches and prevents the issues you're seeing.

                    • Re: Get Latest Subassembly Overwrites Main Assembly
                      Todd Sorel

                      I must not be clear.

                      1. I have the top level assembly "A1" checked out and open, version "-/41" (editing version 41)
                      2. I do a bunch of work within assembly "A1" and save many times.
                      3. I choose "Get Latest" for a subassembly that a colleague has modified in the PDM Task Pane Tab
                      4. Solidworks informs me I am editing version 0 of assembly "A1" and the latest version is 41
                      5. Solidworks only gives me three options; "Use Version from Vault", "Save Open File as Copy" or "Cancel".
                      6. If I select "Cancel" the old version from the vault is loaded anyway and I lose my work
                      7. If I select "Use Version from Vault" the old version from the vault is loaded and I lose my work
                      8. If I select "Save Open File as Copy" this will no longer be the same assembly!

                      I have no choices other than to lose the work I've done in the top level assembly if someone has updated a subassembly. How is this correct???

                        • Re: Get Latest Subassembly Overwrites Main Assembly
                          Austin Broeker

                          Just for clarification, is this the type of message you're getting?

                           

                          I think you may just have to save your changes and check in the top level assembly before getting the latest version of sub-assemblies. If I'm not mistaken, PDM will tie the current version of the top level assembly to the specific version the sub-components were at when the top level was checked out, that way if you "get" an archived version of the top level assembly it will also get the archived version of the sub-components that correspond to that exact version of the top level (if that makes sense). PDM can't associate two versions of a sub-assembly to one version of the top level.

                           

                          Now that I think about it though, why it forces you to lose all of your changes instead of just replacing the referenced version of the sub-assembly is a mystery to me... I guess I've just gotten used to the quirks and have worked around them for so long that I forgot why I was doing that way in the first place.

                  • Re: Get Latest Subassembly Overwrites Main Assembly
                    Daljeet Singh

                    When your colleagues check in the subassembly after modifying it, You will have the older version attached in your main assembly. For updating that use PDM task pane to get the latest version of the modified subassembly, it will not ask you to save as parts of subassembly