Используйте Python для управления контентом в программном обеспечении «Enterprise Architect» из «sparx systems» - PullRequest
0 голосов
/ 11 июня 2019

В настоящее время я работаю с программным обеспечением Enterprise Architect для создания пакетов, диаграмм.

Можно ли работать в программном обеспечении Enterprise Architect с помощью скрипта Python? Некоторые примеры, такие как удаление и создание пакетов и диаграмм и т. Д. Если да, обратитесь к примеру кода или ссылки.

Ответы [ 2 ]

3 голосов
/ 12 июня 2019

Конечно, это не проблема.

import win32com.client
from singleton import Singleton

@Singleton
class Repository:
    def __init__(self):
        try:
            self.eaRep = win32com.client.Dispatch("EA.App").Repository
            models = self.eaRep.models
            done = True
        except Exception as e:
            print (e)
            done = False

(@Singleton можно найти в сети, но вы можете работать без него.) Затем в вашей основной программе вы можете получить доступ к хранилищу, как

rep = repository.Repository.Instance()
print rep.modules.getAt(0).name

и т.д.. Веселись

0 голосов
/ 14 июня 2019
import win32com.client

def open_repository(path, login, password):
    eaApp = win32com.client.Dispatch("EA.App")
    eaRep = eaApp.Repository
    if login:
        eaRep.SuppressSecurityDialog = True
        eaRep.OpenFile2(path, login, password)
    else:
        eaRep.OpenFile(path)
    return eaRep

пожалуйста, используйте OpenFile для открытия вашей модели.(OpenFile2, если в вашей модели включена защита)

...