本文介绍了如何强制设计自动化打开分离的模型?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有关Design Automation API的问题。
是否可以创建删除工作共享的Design Automation脚本,以便Design Automation可以处理文件的其余部分,然后丢弃该文件。
例如,我是否可以使用Design Automation剥离工作集,然后继续导出文件的参数,而不保存工作共享版本?
另外,我已连接到Revit Excel导入和导出演示。
每当我配置AppBundle时,都会收到失败消息,如下图所示:
推荐答案
若要打开已丢弃工作集的工作共享模型,您需要:
- 从活动中的
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."
}
}
- 使用
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
打开工作共享模型。但是,只有当输入文件是中心文件时,这才会起作用。它不适用于具有工作集的本地文件,因为该文件归特定用户所有。 这篇关于如何强制设计自动化打开分离的模型?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!