【问题标题】:Running the VBScript in Enterprise-Architect via command line通过命令行在 Enterprise-Architect 中运行 VBScript
【发布时间】:2019-07-09 16:27:32
【问题描述】:

我编写了一个 VBScript,它将导出 excel 文件(包含一些元素信息)。但是每次我都需要打开EA来生成excel。

出于 CI 目的,我需要从命令行运行脚本。是否可以通过命令行运行企业架构师内部的脚本?

【问题讨论】:

  • 而不是添加问题的答案,您应该将其发布为自己的答案。这也可以给你一些支持。

标签: vbscript enterprise-architect


【解决方案1】:

是和不是。为了访问 EA 的 API,您需要有一个正在运行的 EA 实例。您可以从 EA 外部访问它,例如

Dim Repository
Set EAapp = GetObject(, "EA.App") 
Set Repository = EAapp.repository

或者您只使用 EA 本身的脚本...

可以绕过 API 直接使用 EA 的数据库。但那是另一回事。

【讨论】:

  • 我正在运行 EA 实例,我尝试通过 VBS 运行上述行。但是我在 Dim Repository As EA.Repository 行中遇到编译错误。我需要为 EAP 导入任何包吗?
  • 错误:eap.vbs(9, 11) Microsoft VBScript 编译错误:预期语句结束
  • Expected end of statement 是你需要自己弄清楚的东西,拜托...
  • 一个快速谷歌弹出这个:stackoverflow.com/questions/23251045/…
  • 感谢您的回复。我不太了解VBS,但是您提供的链接对我很有帮助...
【解决方案2】:

解决方案

来自qwerty_so answer的引用。

Option Explicit

On Error Resume Next

EaExample

Sub EaExample()   
  Dim App  
  Set App = GetObject(,"EA.App")
  dim currentPackage
  set currentPackage = App.Repository.GetPackageByGuid("{134E96EA-623E-410e-A13F-73DDDDA1E091}")
  MsgBox currentPackage.Name
 End Sub 

打开 EAP 实例并从命令行运行脚本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多