I was at the Pacific Design and Manufacturing show in Anaheim this year helping out in the SolidWorks booth and while there, I was approached by an Enterprise PDM user who had an interesting situation. Basically, his company has a couple different types of “Projects” and when a new project comes in, they would like to use a template in EPDM to create the folder structure and some start documents for that specific project. As we know, the templates in EPDM are a fantastic tool for doing this however they had one major issue, multiple serial numbers.
When I say “serial numbers” in this case I am talking about the auto-incrementing numbers that EPDM can create and assign to files or folders. In this case, they had different sets of “serial numbers” that were actually being used as the project number. What this customer wanted was to have 1 template which would prompt the user for the type of project and then based on that input would provide the appropriate input form for the project (appropriate input form meaning the input form that used the correct serial number). Unfortunately, this is a limitation of the template manager in Enterprise PDM in that you can’t use the input from one form to drive a secondary form.
The user told me that once he realized that, he tried to create one input form that housed all the different project types on tabs and the tab for the proper project was activated by a drop down selection of project type. This unfortunately brings up another limitation on EPDM in that if you have multiple serial numbers on a single data card, all serial numbers will bump even if only 1 is visible. This was leading him to the last resort of creating a template for EACH type of project which obviously isn’t acceptable as it would make choosing the right one quite a chore for the user. Our only option at that point was to turn to the API.
Now, I don’t even for a second pretend that I know how to write API; however, I do have a good grasp on what is possible for someone who knows what they are doing. The following is what I suggested for the user and I can foresee this being very helpful for multiple applications:
Create a template input form for all Project Types. The first thing on this input form is a drop down list that specifies the type of project. For the rest of the fields on the card, you can set them up in any number of different ways depending on the information you need but at least one of the next fields will be a field for the project number. The last portion of this data card would be a button (called “Get Project Number” or something similar) which would be linked to the API you are going to write.
As for the API, it would take the value of the “project type” from the drop down list and match it to the name of a serial number and then fill in the next value from that serial number in the “Project Number” box. This forces the user to pick the type of project AND grab a serial number and will allow multiple types of projects to be driven from 1 template. I spoke with our in house programmer here and he told me a program like that would be very easy and about 50 lines of code to write. The great thing is this could be applied to any situation where different numbering schemes are in use like part numbers, eco numbers, document numbers, etc.
If you have any questions on EPDM, check out the Hawk Ridge website on EPDM.