Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722
Metis Smart Modeling - Debug - Metis Documentation

Metis Smart Modeling - Debug

From Metis Documentation

Jump to: navigation, search
(Debugging a model)
 
Line 1: Line 1:
-
A debugger or debugging tool is included in Metis Smart Modeling. It is used to test and debug Models. The debugger also offer more sophisticated functions such as running a model step by step (single-stepping or program animation), stopping (breaking) (pausing the program to examine the current state) at some event or specified instruction by means of a breakpoint, and tracking the values of some variables.
+
A debugger or debugging tool is included in Metis Smart Modeling. It is used to test and debug [[Metis_Smart_Modeling_-_Models|models]]. The debugger also offer more sophisticated functions such as running a [[Metis_Smart_Modeling_-_Models|model]] step by step (single-stepping or program animation), stopping (breaking) (pausing the program to examine the current state) at some event or specified instruction by means of a breakpoint, and tracking the values of some [[Metis_Smart_Modeling_-_Variables|variables]].
-
The importance of a debugger in Metis Smart Modeling cannot be overstated. Indeed, the existence and quality of such a tool supports precise and technically valid models within the environment. The tool expands over the two main applications in the Metis Environment. This means that a model can be executed in Metis Smart Quotes and afterwards debugged in Metis Smart Modeling.
+
The importance of a debugger in Metis Smart Modeling cannot be overstated. Indeed, the existence and quality of such a tool supports precise and technically valid [[Metis_Smart_Modeling_-_Models|models]] within the environment. The tool expands over the two main applications in the Metis Environment. This means that a [[Metis_Smart_Modeling_-_Models|model]] can be executed in Metis Smart Quotes and afterwards debugged in Metis Smart Modeling.
== Debugging a model ==
== Debugging a model ==
-
Window description
 
-
Result icons list and explanations
+
The debugging functionality included in the Metis Smart Suite located in the '''Debug''' sub-menu is built as follows. Below the toolbar, the screen shows the name of the debug file in use. Below it, is a table showing the complete Metis Smart Quotes Offer which is used for debugging the models. This table allows to see the complete set of data included or used to calculate the offer. It is structured based on the systems included in the offer and their content. They may include the linked models, the Groups of Rules defined for the models and the Rules linked to those Groups. each logical line of the table also shows the type of result being determined by the Rule and the Add-ons. The "expand all" button below the table allows to display the full content of the Offer at once in the table. The lowest table shown on the main screen is dedicated to the results and the input values. Please refer to the section below for details.
-
Breakpoints
 
-
Other column description
+
[[File:MetisSmartModelingSCDebug.PNG|center|600x400px]]
-
Output values & watchdogs
 
-
- Define breakpoints
 
-
- Add watchdog
 
-
Input Values
+
Example of errors or problems which can be detected using the debugger :
-
-
+
* '''Incorrect results''' : Use the "Output Values & Watchdogs" list in order to determine at the end of the execution process the values which should be "calculated" through the used [[Metis_Smart_Modeling_-_Models|models]]. To solve this type of issues, validate all [[Metis_Smart_Modeling_-_Rules|rules]] which will generate output and add-ons.
-
 
+
* '''Incorrect intermediate values''' : During the execution of a [[Metis_Smart_Modeling_-_Models|model]], the values for [[Metis_Smart_Modeling_-_Variables|variables]] and positions may change based on the [[Metis_Smart_Modeling_-_Rules|rules]]. This could mean that throughout the execution, such object may receive a value that is not planned or wished. Verify thoroughly all [[Metis_Smart_Modeling_-_Rules|rules]] which use identical object that see if incoherence may appears during the execution. For example, create temporary [[Metis_Smart_Modeling_-_Variables|variable]] which will only be used during an execution.
-
 
+
* '''Execution order issues''' : Within a [[Metis_Smart_Modeling_-_Models|model]] the order of the various groups of [[Metis_Smart_Modeling_-_Rules|rules]] which are executed is key. Errors may occur if groups are executed in the wrong order. Verify all the processes to be executed within a [[Metis_Smart_Modeling_-_Models|model]] to ensure that the order is relevant.
-
[[File:MetisSmartModelingSCDebug.PNG|center|706x860px]]
+
* '''Rights on defined objects''' : The results of the debugger is dependent on the rights and profiles applicable to the user logged in Metis Smart Quotes. This means that the availability of certain [[Metis_Smart_Modeling_-_Attributes|attributes]], price categories, variants or hierarchies will have a great influence of the calculated results. The cause of such issue may just be that the end-user doesn't have access to part of the objects used in the [[Metis_Smart_Modeling_-_Models|model]].
Line 51: Line 46:
|style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |  
|style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |  
[[File:MetisSmartModelingDebugPrRuleButton.PNG|link=]]
[[File:MetisSmartModelingDebugPrRuleButton.PNG|link=]]
-
|style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" | To preview the selected rule.
+
|style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" | To preview the selected [[Metis_Smart_Modeling_-_Rules|rule]].
|-
|-
|style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |  
|style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |  
Line 58: Line 53:
|-
|-
|}
|}
 +
 +
 +
{{Note
 +
| For details on icons used in the execution process table, please refer to Metis Smart Suite Icon Library and to the section presenting each object type.
 +
}}
Line 67: Line 67:
|-
|-
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
-
'''Breakpoint'''
+
'''Break-point'''
| width="5%" style="text-align:center; border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
| width="5%" style="text-align:center; border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
[[File:MetisSmartModelingDebugBPButton.PNG|link=]]
[[File:MetisSmartModelingDebugBPButton.PNG|link=]]
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" |
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" |
-
 
+
Indicates that a break-point has be set on this execution line or output object ([[Metis_Smart_Modeling_-_Variables|variable]] or position).
 +
|-
 +
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
 +
'''Watchdog'''
 +
| width="5%" style="text-align:center; border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
 +
[[File:MetisSmartModelingDebugWDButton.PNG|link=]]
 +
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" |
 +
Indicates that a watchdog is set stop the execution when a change occur to it.
|-
|-
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
Line 78: Line 85:
[[File:MetisSmartModelingDebugFilterButton.PNG|link=]]
[[File:MetisSmartModelingDebugFilterButton.PNG|link=]]
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" |
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" |
-
 
+
Indicates that the Rule has a filter defined.
|-
|-
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |
| width="15%" style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |
Line 85: Line 92:
[[File:MetisSmartModelingDebugOPlusButton.PNG|link=]]
[[File:MetisSmartModelingDebugOPlusButton.PNG|link=]]
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 0 0" |
| width="80%" style="border-style: solid; border-color: grey; border-width: 0 0 0 0" |
-
 
+
Indicates that the rule adds Positions or Values to variables.
|-
|-
|}
|}
 +
 +
== Using Metis Smart Quote ==
== Using Metis Smart Quote ==
-
The main concept within the debug tool included in Metis Smart Modeling is to be able to execute a model within Metis Smart Quotes, observe an issue and to be able to execute the same model with the same input value within Metis Smart Modeling in order to catch possible errors.
+
 
 +
The main concept within the debug tool included in Metis Smart Modeling is to be able to execute a [[Metis_Smart_Modeling_-_Models|model]] within Metis Smart Quotes, observe an issue and to be able to execute the same [[Metis_Smart_Modeling_-_Models|model]] with the same input value within Metis Smart Modeling in order to catch possible errors.
-
[[File:MetisSmartModelingSCDebug3.PNG|center|706x860px]]
+
[[File:MetisSmartModelingSCDebug3.PNG|center|600x400px]]
{{Note
{{Note
-
| Because the debugger within Metis Smart Modeling uses an execution of a model within Metis Smart Quotes, it is possible to for Metis Smart Quotes users to send to model developers a faulty execution for debugging. This fonctionnality can be activated on a profile basis.
+
| Because the debugger within Metis Smart Modeling uses an execution of a [[Metis_Smart_Modeling_-_Models|model]] within Metis Smart Quotes, it is possible to for Metis Smart Quotes users to send to [[Metis_Smart_Modeling_-_Models|model]] developers a faulty execution for debugging. This fonctionnality can be activated on a profile basis.
}}
}}
 +
To begin, open an existing project and an existing offer in Metis Smart Quotes. The selected offer has been configured in the design menu.
 +
The [[Metis_Smart_Modeling_-_Models|model]] has automatically been executed when clicking on the price menu.
 +
A debug file can now be generated from the Price menu.
 +
Click on the “More” button and select “Debug Mode.” An explorer window opens with the created debug file. This file can now be read in Smart Modeling.
 +
Now in Smart Modeling, make sure to be in the “Modeling” menu, then click on the “debug” sub-menu.
 +
An explorer window opens where the debug file can be selected and then opened.
 +
Once opened, the debug sub-menu appears. Under the top table, click on “expand all.”
 +
Information about the price category, the [[Metis_Smart_Modeling_-_Models|models]] or the [[Metis_Smart_Modeling_-_Rules|rules]] is displayed. It is possible to see the details about a [[Metis_Smart_Modeling_-_Rules|rule]]. For example, select the [[Metis_Smart_Modeling_-_Rules|rule]] “Configure basic hardware based on CPU choice (low).”
 +
Preview the [[Metis_Smart_Modeling_-_Rules|rule]] by either clicking on the “Rule Preview” button or by double clicking on the selected [[Metis_Smart_Modeling_-_Rules|rule]].
 +
The [[Metis_Smart_Modeling_-_Rules|rule]] window opens showing details about the [[Metis_Smart_Modeling_-_Rules|rule]]. Close this window.
 +
In the second table below, the first tab “Output Values and Watchdogs,” lists all output [[Metis_Smart_Modeling_-_Variables|variables]] and positions used by the [[Metis_Smart_Modeling_-_Models|models]].
 +
The user can also set a “watchdog” to a position or a [[Metis_Smart_Modeling_-_Variables|variable]]. A “watchdog” can be considered as a break-point. When executing the [[Metis_Smart_Modeling_-_Models|model]] using the “Start” and “Next Break point” buttons, the process continues until the “watchdog” position or [[Metis_Smart_Modeling_-_Variables|variable]] is encountered.
 +
The second tab lists the input values which were defined in the [[Metis_Smart_Modeling_-_Masks|mask]] in Smart Quotes.
 +
Click on the “Start” button to execute the [[Metis_Smart_Modeling_-_Models|model]]. Click on the next button to execute the [[Metis_Smart_Modeling_-_Rules|rules]] of the [[Metis_Smart_Modeling_-_Models|model]], step by step.
 +
The result values associated with the execution of the [[Metis_Smart_Modeling_-_Rules|rules]] are displayed in the table “output values and watchdogs” below.
 +
Clicking on the “Stop” button stops the [[Metis_Smart_Modeling_-_Models|model]] execution and the values disappear.
-
=== Testing a model in Metis Smart Quote ===
 
-
=== Generating a debug file ===
 
-
=== Opening a debug file in Metis Smart Modeling ===
+
{{Video
 +
| <mediaplayer width='400' height='300' image='http://www.xpert-technologies.ch/mediawikidev/images/f/f3/VID_DebugTool.PNG'>File:Debug Tool OK.mp4</mediaplayer>
 +
| Using Metis Smart Quotes to test a full [[Metis_Smart_Modeling_-_Models|model]], importing the environment in Metis Smart Modeling and running the step-by-step execution on the it.
 +
}}
 +
 
 +
 
== Running a model step-by-step ==
== Running a model step-by-step ==
 +
The Metis Smart Modeling Debugger is based on step-by-step executor of the imported environment. Once opened, the complete offer exported from Metis Smart Quotes can be executed one step after the other. This allows to verify thoroughly and in details where an error may have occurred. Based on the execution list and on the "Output Values and Watchdogs" list, the evolution of the "calculation" and results can be examined at every step.
[[File:MetisSmartModelingSCDebug2.PNG|center|706x860px]]
[[File:MetisSmartModelingSCDebug2.PNG|center|706x860px]]
 +
 +
 +
{{Note
 +
| For a demonstration on how to use the Step-by-step mode of the debugger, please refer to the video in the previous section of this manual.
 +
}}
 +
 +
=== Using breakpoints ===
=== Using breakpoints ===
-
The debugger tool included in Metis Smart Modeling allows to set breakpoints throughout the execution of an imported Metis Smart Quotes environment. Those breakpoints can be used to stop a step-by-step execution at a specific place or time of the offer. For example at the beginning of one of the systems included in the offer or when a specific variable changes value. This can be very useful to pinpoint a problem in a model based on certain values.
+
 
 +
The debugger tool included in Metis Smart Modeling allows to set breakpoints throughout the execution of an imported Metis Smart Quotes environment. Those breakpoints can be used to stop a step-by-step execution at a specific place or time of the executed model(s). For example at the beginning of one of the [[Metis_Smart_Modeling_-_Systems|systems]] included in the offer or when a specific [[Metis_Smart_Modeling_-_Variables|variable]] changes value. This can be very useful to pinpoint a problem in a [[Metis_Smart_Modeling_-_Models|model]] based on certain values.
 +
 
There are two different types of breakpoints which can be defined within the debugger :
There are two different types of breakpoints which can be defined within the debugger :
Line 121: Line 160:
1. '''In the execution steps'''
1. '''In the execution steps'''
-
In the Metis Smart Modeling debugger window, the top table shows the complete content of the imported environment (Offer, system and applications, models used, group of rules and rules which are executed). Each line listed in the table represents one of the steps of the execution process. Break-point can be set of any of those lines simply by clicking once the leftmost "grayed" column of the table. this add a small red dot to the line showing the user that the step-by-step will stop before executing this line in the process.
+
In the Metis Smart Modeling debugger window, the top table shows the complete content of the imported environment (Offer, [[Metis_Smart_Modeling_-_Systems|system]] and applications, [[Metis_Smart_Modeling_-_Models|models]] used, [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] and [[Metis_Smart_Modeling_-_Rules|rules]] which are executed). Each line listed in the table represents one of the steps of the execution process. Break-point can be set on any of those lines simply by clicking once the leftmost "grayed" column of the table. this adds a small red dot to the line showing the user that the step-by-step will stop before executing this line in the process.
In order to jump from one break-point the other, use the "Next Break-point" button.
In order to jump from one break-point the other, use the "Next Break-point" button.
-
To remove a break-point from the execution list, click of the small red dot in from of the line. The execution will then execute until the next one or the end of the list.
+
To remove a break-point from the execution list, click of the small red dot in front of the line. The execution will then run until the next one or to the end of the list.
 +
 
 +
2. '''On a  or position'''
 +
 
 +
Additionally to stopping the execution of the imported environment at a specific place or moment of the execution, Metis Smart Modeling also allows to set break-point on [[Metis_Smart_Modeling_-_Variables|variable]], positions and [[Metis_Smart_Modeling_-_Variables#What_is_a_group_of_items.3F|group of items]]. This can be done by using the "output Values & Watchdogs" table. Simply click in the leftmost column of the item which should stop the execution. Metis Smart modeling will then pause the execution process when the value stored with the item changes due to a [[Metis_Smart_Modeling_-_Rules|rule]]. By looking at the execution list, the specific operation which applied this change can be viewed.
 +
 
 +
 
 +
{{Note
 +
| Breakpoints on [[Metis_Smart_Modeling_-_Variables|variable]] or positions are very helpful to test and verify that one of those items is not modified when not required.
 +
}}
-
2. '''On a variable or position'''
 
=== Using watchdogs ===
=== Using watchdogs ===
 +
 +
Within the list of of "Output Values & Watchdogs" are only shown the [[Metis_Smart_Modeling_-_Variables|variables]], positions and groups of items which are either used as an output or an add-on to any [[Metis_Smart_Modeling_-_Rules|rule]] included in the environment. In order to work on [[Metis_Smart_Modeling_-_Variables|variables]] or positions which could be used as inputs or filters, Metis Smart Modeling allows the user define so called watchdogs. They are [[Metis_Smart_Modeling_-_Variables|variables]], positions or [[Metis_Smart_Modeling_-_Attributes|attributes]] which are not listed in the previously named table but which could be used in [[Metis_Smart_Modeling_-_Rules|rules]] as either input values or filters.
 +
 +
 +
In order to define a new watchdog within the debugger, click on the "Add" button [[File:MetisSmartModelingAddButton.PNG|link=]] located on the right of the "Output Values & Watchdogs" table. A window opens up which allows to select the position, the [[Metis_Smart_Modeling_-_Variables|variable]] (or [[Metis_Smart_Modeling_-_Variables|group of items]]) or [[Metis_Smart_Modeling_-_Attributes|attribute]] to be used as a watchdog. Select the appropriate one and validate in order for it to be listed in the table. Once done, move to the XX column of the inserted element and set the value for which it should be tested. When the execution process starts, and at each step, the watchdog will be tested against the value provided. If equal, then the execution pauses.
 +
 +
 +
In order to remove a watchdog from the list, use the "Remove" button [[File:MetisSmartModelingMINUSButton.PNG|link=]] on the right of the table.
 +
 +
 +
{{Note
 +
| Watchdogs on [[Metis_Smart_Modeling_-_Variables|variable]] or positions are very helpful to test and verify that a given [[Metis_Smart_Modeling_-_Variables|variable]] or position is not modified prior to being used as an input to another [[Metis_Smart_Modeling_-_Rules|rule]].
 +
}}

Latest revision as of 07:11, 4 October 2013

Personal tools