US$0.00
0

Tag: solidworks pdm

Why Serial Numbers and Folder Number Ranges Keep Your SOLIDWORKS PDM Vault Fast

Every PDM administrator eventually runs into the same argument. One camp says the vault is a database, so folders are irrelevant and you should just search for what you need. The other camp says folders matter, because the day the “LIBRARY” folder takes forty seconds to open, everybody notices. Both camps are right, and the resolution is not a compromise between them. It is a naming convention. The debate, as it actually plays out A thread on the MyCAD forum captures this perfectly. A user asked whether SOLIDWORKS PDM should use a minimalist structure with one big library folder, or many categorized folders. His reasoning was sound: search by number and by data card variables should find the file, so why maintain a tree at all? The problem was that his company had already tried it. They started with a single LIBRARY folder and split it into Assembly, Parts, Plans and Others precisely because “the loading when opening the LIBRARY folder was long.” Other users in the thread confirmed the pattern from their own vaults, with one noting that PDM “starts to have slowness and stability from 3000” files in a folder. Treat that figure as a field observation rather than a published limit. It still lines up with what most administrators see. Somewhere in the low thousands of files per folder, browsing stops feeling instant. The most interesting suggestion in the thread came from a user who proposed keeping a minimal tree indexed by numerical ranges, since every file in his vault already carried an 8-digit auto-generated number. That single idea is the subject of this article. Why folders still cost you something SOLIDWORKS PDM is a database-backed system, so it is tempting to assume the folder structure is cosmetic. It isn’t, because folders are what the client enumerates. When a user expands a folder in the local view, the client has to reconcile every child item in that folder: name, current version, local version, state, checked-out-by, locked status, plus whatever data card columns the administrator chose to display. That reconciliation happens over the network against the archive server and the SQL database, and it happens for every item in the folder, not just the one the user wants. Put ten thousand parts in one folder and you have created a request that is ten thousand items wide, triggered every time somebody clicks the folder. Add a cold cache, a remote site over a WAN, or a replicated archive, and the cost multiplies. Meanwhile the SQL side pays for it too. Folder-scoped queries, permission evaluation, and column population all scale with the number of children. Search, by contrast, is indexed and cheap. That is exactly why the “just search for it” camp has a point. It is also exactly why it doesn’t save you. Users still browse. New engineers browse, subcontractors browse, and everyone browses when they don’t know the number yet. Why category folders are the wrong fix Splitting LIBRARY into Parts, Assemblies and Drawings helps for about a year. Then the Parts folder is the new LIBRARY. Category-based structures have three structural weaknesses. They don’t bound growth. A category folder grows without limit. Nothing in the scheme tells you when to split it, so it gets split reactively, after the slowdown rather than before. They require judgment. Is a purchased weldment a Part or an Assembly? Is a fixture a Tool or a Component? Every ambiguous case is a decision, and different people decide differently. As one forum participant pointed out, category navigation only works when metadata is properly populated in the first place, and if the metadata is that good, you didn’t need the categories. They make files move. Reclassify a component and it changes folder. Folder-based permissions, folder-based workflows and anything downstream that cached a path now have to follow it. Categories are metadata. Your vault already stores metadata, and it stores it better than a directory tree can. The fix: serial numbers plus numeric range folders The alternative is to stop treating the folder as a taxonomy and start treating it as an address. Give every file a serial number from the PDM serial number generator. Then place it in a folder determined mechanically by that number, where the first digits define the bucket. This structure earns its keep in five ways. Serial numbers beat descriptive filenames A related habit is worth breaking at the same time: filenames like BRACKET-LEFT-REV-B-FINAL.SLDPRT. Descriptive filenames encode information that changes. Revisions change, descriptions get corrected, projects get renamed, and each of those events tempts someone into renaming the file. Renames in a CAD environment are exactly as expensive as they sound. A serial number encodes nothing but identity. The description lives on the data card, where it can be edited freely. The revision lives in the workflow, where it belongs. The number stays fixed from first save to end of life. That is what makes ERP integration, supplier packages and long-term traceability work, and what makes numeric range folders possible in the first place. The half everyone forgets: your exports Here is where most well-organized vaults quietly undo their own work. The vault is disciplined. The published output is not. PDFs, DXFs and STEP files land in one flat network folder because that’s what the export task was configured to do on day one. Two years later that folder has 40,000 files in it. Unlike the vault, it has no database in front of it, no indexed search, and no client-side caching. It is a raw Windows share being browsed by the shop floor, purchasing and your suppliers, all of whom navigate by folder because that is all they have. The performance argument that justified organizing the vault applies with more force to the export target, not less. Automating it with PDMPublisher This is why PDMPublisher exposes File number range as a path variable. In the Output section of the task properties, the Export Location is assembled from tokens rather than typed as a literal path: PDMPublisher evaluates that expression per file at publish time. Part 4127 publishes to …\Released\4000-4999\, part 7318 publishes to …\Released\7000-7999\, and the folders are created as needed. The practical effect is that your published output mirrors the discipline of your vault automatically. No scripts, no

Read More »

How to Get a Free PDMPublisher Trial License

PDMPublisher helps SOLIDWORKS PDM Professional users automatically generate, export PDF, DXF. It is a great alternative to the convert task and combine documents. You can request a free PDMPublisher trial license through the Blue Byte Systems online store.This article explains how to submit your request, install the software, and activate your trial. System requirements Before requesting a trial, confirm that your environment meets these minimum requirements: PDMPublisher requires SOLIDWORKS PDM Professional and does not support SOLIDWORKS PDM Standard. Request your free trial The seat pricing displayed on the product page is provided for reference only. You will not be charged for the trial request. Important: Before submitting your order, verify that the checkout total is US$0.00 and that the selected product is PDMPublisher (Trial). What happens after submitting your request? After submitting the order, you will receive a confirmation email containing instructions for downloading, installing, and activating PDMPublisher. Your request may need to be reviewed by Blue Byte Systems before the trial license is issued. Make sure the contact and company information provided during checkout is accurate. Install and activate PDMPublisher After receiving your trial license:

Read More »

Using Claude with SOLIDWORKS PDM through the PDMShell MCP Server

Most SOLIDWORKS PDM administrators are used to working through Windows Explorer, administration tools, scripts, and custom add-ins. These tools are powerful, but even a simple question can require several steps. For example: The PDMShell MCP Server provides another way to work with this information. It connects Claude to SOLIDWORKS PDM through PDMShell, allowing users to ask questions about their vault using normal language. What is MCP? MCP stands for Model Context Protocol. It provides a standard way for an AI application such as Claude to connect to external tools and data sources. Claude does not connect directly to the PDM database. Instead, it sends a structured request to the PDMShell MCP Server. PDMShell then performs the requested operation through the SOLIDWORKS PDM environment and returns the result. The basic flow is: Claude → PDMShell MCP Server → SOLIDWORKS PDM Vault This gives Claude access to specific PDM tools without requiring the user to write a command or API application for every request. A practical example In my test vault, I asked Claude:“Can you tell me how many files are in the Unreleased PDFs folder?” Claude used the PDMShell MCP Server to inspect the folder and returned the number of files. It also identified which files were checked in and which file was checked out. I could then follow up with: “Can you undo the checkout on the file ending in R_002?” Because Claude already had the context from the first request, I did not need to enter the complete file path again. This is where the connection becomes useful. It is not only a chatbot answering general PDM questions. It can use tools provided by PDMShell to retrieve current information from the vault and, when permitted, perform an operation. Why use natural language? PDMShell already provides commands for automating common PDM operations. The MCP Server adds a conversational layer on top of those tools. Instead of remembering the exact syntax of a command, a user can describe the result they need. Claude interprets the request, selects the appropriate PDMShell tool, and presents the result in a readable format. This could be useful for: It can also help administrators explore a problem before deciding what action to take. Permissions still matter Connecting Claude to PDM should not bypass the existing security model. PDMShell operates within the permissions of the logged-in PDM user. If that user cannot access a folder or perform an operation, the MCP Server should not provide a way around that restriction. Write operations also need to be handled carefully. Reading the contents of a folder is very different from deleting a file, changing metadata, or undoing another user’s checkout. For that reason, the server should expose only the tools that are required. Important actions should also be reviewed before they are executed. This does not replace PDM administrators The goal is not to let AI make uncontrolled decisions inside a production vault. PDM administrators still define the workflows, permissions, variables, naming rules, and automation requirements. Claude provides a simpler way to interact with the tools that have been made available through PDMShell. The administrator remains in control of what Claude can access and which operations it can perform. Where this can go next The first use cases are straightforward: search the vault, inspect folders, read file information, and perform controlled file operations. The more interesting possibilities come from combining several operations. A user could ask Claude to identify files matching specific conditions, summarize the results, and prepare the next action for approval. That could make routine PDM administration faster while still keeping the vault’s permissions and business rules in place. The PDMShell MCP Server is an early step toward making SOLIDWORKS PDM easier to work with through modern AI tools. It combines the automation capabilities of PDMShell with Claude’s ability to understand normal language and maintain context throughout a conversation.

Read More »

PDMShell vs. PowerShell: The CAD Admin’s Guide to Engineering Automation

If you work in engineering IT or CAD administration, you’ve likely spent hours trying to make different software systems talk to each other. When searching for ways to automate these clunky processes, two tools with confusingly similar names always pop up: PowerShell and PDMShell. They sound like variations of the same thing, but they aren’t. One is a massive tool built by Microsoft for managing entire corporate networks. The other is a sharp, niche utility built by Blue Byte Systems specifically for SOLIDWORKS PDM Professional. Let’s break down what they actually do, how they differ, and why you might end up using both. The easiest way to understand the difference is by looking at what they were built to control. PowerShell is for your entire operating system and cloud environment. PDMShell is strictly for your SOLIDWORKS PDM vault. Feature PowerShell PDMShell What does it control? Windows, cloud servers, and networks SOLIDWORKS PDM vaults only Who made it? Microsoft Blue Byte Systems Inc. How do you use it? Advanced programming (.NET objects) Simple text scripts (.pdmshell) Who is it for? IT Admins and DevOps Engineers CAD Admins and Data Managers How do you get it? Built right into Windows Download from pdmshell.com PowerShell is Microsoft’s heavy-duty automation framework. It is incredibly powerful because it doesn’t just read plain text; it understands actual data objects. If an IT admin needs to create 50 new user accounts in Active Directory, back up a server to the cloud, or update software registry keys across an entire department, they use PowerShell. The downside? It has a steep learning curve. Because it is a full programming language tied to Microsoft’s .NET framework, you need a decent grasp of coding logic and complex syntax to get anything done. PDMShell: The SOLIDWORKS Short-Cut. If you’ve ever tried to customize SOLIDWORKS PDM, you know that interacting with its API usually requires writing complex C# or VB.NET code in Visual Studio. For a CAD manager who just wants to get a job done, this is often overkill. That is why Blue Byte Systems built PDMShell. It acts as a friendly middleman for the complex PDM API. Instead of writing lines of heavy code, you write simple text scripts using straightforward, built-in commands like checkout, checkin, or addtovault. It plugs right into your existing PDM Tasks and Dispatch actions, letting you automate boring vault tasks without needing a degree in software engineering.

Read More »

Automate Weekly SOLIDWORKS PDM Check-Ins with PDMShell and Windows Task Scheduler

This article explains how to use PDMShell with Windows Task Scheduler to automatically check in files from a SOLIDWORKS PDM vault folder on a weekly schedule. PDMShell is a command-line tool for SOLIDWORKS PDM that allows administrator to run PDM operations from scripts. By combining PDMShell with Windows Task Scheduler, you can automate recurring PDM tasks such as logging in to a vault, navigating to a folder, searching for files, and checking in files. Before setting this up, make sure PDMShell is installed on the computer that will run the scheduled task. The computer must also have a local PDM vault view, and the Windows account running the task must have access to that vault view. The same user must also have permission to check in the files. In most SOLIDWORKS PDM environments, a user can only check in files that are checked out by that same user. If the files are checked out by another user, the scheduled task will not be able to check them in unless you have a controlled administrative process in place. Click on the Open button then click on Browse PDMShell.com scripts… Download the script called Check In All Files: When the download completes, please click Yes to confirm this dialog: PDMShell will load the downloaded script in the Visual Editor: If you click on the check-in box, you will the parameters of the command. In this instance, the command does a search for all checked out files recursively and check them into the vault. The check options configure the check-in operation.The script will eventually terminate the PDMShell application when done through the Exit PDMShell action: Before scheduling the script, test it manually from Command Prompt: Update the path to pdmcli.exe if PDMShell is installed in a different location. Once the script works manually, open Windows Task Scheduler and create a new task. On the General tab, use a name such as: Select the option to run whether the user is logged on or not. Also enable the option to run with highest privileges. The task should run under the same Windows account that has access to the vault view and owns the checked-out files. On the Triggers tab, create a weekly trigger. For example, you can run the task every Friday at 6:00 PM. On the Actions tab, create a new action using Start a program. Program/script: Add arguments: Start in: On the Conditions tab, review the power and network options. If the task runs on a workstation, make sure the machine is online and connected to the PDM archive server when the task starts. On the Settings tab, it is recommended to allow the task to be run on demand, run the task as soon as possible after a scheduled start is missed, stop the task if it runs longer than a reasonable time, and prevent a new instance from starting if the task is already running. For production usage, keep the script focused on a controlled folder instead of running it against the entire vault. For example: PDMShell and Windows Task Scheduler provide a simple way to automate recurring SOLIDWORKS PDM maintenance tasks. For production environments, always test the script on a small folder first and make sure the scheduled task runs under the correct Windows and PDM user. Few considerations:

Read More »

Automating Bill of Materials Extraction in SOLIDWORKS PDM Using the PDMShell BOM Command

Ride of the Valkyries Alert 🎼 — Don’t listen if you don’t enjoy Wagner. When you are managing complex assemblies inside SOLIDWORKS PDM, generating a bill of materials (BOM) is a routine task, but i’s also one of the most repetitive. This is exactly where the PDMShell BOM command becomes invaluable, eliminating manual exports and saving your from those small tasks quitely eat away engineering hours across large teams. PDMShell solves this problem with a simple but extremely powerful tool: the BOMCommand. The BOMCommand extracts a Bill of Materials directly from a SOLIDWORKS file in the PDM vault and exports it as a clean CSV file. It removes all manual steps by providing a scriptable way to generate BOMs using batch jobs, scheduled tasks, or command-line workflows. If you’ve ever needed fully automated downstream manufacturing data, ERP integrations, or repeatable export pipelines, this command is designed for exactly that.

Read More »
0
    0
    Your Cart
    Your cart is emptyReturn to Shop