25 Replies Latest reply on Jul 14, 2015 3:22 PM by Greg Thomson

    EPDM Implementation Advice

    Greg Thomson

      I was wondering if some of you more successful EPDM users might want to weigh in on this very general file handling question...

       

      Currently, a CAD file at our company starts life in a fairly uncontrolled 'Project Directory'.  It starts as something like 'my favorite part.sldprt', then later gets part numbered (2000123.sldprt).  Upon release it gets moved into a secure read-only structured environment, for everyone else to use, reuse, revise, etc.  The folder structure is arranged numerically with 10k CAD files per directory.

       

      There is a group of people that feel now that we have the EPDM database and search capability, our data can just reside in the project folders where it was conceived, and the EPDM will instantly locate the correct parts based upon whatever search criteria we apply  (we have a fairly rigid description process).  Designers would just reference parts and assemblies out of whatever project folders they need, all across the vault.

       

      Project folders (directory structures) can be named after a product, project, customer, or even work order number.  And, they can become convoluted as the years tick by and we make revisions, mods, new models, etc.

       

      This approach makes me very nervous.  I on the other would prefer to move the files out during a workflow into a much more structured environment, and out of the project folders.  It just feels like the right thing to do, but yet from a purely technical viewpoint, I'm not so sure I have a lot of good reasons for doing it.

       

      I was just wondering how other successful users are managing their CAD files within the vault.

       

      Greg,

        • Re: EPDM Implementation Advice
          Adrian Velazquez

          Greg, the existance of EPDM itself is partly based on the need/want of users to NOT have to move files around! Workflows and Search Cards are the functionality to do this.  EPDM is a Database systems so the Folder structure you see in part is just an "Interface" to the users and to apply further controls/automation. I would push for a better developed Workflow and Customized Search Cards. 

           

          PS:  10K files per directory.... yeah no thanks.

            • Re: EPDM Implementation Advice
              Asdfa Afsdaff

              "PS:  10K files per directory.... yeah no thanks."

               

              Can you elaborate on this?  We've been discussing directory structure lately and this subject came up.  I know that 15 years ago, large directories created major performance problems, but I'm not convinced that this is still true.

                • Re: EPDM Implementation Advice
                  Adrian Velazquez

                  Computer Performance might have been solved, but user performance will never be.  Why would anyone want to make their users scroll thru 10K Files!? Might as well just drop everything in the root of the vault.

                    • Re: EPDM Implementation Advice
                      Asdfa Afsdaff

                      Thanks for your input, Adrian.  I guess our experiences have been different.  I would much rather have to find a file in a large pile than have to locate the pile first, then find the file.  I've been doing this recently and it's really time consuming when the location in the directory structure is unknown.  On the other hand, I can go to my large directory, type in a part number and have it open in a couple of seconds.  Thanks again for your recommendation.

                        • Re: EPDM Implementation Advice
                          Greg Thomson

                          Hi Asdfa, just remember, if your within EPDM and you type that same part number into a search card... it probably won't even take a couple seconds to find.  And, it won't matter how many piles of files you have.

                           

                          Our 10k directories have served us well, but I'm not so sure they're needed anymore.  The key is more so in the Properties and Search Cards devised.

                           

                          As for our 10k directories, they take 15-30 seconds to open within Explorer, so that's a non-starter for us.  We may have a local Archive Server, but unfortunately have a remote EPDM Server.  And all file inquiries go through headquarters (EPDM Server) first.  So, whatever you decide, I wouldn't go much past a couple thousand files per directory.

                      • Re: EPDM Implementation Advice
                        Brian McEwen

                        Adding to what Adrian said...

                        I think one idea for folders is to support multiple methods of getting to the files. Huge numbers of files in a single folder does not support browsing. It is possibly fine for searches, depending on what info you have on your data cards. You can probably always search by part number, but if you don't have project/type/product info on the cards, and you don't have it on folders, you can't search or browse by that info.

                         

                        If there is a way to organize and group files that makes sense to your users then that is beneficial (e.g. a folder for Bolts with a sub-folder for Socket Head Cap Screws).  When to make a folder for a type of bolt depends on how many of that type you have.

                         

                        For SolidWorks it is robust to have all the files for an assembly in one folder.  But this is not necessary, especially with EPDM, but there are ways it still comes into play: importing a new assembly, broken links (which do still happen occasionally with EPDM), and duplicate filenames. Moving everything out from the assembly folder means you are relying on other methods (ERP, SolidWorks links, EPDM where-used, drawings, etc) to know that widget B2 goes with assembly alpha1.  In our case we make products with names, and so it makes sense to group the sub assemblies for the products in sub folders. If there are shared components across our machines, the older one will usually have the shared components... unless it is something like a bolt, then we have a separate common folder for those.

                         

                        As far as folders getting messy over the years - I think you need to accept that to some extent. There is not much you can do that won't need some maintenance. Change and different interpretations are inevitable - a PDM system makes it significantly easier to clean up the folders (for linked CAD files). in our case the vault is young, so still pretty clean.

                    • Re: EPDM Implementation Advice
                      Charley Saint

                      Hey Greg,

                       

                      I've seen many ways to organise the vault, and like most things in EPDM, it completely depends on how you use your vault. If you've got many different groups that don't need to see what the others are up to, or you've got consultants coming in that don't need to see everything else your company is working on then well defined project folders are the way to go. If you need to control workflows, datacards or notifications based on folders, then you should define them based on that. The search tool frees you to setup the vault however you want, so try to get as much functionality out of that setup as possible. But like Adrian said, 10k files per directory is pretty bad...

                      • Re: EPDM Implementation Advice
                        Jim Sculley

                        I've posted this elsewhere in the past but I'll add it here because I think it is relevant.  We operate more or less exactly as you do.  Project based, but at some point the parts, asemblies and drawings get part numbers.  Also, many of our projects use parts and such from other projects.  We did it this way prior to EPDM, so when we added EPDM we decided to keep the process the same but leveraged EPDM to make things faster and more accurate:

                         

                        I wrote an add-in to handle the part number assignment.  I wanted the process to be a simple and error-free as possible for the users.  It was also written with the goal of eventually being able to acquire part numbers directly from our ERP system (Oracle Applications).

                         

                        When a part or assembly design is complete and detailed, the user performs a 'Submit for Release' transition on the part or assembly only.  The drawings area handled automatically.  If the variable ORACLE_ITEM_NUMBER is not a part number (6 numerical characters) an automatic transition sends the file to an Assigning Oracle Number state.  My addin is looking for files that enter this state at which point it pops up a form asking the user to enter the part number.  The user must  then create a new number in the Oracle system (this is the part I intend to automate, thus eliminating this step).   The user then enters the Oracle number in my form and the add-in then completes the processing.  This processing involves renaming the part or assembly to match the Oracle number and moving it to a new directory, organized by part number.  The add-in will then process the drawing as well, renaming it and moving it.  If the released file is an assembly, the children will be processed as well, with a form popping up each time a part number is required. The last step is to generate a PDF of the drawing and putting it in a Public directory where it is available for other groups.

                         

                        Jim S.

                        • Re: EPDM Implementation Advice
                          Michael Kafka

                          Hi Greg,

                           

                          I understand where you are coming from on this. It is tough to balance the desire to move files into a traditionally structured folder hierarchy and just leaving them wherever they initially exist and leveraging search cards.

                           

                          The great thing about EPDM is that you have options. One option you may want to consider would be to copy the file and paste the file as "shared" to wherever you want it to go once it progresses out of the project phase.

                           

                          By doing this, you will leave the original file where it was initially saved (in a project folder) and an instance of the same file will be created where you shared it to. Modifications to one or the other of these instances will affect all other instances. This way you can have the file in two places and have both files current. People who would like to leverage search cards may do so and find the file in either place while others who would like to navigate a traditional folder hierarchy may do so as well. Sure it is some more work than just leaving the file where it is and using the search cards, but if it is important to you to have it both ways then this might be something you want to explore.

                           

                           

                          I hope this helps you. Good luck with EPDM.

                           

                          Best regards,

                           

                          Mike K.

                            • Re: EPDM Implementation Advice
                              Brian McEwen

                              I cannot speak in an informed way about shared files, but they seem messy. I heard some stories about them that scared me off (don't remember exactly what they were)...  And they just don't seem necessary, why not just use the one copy?   (yeah kinda nice for browsing)

                                • Re: EPDM Implementation Advice
                                  Greg Thomson

                                  I haven't come across a specific need for shared files, so I've been able to avoid them thus far.  Little nervous about the thought of duplicate files all over the place whereby an EPDM search will reveal multiple hits.  Possibly confusing the user.

                                   

                                  We have a large body of Inventor 2010 data however, and the redraw speed gets extremely slow as the number of directories to search thru for complex assemblies increases.  (Hence our 10k file directories mentioned in the beginning.).  Shared copies in this instance could help minimize or even eliminate the number of directories needing to be scanned for files.  I don't believe SolidWorks suffers from the same performance hit.  I also believe the performance hit comes from accessing network directories, which will no longer be the case with the EPDM cache.  Everything will be local.

                                    • Re: EPDM Implementation Advice
                                      Adrian Velazquez

                                      Greg, I think your missing the point that EPDM is a Database driven software. Shared files are NOT duplicate files, and Searches are performed against the DB not the folder structure per say. Folder Structure limitations are inherited from Windows Explorer (since it's the interface), but don't necessarily translate to DB limitations.

                                        • Re: EPDM Implementation Advice
                                          Greg Thomson

                                          I understand.  Think my only comment was an EPDM search will hit the (single) DB record, but then render every shared copy of the file in the result set displayed in Explorer.  So from the users perspective it might become a little confusing.  I probably could have chose my words a little better.

                                           

                                          Thanks,

                                            • Re: EPDM Implementation Advice
                                              Adrian Velazquez

                                              Yeah, users ask all the time when they see this, I always just explain that both locations are valid in terms of opening/referencing a file. The only downside I see with them is that the  cache builds up faster. I wouldn't automate the process of Sharing, but is a good resource when a Users gets into a mode where he MUST see a file on a specific folder.

                                                • Re: EPDM Implementation Advice
                                                  Ryan McVay

                                                  I agree with Adrian as I fight this battle all the time. EPDM is database driven. The database is being searched for the system "id" file location and retrieves the data from the archive server. Getting the user to understand they are searching a database can be difficult, especially since the EPDM interface is designed on top of file explorer. Telling a user that a folder is database record is fun. The contorted confused look on their faces is worth it!

                                                   

                                                  But something to remember about shared files is that you are technically duplicating a SQL record. So instead of duplicating files around your system you are duplicating the SQL records that point back/"linked" to the original record. And yes that can be a real pain and nightmare if something goes wrong along the way.

                                        • Re: EPDM Implementation Advice
                                          Tim Webb

                                          Greg, +1 vote for shared files.

                                           

                                          You can deploy a smaller datacard in the shared folder and limit permissions to a very specific set of users...like vendors, supply chain, or production. It also maintains separate caches so this can be both a good thing and a bad thing. Good if you tweak permissions just right so the groups that see the original file don't see the shared file and vice versa. Bad if you don't manage permissions well. Then the searches are crisp, without extra files appearing, and without creating confusion. You can also destroy the shares if they are no longer needed and the share is stopped.

                                           

                                          FYI: It may or may not help on this thread but check the "Downloads" section of my site for the "WhereShared" addin. I wrote it to show users all the locations a file is shared to in a pop up window. If it works, great! It was MY idea! If it doesn't work...bummer, it was Charley Saint's idea OH, it's free too

                                           

                                          Hope this helps,

                                          Tim CEPA

                                            • Re: EPDM Implementation Advice
                                              Michael Kafka

                                              Well said Tim!

                                               

                                              I will agree with everyone above that shared files can be a bit messy. They are not for everyone in every situation, but if you set up permissions correctly as Tim mentioned, you can avoid confusion.

                                               

                                              Another method that you could use to avoid confusion and not mess with permissions would be to make custom search cards for different groups that have a default directory set to search in without prompting the user. This way you can leave permissions as they need to be (i.e. someone needs to access the production directory and the project directory) but they can select one or the other search card depending on how they want to view the design data.

                                               

                                              Here's an example:

                                               

                                              One search card is called "production files search". It has a default value set for Name of "C:\My-Vault\Production\*" (notice the asterisk at the end).

                                               

                                              Another search card that looks exactly the same is called "project files search". It has a default value set for Name of "C:\My-Vault\Projects\*" (notice the asterisk at the end).

                                               

                                              Let's say you have a user named "Bob", who is a manager in the group called "Managers". The group "Managers" has permission to use both search cards.

                                               

                                              Scenario 1: Bob wants to find files and similar ones based on the project it was started from so he goes to the "project files search" and types in a description and searches. It returns a single line for "My_File.slddrw" that exists in only that path. He can now look at where it is located and find other files he needs from the same project.

                                               

                                              Scenario 2: Bob wants to find files and similar ones based on where it has been placed with similar products in the approved production folder so he goes to the "production files search" and types in a description and searches. It returns the same single line for "My_File.slddrw" that has been shared to the production folder for similar products.

                                               

                                              In either case he sees the same file only once in the search. This gives old Bobby flexibility to view the original folder structure and hierarchy of the project folder, or to look at it from a point of view of where does it belong amongst similar products in the production folder.

                                               

                                              This may seem like a lot of work but it really isn't. Once the search cards are set up, Bob opens whichever search he wants from the root folder, types in what he is looking for in the appropriate fields, and hits go. The rest is done for him behind the scenes.

                                               

                                              I do this type of thing all the time here at my company because I have a lot of technophobes who get easily confused on a computer....especially when you start talking about databases. So I do this to avoid the confusion and mistakes.

                                               

                                               

                                               

                                              BTW Tim Webb , you don't need an addin to find the other locations a file has been shared to. Simply right click the file, click properties, and click the "links" tab. Voila! A handy list of every other location the file is shared too. So it's a good idea....but EPDM beat you too it.

                                               

                                              I hope this helps everyone!

                                               

                                              Best regards,

                                               

                                               

                                              Mike K.

                                                • Re: EPDM Implementation Advice
                                                  Ryan McVay

                                                  This is interesting and I hope that it will work in my situation. Here is what we have going on -using EPDM 2013. I have a vault that is dedicated solely to the Sales and Marketing group for their product information. This is a document management system for them- no SW data. This vault is used by the sales team during the quoting and submittal processes. The CRM system has custom automation tools  that read the EPDM item "containers" (as we call them) and displays back a filtered list of documents inside of the CRM tool that they then pick, modify (on the fly in a sql blob format), package and attach (as a combined pdf file) to the quote and account inside of the CRM for quote versioning and communication tracking.

                                                   

                                                  This vault is also setup with search cards and "folder" structure. This is setup so that the sales person doesn't need to generate a bogus quote to find documentation. But the sales person does need to know what they are looking for (a big challenge even with some robust multi-key word searching). We have several product lines that share common documents like paint color charts, LEED information, etc. We attempted to use shared files but it only confused the owners of the documents (because they couldn't determine which "location" was the original file and which we shared files to check out. Based on the Since the search routines would find the documents in both locations we were unable to use the shared files function. We were also seeing some difficultly when we populated our items and a user accidentally used a shared file.

                                                   

                                                  We have several groups of users. Sales, DriveWorks, Product Managers, Engineering, Mfg, Purchasing, Partner (web portal access via the CRM tools).

                                                  7-1-2015 9-15-26 AM.png7-1-2015 9-20-11 AM.png

                                                  • Re: EPDM Implementation Advice
                                                    Tim Webb

                                                    Actually I wrote it 5 years ago out of pure necessity. I am not certain but I don't think that the links existed at EPDM 2010...or it wasn't easily found.

                                                    • Re: EPDM Implementation Advice
                                                      Adrian Velazquez

                                                      Another Layer of Control I've implemented is using Variables to control access/visibility of files.  i.e. I create a variable called "PartType" or "DocType" then you can create Search Cards that filter files with the proper value, Regardless of State or Folder Location

                                                • Re: EPDM Implementation Advice
                                                  Greg Thomson

                                                  Thanks for all the great advice people!  (Still hoping there's more to come).

                                                   

                                                  Greg,

                                                    • Re: EPDM Implementation Advice
                                                      Gary Radish

                                                      Greg,

                                                       

                                                      The best thing about EPDM is it is customizable.  Review all your processes and procedures and make EPDM work best for your company.  Have custom Add-ins written.  Create a CCB for development tasks.  Sit down with your users they are using the system most of us admins have to make the system work for them not for you.  You definitely have to understand the system but you are supporting your user community do not handicap them by having a hard line mentality of we have always done it that way so we are going to continue it that way.  I keep evolving EPDM and what it can do for my user base.  Sometimes that means grabbing more control as an admin and at times loosening the rains.  If you are implementing this tool make it best for the user community and not for the admin (you).

                                                       

                                                      Gary