Для этого есть три дополнительные переменные, а именно:
Integer Advanced.ActivateSmartDelete = 3 "Updates other classes when deleting class/component [0 - no, 1 - ask, 2 yes (if possible)]";
Integer Advanced.ActivateSmartRename = 3 "Updates other classes when renaming component [0 - no, 1 - ask, 2 yes, 3 - also script]";
Integer Advanced.ActivateSmartRenameClass = 3 "Updates other classes when renaming class [0 - no, 1 - ask, 2 yes, 3 - also script]";
Как показывают комментарии, установка этих переменных на 3 (с помощью окна «Команда Dymola» или, в более новых версиях Dymola, параметры, которые можно увидеть на скриншоте) приводит к автоматически создаваемым командам преобразования.
Dymola запишет команды преобразования в аннотацию модели вашей библиотеки. Они будут выглядеть примерно так:
from(
version="3.2.3",
to="Intermediate",
change(item=convertClass("Modelica.Blocks.Continuous.PID", "Modelica.Blocks.Continuous.PID_Controller"),
item=convertClass("Modelica.Blocks.Continuous.FirstOrder", "Modelica.Blocks.Continuous.PT1")))
Обратите внимание, что вам нужно немного преобразовать их, если вы хотите иметь скрипт преобразования в отдельном файле (вместо package.mo
вашей библиотеки).
В скрипте вышеприведенные команды будут выглядеть следующим образом:
convertClear()
convertClass("Modelica.Blocks.Continuous.PID", "Modelica.Blocks.Continuous.PID_Controller"),
convertClass("Modelica.Blocks.Continuous.FirstOrder", "Modelica.Blocks.Continuous.PT1")
так что те же команды, но без item=
и трейлинг ,
.