5 Replies Latest reply on Feb 18, 2016 10:32 PM by Prasad Bhonsule

    Prevent Checkin of Released Objects

    John Wayman

      Hello,

      I am running a trial installation of Solidworks PDM Standard and I need some advice:

      1. I have a 'STATUS' field in my drawing block, which shows the status of the drawing in Workgroup PDM -  In Design, Released, Change In Progress, etc. In PDM Standard, however, it doesn't seem to update. Presumably, I need to link a $PRPSHEET variable with some other variable to achieve this. What variable do I need to link with what to make this work?

      2. I would like it if my users were prevented from Checkin of an object in the Released state. If it is Released, I want them to have to knock it down to Change In Progress before they can check it in. That way, when I get (1) sorted, the drawing will indicate whether it is a released and unmodified drawing. Ultimately, I only want drawings showing 'Released' to be sent out for quote. How do I prevent them from checking in Released objects without changing their status?

       

      SW2016, SP1

       

       

      Cheers,

       

       

      John

        • Re: Prevent Checkin of Released Objects
          Prasad Bhonsule

          Hi John, my answers below:

           

          1) There's no built-in variable called "State" apart from Searching in PDM. You would have to create a variable called "State" or "Status" and assign it to a data card. As PDM Standard uses a workflow, similar to a lifecycle in Workgroup, you can create a Set variable action on a workflow transition. See the screenshot below as an example. The value of the set variable action is set to "Destination state" so every time a file goes through this workflow transition, the value of the variable will change to the destination state eg Released.

           

           

          2) Do you mean prevention of Checkout rather than Checkin?? If so, open your workflow, click on your released state, and under permissions, prevent the user or group from checking out the file. This way, they can't check out released files and make changes on them, they can move them to an earlier state in the workflow where they have more permissions.

           

           

          I hope this helps.

           

          Kind regards,

           

          Prasad

            • Re: Prevent Checkin of Released Objects
              John Wayman

              Thanks, Prasad.

              Your response has prompted a few more questions, I am afraid:

              1. I can create a variable called 'STATUS' in the admin tool, but I don't know what block name or attribute name to enter. If I am right, I need to enter the block name of the block in the metadata where the STATUS variable will be stored. How would I know that?

              2. If I look at my Part card, there is an edit box labelled 'Current State', with the variable <Current State> associated. If this is the variable showing the workflow status of the object, can I simply use this variable, rather than creating my own?

              3. My drawing format uses the variable '$prp:"status" to show the Release status of the drawing. What would I put in there instead?

               

              Regarding the Checkin question, I think I do mean Check In, not Out.

              Currently, the way it works is as follows: I, 'User', create a part, check it in and submit it for approval. 'Approver' logs in and checks the part, then approves it. The part is now Released. Its Revision is 'A'.

              If 'User' then sets the same part to 'Change In Progress' and checks it out, he can modify the part and submit it for Approval. 'Approver' can again Approve the change, whereupon the part is released at Revision B.

              My problem is that 'User' can check out Revision B, modify it and check it in, without changing its status to 'Change In Progress', i.e. whilst it is still Released. Now, when 'User2' checks out the part, he gets a part which is at 'Released', but is not the same as the one that 'Approver' approved.

              Therefore, I want to prevent 'User' from checking in the part, after he has modified it, unless he has demoted it to 'Change In Progress'.

              This is precisely the way we did things in Pro/Intralink at my last company. It worked well.

              Of course, there may be a better way that I am not aware of.

              The net result I want to achieve is that any part, drawing or assembly that is 'Released' cannot be changed in the vault without its status also being changed. That seems to me to be one of the key benefits of a PDM system, but I can't see how to achieve it in Solidworks PDM Standard.

              I would welcome some more assistance.

               

              Regards,

               

               

              John

                • Re: Prevent Checkin of Released Objects
                  Prasad Bhonsule

                  Hi John, in terms of block name, if it's a Solidworks file type (slddrw,sldasm,sldprt), and you want to map variables to the custom properties, then the block name should be CustomProperty, and the attribute name is the name of the property in your file. So if you have a custom property called Description, then the block name is CustomProperty, and the attribute name would be Description.

                   

                  If you already have a variable called current state, then yes use that one. And in your drawing sheet format, change $PRP: Status to $PRP: Current State

                   

                  As for check in /check out, it sounds like your users have Check out permissions when the file is in "Released". What (I think!!) you need to do, is give them Read file permissions only in the "Released" state. I presume you have workflow transition going from "Released" to "Change in Progress", so you can allow the user to move a file from "Released" to "Change in Progress", whereupon the user could check out the file, modify it, check it back in and then submit again for approval.

                   

                  Could you post some screenshots of your workflow, and associated state and transition permissions?

                   

                  Kind regards,

                   

                  Prasad

                    • Re: Prevent Checkin of Released Objects
                      John Wayman

                      Prasad, this is extremely helpful!

                      I think I understand the variables thing now. Thank you.

                      I see what you mean regarding the Check In.

                      I have changed the permissions to disallow Check Out of Released Objects by Users.

                      I will do some testing to check that this has achieved what I want, but it certainly looks promising.

                      I have attached a series of screenshots, showing the Users' State Permissions and Transition Permissions. The Transitions Permissions are all set as shown, except that Users are not permitted to make any of the three Transitions that result in a Released State. Only Approvers are permitted to make these transitions. Approvers are only permitted to make any transition that results in Released, Work In Progress, or Change In Progress.

                       

                      I think it is all starting to make sense.

                      I am beginning to think that the system can do exactly what we want it to.

                      Regards,

                       

                      Johnpermissions - users - Change In Progress.PNGpermissions - users - Change Pending Approval.PNGpermissions - users - Released.PNGpermissions - users - Waiting For Approval.PNGpermissions - users - WIP.PNGTransition Permissions - users.PNG