本文介绍了如何强制设计自动化打开分离的模型?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有关Design Automation API的问题。

是否可以创建删除工作共享的Design Automation脚本,以便Design Automation可以处理文件的其余部分,然后丢弃该文件。

例如,我是否可以使用Design Automation剥离工作集,然后继续导出文件的参数,而不保存工作共享版本?

另外,我已连接到Revit Excel导入和导出演示。

每当我配置AppBundle时,都会收到失败消息,如下图所示:

推荐答案

若要打开已丢弃工作集的工作共享模型,您需要:

  1. 从活动中的commandLine中删除/i选项。为您的输入参数指定一个硬编码的localName(比如input.rvt)。就像这样
{
  "alias": "prod",
  "activity": {
    "id": "YourActivity",
    "commandLine": [ "$(engine.path)\\revitcoreconsole.exe /al $(appbundles[YourBundle].path)" ],
    "parameters": {
      "rvtFile": {
        "zip": false,
        "ondemand": false,
        "verb": "get",
        "description": "Input Revit model",
        "required": true,
        "localName": "input.rvt",
      }
    },
    "engine": "Autodesk.Revit+2020",
    "appbundles": [ "YourName.YourBundle+label" ],
    "description": "Bundle description."
  }
}
  1. 使用DetachAndDiscardWorksets打开您应用包中的文件input.rvt,如下所示:
   ModelPath path = ModelPathUtils.ConvertUserVisiblePathToModelPath("input.rvt");
   var opts = new OpenOptions
   {
      DetachFromCentralOption = DetachFromCentralOption.DetachAndDiscardWorksets
   };
   var document = application.OpenDocumentFile(path, opts);

有关详细信息,请参考blog announcement和之前相关的stack overflow answer

默认情况下,(在blog announcement之后)如果commandLine中提供了/i选项,则Design Automation将尝试使用DetachAndPreserveWorksets打开工作共享模型。但是,只有当输入文件是中心文件时,这才会起作用。它不适用于具有工作集的本地文件,因为该文件归特定用户所有。

这篇关于如何强制设计自动化打开分离的模型?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-01 07:51