You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改SolidWorks PDM PDF转换脚本,按文件名前缀指定存储路径

修改SolidWorks PDM 2021转换PDF任务脚本,按文件名规则指定输出路径

核心需求实现逻辑

针对xxx-xxx.slddrw格式的工程图文件,提取文件名前三位数字,将生成的PDF文件保存到对应数字命名的文件夹中,需修改任务脚本覆盖默认的主输出路径。

具体脚本修改步骤

  1. 定位脚本关键位置
    打开SolidWorks PDM管理工具,找到目标“转换为PDF”任务,进入脚本编辑界面,定位到ProcessTask方法内、执行转换操作之前的代码段。

  2. 插入路径处理代码
    加入以下代码,实现路径自定义逻辑:

    ' 获取当前处理文件的完整名称(含后缀)
    Dim file As IEdmFile5 = vault.GetFile(fileId)
    Dim fileName As String = file.Name
    
    ' 提取文件名前三位数字(适配xxx-xxx.slddrw格式)
    Dim folderPrefix As String = Left(fileName, 3)
    
    ' 方式1:基于任务默认主输出路径创建子文件夹
    Dim defaultOutputPath As String = task.GetOutputPath(fileId, 0)
    Dim targetOutputPath As String = System.IO.Path.Combine(defaultOutputPath, folderPrefix)
    
    ' 方式2:使用固定根路径(替换为你的实际根路径)
    ' Dim rootOutputPath As String = "D:\PDM_PDF_Archives\"
    ' Dim targetOutputPath As String = System.IO.Path.Combine(rootOutputPath, folderPrefix)
    
    ' 检查目标文件夹是否存在,不存在则创建
    If Not System.IO.Directory.Exists(targetOutputPath) Then
        System.IO.Directory.CreateDirectory(targetOutputPath)
    End If
    
    ' 覆盖任务的主输出路径
    task.SetOutputPath(fileId, 0, targetOutputPath)
    
  3. 添加格式校验(可选)
    为避免不符合命名规则的文件出错,可加入正则校验逻辑:

    Dim namePattern As New System.Text.RegularExpressions.Regex("^\d{3}-.*\.slddrw$")
    If Not namePattern.IsMatch(fileName) Then
        ' 不符合规则时,沿用默认输出路径
        task.SetOutputPath(fileId, 0, defaultOutputPath)
        Exit Sub ' 或执行其他异常处理
    End If
    
  4. 保存并测试
    保存修改后的脚本,提交任务配置,测试运行转换任务,验证PDF文件是否保存到指定数字文件夹中。

内容的提问来源于stack exchange,提问作者CBIBI2024

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 02:25:00