LSPS documentation logo
LSPS Documentation
Model Instance Management

Model instances are runtime versions of models–executable modules with all their module imports. When you create a model instance, you "run a model". You can run multiple instances of a model possibly with different parameters to have the model instance adapt to different circumstances.

Each model instance holds a set of properties along with its context and context data. For detailed information on behavior of Model instances, refer to the GO-BPMN Model Language Guide.

You can temporarily stop the execution of a model instance or terminate it when required, update the model it is based on, and update its data.

You can also export the runtime data as a raw XML and import such data back.

Model Instance Listing

Listing Model Instances from the Management Perspective

To list the model instances on an LSPS Server in the Management Perspective, connect Designer to the LSPS Server and open the Management perspective: the list of modules is available in the Module Instances Management view.

ProcessesView.png
Model instances view
If the view is not displayed, go to Window > Show View > Module Instances

Note that you can copy the displayed model instance information with the Copy to Clipboard option in their context menu. To copy multiple model instances to the clipboard, select them and press Ctrl + C.

Listing Model Instances from Management Console

To list the model instances on an LSPS Server in Management Console, log in to the console and open the Model Instances page.

modelinstancesweb.png

Listing Model Instances from the Command Line

To list the model instances on the LSPS Server from the Command Line, use the modelInstanceList command.

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance ids, for example 8002 9000
--modelInstanceFile file with model instance ids
--filterModelId IDs of the models
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersionmodel version (supports ? and * wildcards)
--filterStatus models in the defined execution status (CREATED, RUNNING, SUSPENDED, FINISHED)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.

* required parameters

java -jar lsps-cli-<VERSION>-full.jar modelInstanceList --destination http://localhost:8080 --username admin --password admin --filterProps "my property" value "another property" "another value" --filterFrom "2017-10-31 12:14:00"

Example with a text file with model instance IDs

lsps-tools/cli-tools$ cat id.txt
18001
8000
lsps-tools/cli-tools$ java -jar lsps-cli-3.3.2039-full.jar modelInstanceList --destination http://localhost:8080 --username admin --password admin --modelInstanceFile ./id.txt
18001 2019-01-02 16:25:54 RUNNING [2004] mod - 1.0 (2019-01-02 16:25:54)
8000 2019-01-02 11:29:29 FINISHED [2004] mod - 1.0 (2019-01-02 16:25:54)
Done.

Model Run

When you run a model, a model instance based on the executable module a model instances is created. In the model instance, a module instance of the executable module and module instances of all its imported modules recursively are created. For more details, refer to section Model Instance in the GO-BPMN Language Guide.

Creating a Model Instance from the Management Perspective

To create a Model instance of an uploaded model from the Management perspective, do the following:

  1. Open the Model Instances view.
  2. Click the Create button in the view toolbar.
  3. Select one of the uploaded models and click Finish.
creatingmipds.png
The new model instance appears in the list of model instances in the Model Instances view.

Creating a Model Instance from Management Console

To create model instances of uploaded modules from Management Console, do the following:

  1. Open the Modules view.
  2. Select the executable modules.
  3. Click Run Model in the view toolbar.
  4. In the Run Model dialog box, optionally enter the description and add properties.
  5. Click Run.
runningmiweb.png
Model instances of the selected modules are created.

Creating a Model Instance from the Command-Line Tool

To create a model instance of an uploaded model from the Command-Line Tools, use the startModelInstance command.

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelName model name
--modelVersion model version
--modelId model ID
--properties model instance properties defined a list of key-value pairs

* required parameters

java -jar lsps-cli-<VERSION>-full.jar startModelInstance --destination http://localhost:8080 --username admin --password admin --modelName orderModule --properties customerType enterprises compliant yes
# alternatively:
java -jar lsps-cli-<VERSION>-full.jar startModelInstance --destination http://localhost:8080 --username admin --password admin --modelName orderModule --properties "customer type" "enterprises" "compliant" "yes"

Start Monitoring of a Model Instance

When restarting the server of the application, model instances need to be restarted as well. If your models make use of the start monitoring mechanism you can check if the instances started up correctly from all the management tools.

Checking the Start Status of a Model Instance from the Management Perspective

To inspect the start status of model instances from the Management perspective, display the Application Restart view: go to Window > Show View > Application Restart

Checking the Start Status of a Model Instance from Management Console

To inspect the start status of model instances from Management Console, log in to the console and open the Application Restart page.

Checking the Start Status of a Model Instance from the Command Line

To list the start status of model instances from the Command Line, use the appRestartInfo command.

Long Option Short OptionDescription
--host* -h host URL
--username* -u user name
--password* -p password
--onlyStatus returns only overall restarting status

* required parameters

cli-tools $ java -jar lsps-cli-<VERSION> appRestartInfo --onlyStatus
IN PROGRESS - SUCCEEDING

Model Instance Detail

A model instance holds a set of properties and details of its execution status. You can view the details and manage the data where possible.

Displaying a Model Instance Detail from the Management Perspective

To display the details of a model instance, double-click the model instance in the Model Instances view.

You can visualize the current status of Model instance resources in their live diagrams: Live diagrams are diagrams of Process resources as defined in their Model (process, goal, plan, or sub-process diagrams). Individual execution states are indicated by colors. Diagram legend can be displayed by clicking the legend button in the view toolbar.

lifegoaldiagram.png
Live Goal diagram with legend
Goals with an implicit hyperlink (indicated by a small arrow in the top-left corner of the icon on the canvas), plans, and sub-processes are clickable: click the element to open the respective linked live diagram.

viewlifediagramoftwoprocesses.png
Live diagram with multiple pages
To display a live diagram, open the respective model instance detail view and double-click the diagram icon under Module Instances or Model Update History in the tree (also available for old module instances from before model update if applicable).

To visualize the history of the execution flow on the live diagram, click the History button in the view toolbar: You can then use the slider at the bottom of the view to view the execution workflow.

livediagramwithexecution.png
Live diagram with execution history slider
You can change the status colors used to indicate the element execution status in live diagrams under Window > Preferences > Designer > Management > Appearance.

Using the buttons in the toolbar of the model detail, you can in addition do the following:

  • Show To-dos generated by the model instance (filter for the respective model instance ID is applied to the To-do List view and the view is focused).
  • Show Logs generated by the model instance (filter for the respective model instance ID is applied in the Logs view and the view is focused).
  • Suspend and Resume ( ) a model instance.
  • Finish a running or suspended model instance.
  • Perform actions of Model update.
  • Export a model instance into an XML.
  • Refresh the view content.
modelinstanceexplorer.png
Model instance detail view

Displaying a Model Instance Detail from Management Console

To display a model instance detail from Management Console, click the model instance ID on the Model Instance page in the Model Instance ID column.

To display a live diagram with the execution, do the following:

  1. On the menu, click Model Instances.
  2. On the right, click the ID of the model instance.
  3. Go to the Context tab.
  4. Locate the diagram in the tree and click Diagram in the Action column.

Important: The diagrams in the Management console do not display hyperlink, lane and pool diagram elements.

liveDiagram.png
Live Goal diagram

Manipulation of the Context of a Model Instance

The context of model instances can be generally changed in the Expression Evaluator: to change variable values, evaluate an assignment expression, for example, x:=2, to send a signal, use sendSignal(), for example, evaluate sendSignal(true, {thisModelInstance()}, "My signal object"), to deactivate a goal, use deactivate(), for example, deactivate({StockMaintainGoal}), etc. Refer to the Standard Library for further functions.

For some context manipulations, such as, change of variable value, goal activation and deactivation, and signal removal, dedicated management features are provided for convenience.

Expression Evaluation in a Model Instance

Evaluating Expressions in a Model Instance from the Management Perspective

To evaluate expressions using the current context values of a Model instance, use the Expression Evaluator in the Model instance detail:

  1. Open the Model instance detail view.
  2. Expand the Expression Evaluator section.
  3. In the tree, select the target context.

The context of the Expression Evaluator is set to the selected context: you can check the current context in the Expression Evaluator view.

The expressions can be executed in persistent or non-persistent mode:

  • if in non-persistent mode, the expression is evaluated in the model instance context;
  • if in persistent mode, the expression is evaluated and applied on the model instance context and on the database data if Shared Records are involved.

Information on the selected context is displayed in the Expression Evaluator: this is by default the Model instance context. To change the context to a Module, Process, Sub-Process context, select the respective element in the Model instance tree.

expressionEvaluator.png
Expression Evaluator

Evaluating Expressions in a Model Instance from Management Console

To evaluate an expression in the context of a model instance from Management Console:

  1. Display the Expression Evaluator tab (display the Model Instances view, click the desired model instance ID, and select the Expression Evaluator tab).
  2. Unselect Persistent to evaluate the expression without changing of the data in the database.

    If the Persistent flag is selected and the expression changes the value of an entity, for example, a global variable, the change is reflected on the runtime data, that is, the variable takes the newly assigned value.

  3. In Evaluation context, select the context you want to use.
  4. Type the expression in the input field of the evaluator.
  5. Click Evaluate.
evaluatingExpression.png
Evaluating an expression in different contexts and modes
To show errors, which occurred when attempting to evaluate expressions, select the Show Errors check box below the expression input field.

To remove evaluated expressions from the table, select the expressions and click the Remove (X) button in the upper-right corner.

Change of Variable Value

To change values of variables during execution, you can either enter an assignments expression, such as, myVar:="new value", in the Expression Evaluator of the model instance or change it in the context tree in the model instance detail.

Changing a Variable Value from the Management Perspective

You can change values of variables during execution either from the Expression Evaluator using assignments or from the Model instance detail.

To change the value of a variable in a running model instance, do the following:

  1. Open the Model instance detail view.
  2. Under Model Instance Explorer, expand Module Instances and the desired Module node (parent namespace of the context variable).
  3. Expand the Variables node and double-click the required variable. Variables of a standard library type cannot be edited.
  4. In the Update Variable dialog box, select:
    • Value to assign the variable a particular value;

      Note: Depending on the variable type (basic, record, collection, etc.), the Update Variable dialog box shows relevant buttons. For basic values, provide the desired value directly; make sure you follow the Expression Language rules. Collection and record values are edited recursively, that is, if you click Edit, there are gradually "split" in less complex values, until basic values are displayed.

    • Expression and type an expression to be evaluated and used as the variable value. Note the information on the declared type of the variable and the current actual type.
      editingcomplexvariable.png
      Updating variable

Changing a Variable Value from Management Console

You can change values of variables during execution either from the Expression Evaluator using assignments or from the Model instance detail.

To change the value of a variable of a running model instance from the Model Instance detail, do the following:

  1. On the menu, click Model Instances.
  2. On the right, click the ID of the model instance.
  3. Go to Context tab.
  4. Click the variable:
  5. For a variable, click Edit in the Action column.

Goal Activation and Deactivation

When a goal is deactivated, it becomes deactivated along with all sub-Goals and execution of any plans is halted; activation is the opposite action: a goal that is deactivated, achieved, or failed becomes ready and further execution can follow. The mechanism applies to both Maintain and Achieve Goals. Further information is available in the Modeling Language guide.

Deactivating and Activating Goals from the Management Perspective

Changing execution states of Goals during execution can help you to direct the flow of the execution. Note that you can activate or reactivate only achieved, failed, deactivated or inactive goals, and deactivate only ready or running goals.

To deactivate or activate a Goal, do the following:

  1. Open a Model instance detail view.
  2. Under Model Instance Explorer, expand Module Instances and the desired module node.
  3. Expand the respective process, then right-click a goal and select Deactivate or Activate.

Alternatively, you can call deactivate() and activate() functions from the Expression Evaluator of the model instance.

activatinggoal.png
Deactivating a Goal
You can activate or deactivate a Goal also from its context menu in a live diagram; mind that disabled goals cannot be deactivated or activated.

Deactivating and Activating Goals from Management Console

To deactivate or reactivate a Goal of a running model instance from the Model Instance detail, do the following:

  1. On the menu, click Model Instances.
  2. On the right, click the ID of the model instance.
  3. Go to Context tab.
  4. In the row with the Goal, click the Deactivate or Reactivate link in the Action column.

Alternatively, you can call deactivate() and activate() functions from the Expression Evaluator of the model instance.

Signals Removal

Removing Waiting Signals from the Management Perspective

To remove a waiting signal of a model instance from the Management perspective, do the following:

  1. Double-click the model instance in the Model Instances view.
  2. In the detail view, expand the Signal Queue node.
  3. Right-click the signal and select Remove.
removingsignalpds.png

Removing Waiting Signals from Management Console

To remove a waiting signal of a model instance, do the following:

  1. Display the Signal tab of the model instance (Model Instances model instance ID Signals).
  2. Select the signals you want to remove.
  3. Click the Remove (X) button in the upper right corner.

Export and Import of a Model Instance State

To amend the runtime data of running or suspended model instances in critical situations, you can export the state to an XML file, modify them in the XML and upload the XML with the new state.

You can modify only the context data of the model instance that are not persisted: if you modify data that is persisted in the database, including model-instance properties, such as, the initiator, the changes are ignored: it is only the context of the model instance that changes.

Exporting and Importing a Model Instance State from the Management Perspective

Important: Importing a corrupted model instance XML can cause fatal failure on the server.

To export and import a model-instance XML, do the following:

  1. Open the Model Instances view.
  2. Select the model instances.
  3. Right-click the selection and select Export Raw Data
  4. Select the target location, where to save the files.
  5. Edit the exported XML files. Do not modify data that is persisted in the database, including model-instance properties, such as, the initiator, the changes are ignored.

    If you changed such data, fix the XML and import it again.

  6. In the Model Instances view, right-click the model instance.
  7. Click Import Raw Data.
  8. Select the modified XML for the model instance. Note that on import, the data persisted in the database remains unchanged in the database, while the context of the model instance changes.

Exporting and Importing a Model Instance State from Management Console

Important: Importing a corrupted model instance XML can cause fatal failure on the server.

To export a model-instance XML and import it with modifications, do the following:

  1. Open the Model Instance Detail view: click the ID of the model instance in the Model Instances view.
  2. Click the Export Raw State button in the upper right corner.
  3. Save and edit the export XML file. Do not modify data that is persisted in the database, including model-instance properties, such as, the initiator, the changes are ignored.

    If you changed such data, fix the XML and import it again.

  4. Click the Import Raw State button in the upper right corner.
mc-miexport.png

Exporting and Importing a Model Instance State from the Command Line

To export a model-instance XML and import its modified version, use the export and import commands:

export exports a model instance as an XML file;

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance ids, for example 8002 9000
--modelInstanceFile file with model instance IDs
--location output location and file prefix (model instance IDs are appended to the prefix)

* required parameters

~/lsps-tools/cli-tools$ cat id.txt
18001
8000
~/lsps-tools/cli-tools$ java -jar lsps-cli-<VERSION>-full.jar export \
--destination http://localhost:8080 --username admin --password admin --modelInstanceFile id.txt
Exporting model instance #18001 to 18001.xml
Exporting model instance #8000 to 8000.xml
Done.

Importing a Model Instance State from the Command Line

Important: Importing a corrupted model-instance XML can cause fatal failure on the server.

importRaw imports a raw model instance state;

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance* model instance ids, for example 8002 9000
--file* file with model instance

* required parameters

Model Instance Suspend and Resume

When you suspend a running model instance, it becomes read-only and its execution is halted: All running elements become suspended including any to-do which become read-only. Suspended model instances can be resumed. More information on suspend is available in the GO-BPMN Modeling Language Guide.

Suspending and Resuming a Model Instance from the Management Perspective

To suspend a running Model instance or resume a suspended Model instance, do the following:

  1. Activate the Model Instances view.
  2. Select the instances you wish to suspend/resume.
  3. In the view toolbar, click Finish or Resume .

On detailed behavior of Model instances, refer to GO-BPMN Model Language User Guide.

The command is available also in the context menu of individual model instances.

Suspending and Resuming a Model Instance from Management Console

A suspended model instance stops its execution. On resume, the instance continues from where it was suspended.

To suspend or resume a suspended model instance, do the following:

  1. Open the Model Instances view.
  2. In the displayed table with model instances, select the model instances.
  3. In the view toolbar, click the Suspend or Resume command.

Suspending and Resuming a Model Instance from the Command Line

Suspending a Model Instance from the Command Line

suspend suspends model instances;

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance IDs, for example, 8999 8899
--modelInstanceFile file with model instance IDs to be requested
--filterModelId IDs of the models
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersion model version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

java -jar lsps-cli-<VERSION>-full.jar suspend --testFilter --destination http://localhost:8080 --username admin --password admin --filterProps myProperty "value" --filterFrom "2017-10-31 12:14:00"

Resuming a Model Instance from the Command Line

resume resumes suspended or updated model instances;

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance IDs, for example, 8999 8899
--modelInstanceFile file with model instance IDs to be resumed
--filterModelId ID of the model
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersionmodel version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

java -jar lsps-cli-<VERSION>-full.jar finish --testFilter --destination http://localhost:8080 --username admin --password admin --filterProps myProperty "value" --filterFrom "2017-10-31 12:14:00"

Model Instance Finish

When you finish a model instance, the running elements stop their execution immediately and the status of the model instance becomes finished.

Finishing a Model Instance from the Management Perspective

To finish a running Model instance from the Management perspective, do the following:

  1. Open the Model Instances view.
  2. Select the instances, you wish to finish.
  3. In the view toolbar, click Finish . The command is available also in the context menu of individual model instances.

Finishing a Model Instance from Management Console

To finish a model instance from Management Console, do the following:

  1. Open the Model Instances page.
  2. In the displayed table with model instances, locate the particular model instance.
  3. In the view toolbar, click the Finish button.
finishingModelInstance.png
Finishing Model Instance

Finishing a Model Instance from the Command Line

finish finishes model instances

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance IDs, for example, 7888 7887
--modelInstanceFile file with model instance IDs to be resumed
--filterModelId ID of the model
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersion model version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

java -jar lsps-cli-3.3.2039-full.jar finish --destination http://localhost:8080 --username admin --password admin --filterModelName "mod"

Model Instance Restart

When you restart a running model instance, its module instances finish and module instances are created anew within the same model instance: the instances are running under the same model instance which preserves the ID of the model instance. Context of the finished module instances does not impact the context of the new module instances.

On restart, you can select the model the model instance will use, be it the same or a different one.

Important: The persisted data structures used by the original model and the model used on restart must be compatible; for example, if you remove a column from a database table which was used by the original model and is not used by the model after restart, the restart fails: the column has to be present in the database. To resolve such a situation, use the Do not change strategy for update of the database schema and remove the redundant structures from the database after the restart.

Restarting a Model Instance from the Management Perspective

To restart one or multiple model instances from the Management perspective, do the following:

  1. On the Model Instances view, select the Model instances.
  2. Click Restart in the page toolbar.
  3. In the Restart Model Instances dialog box, select the Model that should be used by the restarted Model instances.
    restartingmipds.png
  4. Click OK.
  5. Refresh the Model Instances view and check the status of the restarted model instances.

Restarting a Model Instance from Management Console

To restart one or multiple model instances, do the following:

  1. On the Model Instances page, select the Model instances.
  2. Click Restart in the page toolbar.
  3. In the Restart Model Instance dialog box, select the Model that should be used by the restarted Model instance.
    restartingModelInstanceDialog.png
    Selecting the Model for the restarted Model instance
  4. Click OK.

Restarting a Model Instance from the Command Line

restart restarts running or suspended model instances

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelId ID of the model used for the restarted model instances (if not specified, each instance is restarted without model change)
--modelInstance model instance IDs, for example, 7848 7687
--modelInstanceFile file with model instance IDs to be restarted
--filterModelId ID of the model
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersion model version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as "key1 value1 key2 value2"
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

lsps-tools/cli-tools$ java -jar lsps-cli-<VERSION>-full.jar restart \
--testFilter --destination http://localhost:8080 --username admin --password admin --filterModelName "mod"
Status change candidate: #8000
Status change candidate: #18000
Status change candidate: #18001
Done.

Model Instance Invoke

On invoke, a Model instance attempts to continue its execution: this feature is helpful if a Model instance remains in a state where it is waiting for an event which cannot occur, typically due to manual adjustments (for example, change on timer events or variable values), you can invoke the model instance to make the instance check if it can continue.

Invoking a Model Instance from the Management Perspective

To invoke a model instance, go to Model Instances view, select the model instance and click the Invoke button.

Model Instance Update

To change the model used by a running or suspended model instance, use model update: During model update, the underlying model is substituted with a new model and updated according the model update configuration file, which is created in Designer.

Before performing model update, make sure you have a model update configuration at hand. Also make sure that the underlying database is in the correct target state. Note that any changes to the database must be backwards compatible.

Important: Model update can result in inconsistent data and corrupt model instances. Make sure to have a backup of your environment before performing model update.

Important: If your changes include incompatible changes to your data type model, you need to suspend any running model instances and migrate your business database before update.

Updating a Model Instance from the Management Perspective

Before updating model instances, make sure the new Model (target) is uploaded. Note that only model instances that are Running, Suspended, Updated, or Update Aborted can be updated. During update, the model instance is suspended and becomes read-only. Such a model instance cannot be resumed manually.

When updating Model instances their IDs are preserved and the rules defined in the Model update configuration are applied.

Important: Old and new model must use the same version of Standard Library.

Note that you can perform model update on model instances from the Management perspective of Designer as instructed here, or alternatively from the Management Console or command line with the Command Line.

To update model instances, do the following:

  1. Open the Model Instances view.
  2. Click the Update ( ) button in the view toolbar.
  3. In the Model Update dialog box, specify the model update configuration and data mapping file to be applied:
    • Click Workspace Resource to select a configuration/data mapping file from the current workspace.
    • Click External File to select a configuration/data mapping file from other location.
  4. Click Next.
    dialogMU.png
    Model update dialog
  5. On the Filter page, define the filtering criteria for model instances and click Apply Filter if applicable.

    You can apply also a previously defined filter. However, status and model criteria are ignored since the model is defined in the Model Update Configuration.

  6. In the Model Instances area, select the model instances to update.
    MUdialogFilter.png
    Model update dialog box with filtered Model instances
  7. Click Next.
  8. On the Summary page, chheck the settings. If you plan to perform the model update with the LSPS Command Line, click Show command line script and copy the commands for later use.
  9. Click Finish.

The selected instances go through the model-update process. Check their detail views and the Model Update Logs view for details. Depending on the model update settings, the update process may be waiting for manual triggering of its transformation or post-processing phase: To resume a model update of a model instance, click the Continue Model Update ( ) button in the Model Instances view in the Management perspective.

After the update has finished, the model instances remain in the status Updated and are still not running. To resume the instances, click Resume in their context menu.

To resume all model instances returned by the Filter of the view, click Resume All Updated in the context menu.

Note: If resuming a large number of instances, make sure the resumed action was applied to all of them. Resume any instances that failed to resume.

Aborting Model Update

You can abort model updates from the Management perspective: Click the Abort Model Update button ( ) in the view toolbar.

The feature is available in Management Console as well.

Model Update Logs

The logs from a model update procedure are available in the Model Update Logs view. The view displays information on source and target models and details on updated model instances (below the list of model updates).

Model Update Detail

The Model Update Detail view contains details about the update of a model instance.

To display the view, click the model instance ID in the Model Update Logs view.

ModelUpdateDetail.png
Model Update Detail

Downloading Model Update Configuration

To download a model update configuration from the LSPS Server, do the following:

  1. Open the Model Update Logs view.
  2. Select an update log.
  3. In the view toolbar, click the Export MUC ( ) button.
  4. Define the target location and file name.

Updating a Model Instance from Management Console

To update a model instance, do the following:

  1. In the Model Instances view, select the model instance and click the Model Update button.
  2. In the dialog box, enter the path to the model update MUC file and the Datamapping file and click Next.
  3. Check if the correct instances are selected and click Finish
  4. It is recommended to check the model update log information in the Model Update Logs view.

Updating a Model Instance from the Command Line

When calling any of the model update command, the command is executed by default on all model instances of the model according to the update rules defined in the muc file. However you can define the id of a model instance you want to update using the --modelInstance parameter. or to perform the command over multiple instances, use the filter parameters:

  • --modelInstanceFile parameter with a file with the IDs (each ID on a new line)
  • filter parameters, --filterStatus, filterFrom and filterTo, --filterProps, etc. for multiple model instances based on their properties.

Consider using the --testFilter parameter to trigger a dryrun and check the resulting set of model instances.

Note: To acquire the model update command, you can set up a test model update and use the Show command line script feature in Designer.

For information on model update, refer to Modeling.

Example model update command

lsps-tools/cli-tools$ java -jar lsps-cli-<VERSION>-full.jar modelUpdate \
--destination http://localhost:8080 --username admin --password admin --muc "D:/my_workspaces/my.muc" --filterStatus RUNNING SUSPENDED UPDATED

Updating models

modelUpdate updates models instances based on the provided muc file

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--muc* muc file
--datamapping data mapping definition
--modelInstance model instance IDs, for example, 8341 8432
--modelInstanceFile file with model instance IDs to be updated
--filterStatus only model instances in the defined execution status are updated (RUNNING, SUSPENDED, UPDATED, UPDATE_ABORTED)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

Continuing Model Transformation

continueTransform triggers the transformation phase of update on the model instances;

Long Option Short OptionDescription
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance IDs, for example, 8346 8436
--modelInstanceFile file with the model instance
--filterModelId ID of the model
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersionmodel version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

Continuing Post Processing of Model Update

continuePostprocess triggers the postprocess phase of model update;

Long Option Short Option Description
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance IDs, for example, 8355 8443
--modelInstanceFile file with the model instance
--filterModelId ID of the model
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersionmodel version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters

Aborting Model Update

abortModelUpdate aborts update of model instances;

Long Option Short Option Description
--destination* -d host URL
--username* -u user name
--password* -p password
--modelInstance model instance IDs, for example, 8308 8529
--modelInstanceFile file with the model instance
--filterModelId ID of the model
--filterModelName model name pattern (supports ? and * wildcards)
--filterModelVersionmodel version (supports ? and * wildcards)
--filterFrom model instance(s) initiated after TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterTo model instance(s) initiated before TIMESTAMP, format: yyyy-MM-dd HH:mm:ss
--filterProps model instance properties defined as key1 value1 key2 value2
--filterExpression boolean expression; Only the model instances for which the expression evaluates to true are returned.
--testFilter boolean expression; displays the model instances affected by the command (the command is not executed)

* required parameters