Автоматизация проектирования для Revit: неудачные инструкцииC#

Место общения программистов C#
Ответить
Anonymous
 Автоматизация проектирования для Revit: неудачные инструкции

Сообщение Anonymous »

Я пытаюсь автоматизировать задачу «Сохранить как облачную модель» с помощью Design Automation for Revit. Конечная цель — иметь возможность создавать проекты в ACC, при этом наши базовые файлы будут иметь возможность совместной работы в облаке. У меня есть наш «базовый файл», хранящийся в OSS, и при отправке рабочего элемента Revit завершился с ошибкой с кодом 4. При локальном тестировании моего плагина он работает нормально. Я приложил свой report.txt для устранения неполадок. Пожалуйста, дайте мне знать, если я смогу ответить на какие-либо вопросы. Спасибо!
Мой код:
namespace CEDACCPMP.DesignAutomation
{
public class InputParams
{
public string Region { get; set; }
public Guid AccountId { get; set; }
public Guid ProjectId { get; set; }
public string FolderId { get; set; }
public string ModelName { get; set; }
}

public class CreateCentralModelApp : IExternalDBApplication
{
private const string InputParamsFileName = "params.json";

public ExternalDBApplicationResult OnStartup(ControlledApplication application)
{
DesignAutomationBridge.DesignAutomationReadyEvent += HandleDesignAutomationReadyEvent;
return ExternalDBApplicationResult.Succeeded;
}

public ExternalDBApplicationResult OnShutdown(ControlledApplication application)
{
DesignAutomationBridge.DesignAutomationReadyEvent -= HandleDesignAutomationReadyEvent;
return ExternalDBApplicationResult.Succeeded;
}

public void HandleDesignAutomationReadyEvent(object sender, DesignAutomationReadyEventArgs e)
{
try
{
if (!File.Exists(InputParamsFileName))
{
e.Succeeded = false;
return;
}

string jsonContent = File.ReadAllText(InputParamsFileName);
InputParams parameters = JsonConvert.DeserializeObject(jsonContent);

if (parameters == null)
{
e.Succeeded = false;
return;
}

Application rvtApp = e.DesignAutomationData.RevitApp;
Document doc = e.DesignAutomationData.RevitDoc;

if (doc == null)
{
e.Succeeded = false;
return;
}

if (!doc.IsWorkshared)
{
try
{
doc.EnableWorksharing("Shared Levels and Grids", "Workset1");
}
catch (Exception ex)
{
e.Succeeded = false;
return;
}
}

try
{
doc.SaveAsCloudModel(
parameters.AccountId,
parameters.ProjectId,
parameters.FolderId,
targetName);
}
catch (Autodesk.Revit.Exceptions.RevitServerException rsEx)
{
e.Succeeded = false;
return;
}
catch (Exception ex)
{
e.Succeeded = false;
return;
}

e.Succeeded = true;
}
catch (Exception ex)
{
e.Succeeded = false;
}
}
}
}

Отчет:
[02/02/2026 20:51:43] Job information:
{
"CommandLine": [
"$(engine.path)\\\\revitcoreconsole.exe /i \"$(args[rvtFile].path)\" /al \"$(appbundles[CEDCreateCentralModelApp].path)\""
],
"Settings": {
"dasOpenNetwork": {
"value": "true",
"isEnvironmentVariable": true
}
},
"Id": "facb25d6d4b54f75b708395525d29e80",
"ActivityId": "HjuaWe4ABXMJGFpMIurnhMUdNKwwYJR4fKtAMbbtaHqO1vUY.CEDCreateCentralModelActivity+test",
"EngineId": "Autodesk.Revit_2025!120",
"Apps": [
"HjuaWe4ABXMJGFpMIurnhMUdNKwwYJR4fKtAMbbtaHqO1vUY.CEDCreateCentralModelApp!10"
],
"BoundArguments": {
"rvtFile": {
"localName": "input.rvt",
"url": "urn:adsk.objects:os.object:create-central-model-seeds/TEMPLATEARCH_CED2025",
"headers": {
"Authorization": "Masked:IIeL32tfMkqyYacMsGLk4thTDAU="
},
"verb": "get"
},
"paramsJson": {
"localName": "params.json",
"url": "data:application/json,{\"Region\":\"US\",\"AccountId\":\"Masked\",\"ProjectId\":\"Masked\",\"FolderId\":\"Masked\",\"ModelName\":\"TEMPLATEARCH_CED2025\"}",
"verb": "get"
},
"result": {
"localName": "result.txt",
"url": "urn:adsk.objects:os.object:create-central-model-seeds/results",
"headers": {
"Authorization": "Masked:IIeL32tfMkqyYacMsGLk4thTDAU="
},
"verb": "put"
}
},
"Quotas": {
"limitProcessingTimeSec": 10800,
"limitTotalUncompressedAppsSizeInMB": 5000
}
}
[02/02/2026 20:51:43] Starting work item facb25d6d4b54f75b708395525d29e80
[02/02/2026 20:51:43] Start download phase.
[02/02/2026 20:51:43] Start downloading input: verb - 'Get', url - 'urn:adsk.objects:os.object:create-central-model-seeds/TEMPLATEARCH_CED2025'
[02/02/2026 20:51:43] Embedded resource [{"Region":"US","AccountId":"96cf45ab-60be-4118-8ab1-81a8b019d734","ProjectId":"2e64f945-c761-4f40-88c4-44d50b46c22f","FolderId":"urn:adsk.wipprod:fs.folder:co.K_1B8xa5RlinmWoWdyITAw","ModelName":"TEMPLATEARCH_CED2025"}] is saved as a file in 'Unicode' at: 'T:\Aces\Jobs\facb25d6d4b54f75b708395525d29e80\params.json'.
[02/02/2026 20:51:47] End downloading file. Source=urn:adsk.objects:os.object:create-central-model-seeds/TEMPLATEARCH_CED2025,LocalFile=T:\Aces\Jobs\facb25d6d4b54f75b708395525d29e80\input.rvt,BytesDownloaded=62058496,Duration=3643ms
[02/02/2026 20:51:47] End download phase successfully.
[02/02/2026 20:51:47] Start preparing script and command line parameters.
[02/02/2026 20:51:47] Command line: [ /i "T:\Aces\Jobs\facb25d6d4b54f75b708395525d29e80\input.rvt" /al "T:\Aces\Applications\1be7dc9c219d848cfa07857d368ec532.HjuaWe4ABXMJGFpMIurnhMUdNKwwYJR4fKtAMbbtaHqO1vUY.CEDCreateCentralModelApp[10].package"]
[02/02/2026 20:51:47] End preparing script and command line parameters.
[02/02/2026 20:51:47] Start script phase.
[02/02/2026 20:51:47] Start Revit Core Engine standard output dump.
[02/02/2026 20:51:48] ====== Revit is running: revitcoreconsole ======
[02/02/2026 20:51:48] Current Exe path: T:\Aces\AcesRoot\25.0\coreEngine\Exe\revitcoreconsole.dll
[02/02/2026 20:51:48] Echoing command line args:
[02/02/2026 20:51:48] 0:/i
[02/02/2026 20:51:48] 1:T:\Aces\Jobs\facb25d6d4b54f75b708395525d29e80\input.rvt
[02/02/2026 20:51:48] 2:/al
[02/02/2026 20:51:48] 3:T:\Aces\Applications\1be7dc9c219d848cfa07857d368ec532.HjuaWe4ABXMJGFpMIurnhMUdNKwwYJR4fKtAMbbtaHqO1vUY.CEDCreateCentralModelApp[10].package
[02/02/2026 20:51:48] 4:/isolate
[02/02/2026 20:51:48] 5:HKEY_CURRENT_USER\SOFTWARE\AppDataLow\Software\Autodesk\CoreUser\WorkItem_facb25d6d4b54f75b708395525d29e80
[02/02/2026 20:51:48] 6:T:\Aces\Jobs\facb25d6d4b54f75b708395525d29e80\userdata
[02/02/2026 20:51:48] Selected Revit\RCE install Path: (from app.config)
[02/02/2026 20:51:48] Resolving location of Revit/RevitCoreEngine installation...
[02/02/2026 20:51:48] Loading RCE ....
[02/02/2026 20:51:52] Running user application....
[02/02/2026 20:51:52] Found an addIn for registration: CreateCentralModelApp.addin
[02/02/2026 20:51:52] Language not specified, using English-United States(ENU) as default.
[02/02/2026 20:52:24] Get RCE: (VersionBuild) 25.3.0.46 (VersionNumber) 2025 (SubVersionNumber) 2025.3
[02/02/2026 20:52:24] RESULT: Failure - Result of running user app is failure
[02/02/2026 20:52:24] Finished running. Process will return: TestError
[02/02/2026 20:52:24] ====== Revit finished running: revitcoreconsole ======
[02/02/2026 20:52:24] End Revit Core Engine standard output dump.
[02/02/2026 20:52:24] Error: Application revitcoreconsole.exe exits with code 4 which indicates an error.
[02/02/2026 20:52:24] End script phase.
[02/02/2026 20:52:24] Error: An unexpected error happened during phase CoreEngineExecution of job.
[02/02/2026 20:52:24] Job finished with result FailedExecution
[02/02/2026 20:52:24] Job Status:
{
"status": "failedInstructions",
"reportUrl": "https://dasprod-store.s3.us-east-1.amaz ... Signature=",
"activityId": "HjuaWe4ABXMJGFpMIurnhMUdNKwwYJR4fKtAMbbtaHqO1vUY.CEDCreateCentralModelActivity+test",
"stats": {
"timeQueued": "2026-02-02T20:51:43.7127504Z",
"timeDownloadStarted": "2026-02-02T20:51:43.8187382Z",
"timeInstructionsStarted": "2026-02-02T20:51:47.5767114Z",
"timeInstructionsEnded": "2026-02-02T20:52:24.3533185Z",
"bytesDownloaded": 62058714
},
"id": "facb25d6d4b54f75b708395525d29e80"
}


Подробнее здесь: https://stackoverflow.com/questions/798 ... structions
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»