У Enterprise Architect есть способ генерировать документацию в HTML / RTF / и т. Д. которые вы могли бы опубликовать, но вы должны использовать его графический интерфейс, чтобы сделать это вручную. Если у вас есть файлы * .eap на сервере CVS / Subversion, было бы полезно иметь сценарий, который будет ежедневно проверять последнюю версию и публиковать ее на веб-сервере. Насколько мне известно, у EA нет утилиты командной строки для этой цели. Я обнаружил, что с помощью его COM-интерфейса можно автоматизировать практически все, но это означает, что для этого необходимо написать небольшую программу. Есть идеи о самом простом / чистом способе сделать это (без необходимости писать код, если это возможно)?
Как автоматизировать создание вывода HTML в Enterprise Architect
Ответы (2)
Боюсь, вам нужно будет написать код, но не более десятка строк или около того. Вы захотите вызвать функцию Project.RunHTMLReport () - быстрый поиск «RunHTMLReport» в файле справки EA подскажет вам, какие параметры ему нужны, а поиск на форуме веб-сайта Sparx найдет вам один или два примера.
person
chimp
schedule
23.10.2008
Спасибо, шимпанзе, это было проще, чем я думал. В Java:
class EADump
{
public static void main(String[] args)
{
org.sparx.Repository r = new org.sparx.Repository();
System.out.println("Repository: " + args[0]);
System.out.println("Package: " + args[1]);
System.out.println("Output: " + args[2]);
r.OpenFile(args[0]);
r.GetProjectInterface().RunHTMLReport(args[1], args[2], "GIF", "<default>", ".html");
r.CloseFile();
}
}
person
Fabio Ceconello
schedule
24.10.2008
Из stackoverflow.com/users/486534/jeff: 1-й аргумент - это PackageGUID, как его вернуть? Откуда этот параметр?
- person Fabio Ceconello; 26.10.2010
Я только что заметил одну вещь: если файл EAP или пакет не существует, RunHTMLReport не сообщит вам: ни сообщения об ошибке, ни исключения, ничего. Кроме того, мне не нравятся относительные пути. Наконец, последний аргумент (вывод) - это путь. Если вы укажете путь, который не существует или недействителен, он тоже ничего не сделает.
- person Fabio Ceconello; 26.10.2010
Справа от EA: Чтобы получить GUID, щелкните правой кнопкой мыши диаграмму, пакет или элемент в Диспетчере проектов и выберите пункт контекстного меню «Копировать ссылку».
- person Pedro Dusso; 22.08.2013
Что ж, я все еще получаю Неуместный аргумент. сообщение. Любая идея?
- person Pedro Dusso; 22.08.2013
Ну, мне не хватало {} вокруг GUID пакета ... Он должен быть с ними - {E9EB7335-C586-4bc2-84E8-CFAD6A856362}.
- person Pedro Dusso; 22.08.2013
Кто-нибудь пробовал запустить это как запланированное задание? Кажется совершенно невозможным. Есть технический документ, объясняющий, как запустить его как интерактивную службу, но я хочу, чтобы он запускался полностью без присмотра из запланированной задачи, когда пользователь, от имени которого она запускается, не вошел в систему.
- person Anttu; 22.12.2014