Мне нужно изменить тип диаграммы большого количества диаграмм в моей модели Enterprise Architect. Изменения могут быть сделаны вручную, используя следующий вариант (который работает, как ожидалось):Enterprise Architect: изменить тип диаграммы (MetaType) по сценарию
Выберите схема - схема - Дополнительно - Изменить тип ...
Как я должен изменить много диаграмм я создал скрипт который ищет все соответствующие диаграммы и автоматически меняет тип. Я уже написал много сценариев JScript EA для изменения некоторых элементов моделирования. К сожалению, эта функция кажется недоступной по интерфейсу сценариев.
Мне нужно изменить «MetaType» объекта диаграммы. Но это только для чтения (см. http://www.sparxsystems.com/enterprise_architect_user_guide/12/automation_and_scripting/diagram2.html). Поэтому я получил ошибку.
var currentDiagram as EA.Diagram
currentDiagram = theDiagram
currentDiagram.MetaType = MY_DIAGRAM_METATYPE // ERROR
На следующем этапе я искал соответствующие функциональные возможности в Repository интерфейса (http://www.sparxsystems.com/enterprise_architect_user_guide/12/automation_and_scripting/repository3.html) и в интерфейсе проекта. Но я не нашел ничего подходящего.
Я использую Enterprise Architect 12.0.1215, и я использовал JScript.
Кто-нибудь уже пробовал это по сценарию? Я что-то пропустил? Есть ли другой подход к изменению типа диаграммы по сценарию?
Заранее благодарен!
Как отмечено в вопросе, атрибут Type для класса Diagram доступен только для чтения, поэтому для его изменения вам необходимо обновить его непосредственно в базе данных. – Uffe
Предлагаемое решение сработало для меня! Большое спасибо. Мне не нужно менять тип диаграммы, но только мета-тип (другой ЦРТ), и для этого достаточно изменить свойство StyleEx. Что касается соответствующих диаграмм, доступна пустая запись «MDGgm», я могу использовать следующий код: «currentDiagram.StyleEx = currentDiagram.StyleEx.replace (« MDGDgm =; »,« MDGDgm = »+ FSM_DIAGRAM_METATYPE +»; »)' –
@Uffe Спасибо. Я соответствующим образом обновил ответ. –