I'm not exactly sure if you completely understand EPDM Revisions. Please forgive me if I tread familiar water.
In EPDM, a Revision is a version that is flagged as a Revision. This helps a user understand that this is a version to pay particular attention to. If a user does not have permission to see working versions then he will only see the versions flagged as a Revision. Also, a version marked as a Revision will never be placed in cold storage. Revision schemes are set up by the administrator and are triggered to increment, usually to the next one, in a workflow transition. Additionally, users can be given permission to increment a Revision manually. You can have a variable in EPDM that is set to the current or next Revision by adding this action in the transition. This is what we do. We also map the EPDM variable to the SolidWorks property so they will be the same. Hope this helps.
Thanks for getting back to me. You are right, I didn't quite understand how EPDM handles revisions. What I am also trying to understand is how to manage these in EPDM. It seems I have a command to either increment the EPDM revision or my revision variable.
Am I right in saying then:
- Inc. Revision increments the EPDM revision variable
- Set Revision via Set Variable allows me to map my SW property Revision to the current or next EPDM revision.
Yes, that's correct. We have both Increment Revision and Set Variable (we named our EPDM variable "Rev No") actions in a workflow transition. When we started using EPDM, we let EPDM control the Revisions and mapped the "Rev No" variable to a property in SolidWorks to reflect the value on the file.
Most of the time you want to do both as an action in the transition......first write the revision variable %nextrevsion% then "Increment Revision" last. The variable can be mapped to SolidWorks, Word, Excel, AutoCAD, etc. It also allows it to show up in the data card. The Increment is just the internal counter and shows in the history and as Michael said, you can tell cold storage to never purge versions with a revision label. We also use the revision label to programmically select the correct version for processing parts in our factory depending on which revision is currently shipping.
In EPDM you have versions as well as revisions.
Every time you check a file in (regardless of the file type)
a new version is created. You don’t have control over this the system automatically
takes care of this.
Revisions on the other hand are incremented in the workflow.
As administrator you can decide when a file gets a revision and what format the
revision should have (i.e. 01, 02 or A,
B etc.) The revision is changed by setting a variable in the transition to “next
revision” as well as the “Inc Revision” command (They both have to be in the
action of the transition)
Both the version as well as the revision can be mapped to the
The way to map your current revisions to the EPDM revisions
is to assign an attribute in your Revision variable in EPDM and make sure that
the “Attribute Name” is exactly the same as the name of the custom property in
SolidWorks. If this is set up properly the existing revision will be written to
the EPDM database and it should continue to the next revision. The problem you might
face is that not all the revisions in your existing SolidWorks files have the
I hope this helps
To respond to the last part of your question. Yes, doing it yourself is a bit messy, but seems to work okay. You can also buy some Add-ins (search razorleaf, hawkware) that are supposed to make this easier. This often comes up with legacy files.
Jason Hogue wrote:
Is there anyway to map the SW Revision to the Local Revision
- I have a file I want to push through my workflow
- The file already has the SW Revision Variable set to B but the Local revision is blank
- When pushed into a state called concept, I want both the Local Revision and the SW revision to be B
I have found a way to do this using a mass of transitions and states to define each possible rev and using multiple Inc. Revision commands, but this seems messy.
This link to another post shows an image of my revision changing workflow - should give you some idea. I used Conditional Automatic Transitions, one per revision letter.
I allow check-out at each state in this - so when something gets stuck (inappropriate revision value) it is pretty easy to fix. It will take us some time (years?) to really recover from migration - so we use this workflow a lot.
Thanks for the link to these workflow. I will go over these and see if I can find paths that I have missed. We have a pretty simple engineering system here with no internal manufacturing which hopefully will allow me to keep my workflow relatively simple.
I had the same problem months ago. I was able to solve your problem by creating two work flows that link together. The first work flow check the SW files at check in and set the correct Local Revision and then moves it to my regular Work Flow. The Local Revision is the Revision that EPDM uses for the Set Variable %nextrevision% action. For example, If the Local Revision is A and the SW revision is C, when you increment revision and set variable. EPDM will Set the variable to Revision B on the SW files! If you are migrating old files you have to create a Work Flow to automatically set the correct Local Revision and then you can pass the SW files through your regular work flow. This can be done through Work Flow Links and automatic transitions. For example, I have a revA file that I want to revised to revB. I will set revA on the SW file and check it in. My first work flow will automatically read the revA from the SW file and set the Local Revision to revA and move it to my regular work flow. Once I approve the SW files in the regular Work Flow, EPDM will increment the Local Revsion and SW file to revB. Local Revision and SW revision should always be the same!
Nhat MAI wrote:
Local Revision and SW revision should always be the same!
Not always. For example we show the next revision on the drawing while it is in the review process. The rev showing on the drawing is the SW Revision variable and Custom Property. We also show an UNRELEASED watermark on the drawing. When the change is finalized (Released) that is when we synchronize the two. But other than that sounds very similar.
NHat - Could you share how you automatically read the Rev of the SW file and set the Local Revision to the same Rev? I'm trying to do this on a convert to pdf task and transition, so that the revision of my pdf files catches up and matches my drawing files
Thanks everyone for your input. This has helped immensely. I now have two work flows controlling my new and legacy data. Still have some testing to do to make sure I am catering for everything but it is a start.
I could get either the EPDM revision to increment or the SW variable "Revision" to increment but not both. Was also trying to develop a simple work flow to map an existing variable "Revision" to the EPDM revision but this does not seem to be possible
You can map the EPDM revision to a SW variable "Revision" but you can't go the other way - Correct???
Jason, Always interesting to see other workflows.
Was also trying to develop a simple work flow to map an existing variable "Revision" to the EPDM revision but this does not seem to be possible
You can map the EPDM revision to a SW variable "Revision" but you can't go the other way - Correct???
Not sure I understand - are you saying your transition to INCREMENT ALPHA (for example) is not working? That is how you go from the SW Revision to the EPDM database Revision stamp. Maybe you have some details off. Oh.. I bet I know what it is... when you do the Increment you can ignore the usual protocol (increment by 1) - just put in the actual value for that specific transition that you want to be used when you Increment. I don't have EPDM here to show an image but your red transition C should have a Condition of C (for SW Revision), and it should have an Increment Revision that stamps C and only C. Then copy it and customize for the next Rev letter.
Also some general advice: if you are just starting out try to minimize the number of states (on your main workflow) - reduce complexity, think about what really adds value. The more states the more times users have to transition stuff. And much easier to add states later than it is to remove.
Oh, and I think your Revision change workflow should lead to the RELEASED state. Otherwise you are stamping a version as an EPDM Revision too early. Not sure what you are doing with the Reset Rev link, vs the Increment or Decrement links.
This workflow works. My previous one didn't.
In my previous workflow I was:
- Trying to get EPDM to read an existing SW variable "Revision"
- Map this variable to the EPDM revision. As I mentioned above, I could map the EPDM Revision to a variable but could not go the other way.
Anyway I couldn't get this to work so instead I created the Import Workflow to:
- Read the existing variable "Revision"
- Use conditional transitions to push a file down a certain path based on the value of the variable "Revision". Eg Rev B goes down the B path
- Set the Revision variable to say B
- Use two Inc. Revision commands to get the EPDM revision to the right value
For the revision change workflow, I need it to go to both Concept and Released states as we is files from both states. Concept drawings in Alpha revisions will be issued for information and comment to customers, released files will be issued as for construction. Hence I need to set these revisions from the start.
The Reset Revision path is a left over from testing and needs to come out....
Thanks for your comments.
Okay, here it is. Should not need two Increment revision Actions. Go to Revision Numbers tab and set "Reset to value" to the appropriate index number to jump the rev to whatever you want.
Also setting the Revision variable seems redundant since we are already using the data card Revision variable. Only Action I have is Inc. Revision.
[[Edit]] I always forget to mention something. I may not understand how you are using your Concept and Released states, but it seems like you should not need to stamp the database revision for a concept, and it will be misleading. (See my note to Nhat Mai.) You can change only the revision letter that shows on the drawing (the SW revision, aka card revision), we do this basically manually but you can also have it jump to the next value with your RETURN TO CONCEPT transition (after it has been released once at the correct Rev). If the APPROVE transition is used then you stamp the database revision and Set the card Revision to the next rev (well, to the same rev you set during RETURN TO CONCEPT, just to be on the safe side).