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(): 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(): 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(): 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(): 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(): 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(): 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 - Rules - Metis Documentation

Metis Smart Modeling - Rules

From Metis Documentation

Jump to: navigation, search
(Testing rules)
Line 1: Line 1:
-
In the Metis environment, a rule is a determinate method for performing a logical or mathematical operation and obtaining a certain result which is  the building block of the modeling part (configurator). It is based on a simple structure and logic which can be used in an endless number of cases and will suit most of the requirements for material and service configuration.  
+
In the Metis Smart Suite, a Rule is a determinate method for performing a logical or mathematical operation and obtaining a certain result which is  the building block of the modeling concept(configurator). It is based on a simple structure and logic which can be used in an endless number of cases and will suit most of the requirements for material and service configuration.  
 +
 
 +
 
== What is a rule? ==
== What is a rule? ==
-
[[Image:Model_Exec_3.png|thumb|upright=0.5|alt=Metis Smart Quote Rule Execution Description|Metis Smart Quote Rule Execution Description]]
 
-
Based on the [[Metis_Smart_Modeling_-_Models|model]] execution scheme, rules fit inside of [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] in Metis. They are the logical part of the execution process. As described in the [[Metis_Smart_Modeling_-_Models|model]] section, once a [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] is executed, all [[Metis_Smart_Modeling_-_Variables|variables]] are instantiated and only after this the rules are executed. In opposition to groups of rules inside a [[Metis_Smart_Modeling_-_Models|model]], rules don't have a specific order in which they are
 
-
Detailed description of a rule and its components.
 
-
Link to the execution process of [[Metis_Smart_Modeling_-_Models|models]].
+
[[Image:Model_Exec_3.png|thumb|upright=0.5|alt=Metis Smart Quote Rule Execution Description|Metis Smart Quote Rule Execution Description]]
 +
Based on the [[Metis_Smart_Modeling_-_Models|model]] execution scheme, rules fit inside of [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] in Metis. They are the logical part of the execution process. As described in the [[Metis_Smart_Modeling_-_Models|model]] section, once a [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] is executed, all [[Metis_Smart_Modeling_-_Variables|variables]] are instantiated and only after this the rules are executed. In opposition to groups of rules inside a [[Metis_Smart_Modeling_-_Models|model]], rules don't have a specific order in which they are executed. The execution of Rules is done in parallel. As pictured on the right, the execution of a rule first tests if the rule should be run by testing if the defined filter can be validated. If the test is OK then the process moves to the rule or formula itself. If and only if that steps produces an output the process then moves to the addition of add-ons. Those can be seen as dependencies of the result of the rule or formula. Throughout the execution, the values used in fields input are taken from the Group of rules in which the Rule is currently being executed.
Line 24: Line 24:
''ID''
''ID''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
-
Once the rule has been saved, the ID field will automatically be completed by Metis Smart Modeling. The generated identification code is unique worldwide and can be useful for searching for a rule or debugging it, if necessary. (mandatory, but generated automatically upon validation)
+
Once the rule has been saved, the ID field will automatically completed by Metis Smart Modeling. The generated identification code is unique worldwide and can be useful for searching for a rule or debugging it, if necessary. (mandatory, but generated automatically upon validation)
|-
|-
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
Line 34: Line 34:
''Description''
''Description''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
-
A long description ca be given to all rules defined within Metis Smart Modeling.
+
A long description ca be given to all rules defined within Metis Smart Modeling. This helps explain what the Rule does.
|-
|-
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
''Round output down''
''Round output down''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
-
If this checkbox is ticked, any fractions of output resulting from a rule will not be taken into account. This means that the result will only be composed of whole units. This applies in particular when using a formula based rule.
+
If this check-box is ticked, any fractions of output resulting from a rule will not be taken into account. This means that the result will only be composed of whole units. This applies in particular when using a formula based rule.
|-
|-
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
''Mandatory External Control (Offer)''
''Mandatory External Control (Offer)''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
-
Mandatory Controls, simply by the presence of a system name, are considered to be applied on the offer level. The influence in Metis Smart Quotes is that it will still be possible to view and print offer documents for the Metis Smart Quotes end user until an external configurator control can be performed. There is no icon to represent the Mandatory Control applied on the offer level.
+
Mandatory Controls, implied by the presence of a system name, are considered to be applied on the offer level. The influence in Metis Smart Quotes is that it will still be possible to view and print offer documents for the Metis Smart Quotes end user until an external configurator control can be performed. There is no icon to represent the Mandatory Control applied on the offer level.
|-
|-
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
''Mandatory External Control (Order)''
''Mandatory External Control (Order)''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
-
Mandatory Controls, simply by the presence of a system name, are considered to be applied on the order level. The influence in Metis Smart Quotes is that the ordering process will be blocked for the Metis Smart Quotes end user until an external configurator control can be performed, but it will still be possible to view and print offer documents. There is no icon to represent the Mandatory Control applied on the order level.
+
Mandatory Controls, implied by the presence of a system name, are considered to be applied on the order level. The influence in Metis Smart Quotes is that the ordering process will be blocked for the Metis Smart Quotes end user until an external configurator control can be performed, but it will still be possible to view and print offer documents. There is no icon to represent the Mandatory Control applied on the order level.
|-
|-
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 0 0" |
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 0 0" |
''Mandatory Internal Control (Offer)''
''Mandatory Internal Control (Offer)''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 0 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 0 0" |
-
Mandatory Control intended for [[Metis_Smart_Modeling_-_Systems|systems]] which do not have system names. They require Metis Smart Quotes end users to perform a mandatory control of [[Metis_Smart_Modeling_-_Systems|system]] configuration. The mandatory controls of [[Metis_Smart_Modeling_-_Systems|systems]] will have to be performed manually by an especially authorized user as opposed to being handled by an external configurator control like Mandatory Control. Will be applied on the offer level. It is basically the same as the Mandatory Internal Control (Order) with the added restriction that it will not be possible for the end user to view and print offer documents.
+
Mandatory Control intended for [[Metis_Smart_Modeling_-_Systems|systems]] which do not have system names. They require Metis Smart Quotes end users to perform a mandatory control of [[Metis_Smart_Modeling_-_Systems|system]] configuration. The mandatory controls of [[Metis_Smart_Modeling_-_Systems|systems]] will have to be performed manually by a specifically authorized user as opposed to being handled by an external configurator like Mandatory External Control. It will be applied on the offer level. It is basically the same as the Mandatory Internal Control (Order) with the added restriction that it will not be possible for the end user to view and print offer documents.
|-
|-
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
| width="20%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 1px 1px 0" |
''Mandatory Internal Control (Order)''
''Mandatory Internal Control (Order)''
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
| width="80%" style="vertical-align: top; background-color : transparent; border-style: solid; border-color: transparent; border-width: 0 0 1px 0" |
-
Mandatory Controls intended for [[Metis_Smart_Modeling_-_Systems|systems]] which do not have system names. Similar to the above Mandatory Control, they also require Metis Smart Quotes end users to perform a mandatory control of [[Metis_Smart_Modeling_-_Systems|system]] configuration. The mandatory controls of [[Metis_Smart_Modeling_-_Systems|systems]] will have to be performed manually by an specifically authorized user as opposed to being handled by an external configurator control like White Flags. Will be applied on the order level, meaning that the ordering process will be blocked for the Metis Smart Quotes end user until a manual control can be performed. It will still be possible for the end user to view and print offer documents, however.
+
Mandatory Controls intended for [[Metis_Smart_Modeling_-_Systems|systems]] which do not have system names. Similar to the above Mandatory Control, they also require Metis Smart Quotes end users to perform a mandatory control of the [[Metis_Smart_Modeling_-_Systems|system]] configuration. The mandatory controls of [[Metis_Smart_Modeling_-_Systems|systems]] will have to be performed manually by an specifically authorized user as opposed to being handled by an external configurator like Mandatory External Control. Will be applied on the order level, meaning that the ordering process will be blocked for the Metis Smart Quotes end user until a manual control can be performed. It will still be possible for the end user to view and print offer documents, however.
|-
|-
| colspan="2" width="80%" style="vertical-align: top; background-color : white; border-style: solid; border-color: transparent; border-width: 0 0 0 0" |
| colspan="2" width="80%" style="vertical-align: top; background-color : white; border-style: solid; border-color: transparent; border-width: 0 0 0 0" |
Line 88: Line 88:
{{Note
{{Note
-
| Whether the Grey Flag has been placed on the order level or offer level, there will be no difference in the display in QSBW. The same small yellow icon will be displayed for either one.
+
| Whether the Mandatory Internal Control has been set on the order level or offer level, there will be no difference in the display in QSBW. The same small yellow icon will be displayed for either one.
}}
}}
{{Note
{{Note
-
| Only one type of Grey Flag can be active on a rule at a time.
+
| Only one type of Mandatory Internal Control can be active on a rule at a time.
}}
}}
{{Note
{{Note
-
| The White Flag (Offer) and a Grey Flag can be active on the same rule at the same time. However, Grey Flags will not have any influence on a [[Metis_Smart_Modeling_-_Systems|system]] which has a system name. [[Metis_Smart_Modeling_-_Systems|Systems]] which have a [[Metis_Smart_Modeling_-_Systems|system]] name will only take into account whether or not the White Flag (Offer) has been applied. Conversely, the White Flag (Offer) setting will have no influence on [[Metis_Smart_Modeling_-_Systems|systems]] which do not have a system name.
+
| The Mandatory External Control (Offer) and a Mandatory Internal Control can be active on the same rule at the same time. However, Mandatory Internal Controls will not have any influence on a [[Metis_Smart_Modeling_-_Systems|system]] which has a system name. [[Metis_Smart_Modeling_-_Systems|Systems]] which have a [[Metis_Smart_Modeling_-_Systems|system]] name will only take into account whether or not the White Flag (Offer) has been applied. Conversely, the White Flag (Offer) setting will have no influence on [[Metis_Smart_Modeling_-_Systems|systems]] which do not have a system name.
}}
}}
Line 111: Line 111:
{{Note
{{Note
-
| When specifying output, you will only have the choice between “Product” and “Variable”, as it is not possible to set the value of a [[Metis_Smart_Modeling_-_Variables|group of variables]] or an [[Metis_Smart_Modeling_-_Attributes|attribute]].
+
| When specifying output, users only have the choice between “Product” and “Variable”, as it is not possible to set the value of a [[Metis_Smart_Modeling_-_Variables|group of variables]] or an [[Metis_Smart_Modeling_-_Attributes|attribute]].
}}
}}
-
4. '''Add-On's'''' : Based on the result provide by the Formula part, a rule can be set-up to add implied positions or define new values in [[Metis_Smart_Modeling_-_Variables|variables]]. Additional results from the rule based on the result of the "formula"
+
4. '''Add-On's'''' : Based on the result provided by the Formula part, a rule can be set-up to add implied positions or define new values in [[Metis_Smart_Modeling_-_Variables|variables]]. Additional results from the rule based on the result of the "formula"
{{Note
{{Note
Line 142: Line 142:
()  
()  
| 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" |
-
(input only) [[Metis_Smart_Modeling_-_Attributes|attributes]] values added over the complete offer can be used as input for rules
+
(input only) [[Metis_Smart_Modeling_-_Attributes|attributes]] values added-up over the complete offer can be used as input for rules
|-
|-
| 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 159: Line 159:
|-
|-
|}
|}
 +
Because rules are essentially based on value given to [[Metis_Smart_Modeling_-_Variables|variables]] and /or positions, most of the numerical information which needs to be given when defining a rule is placed quantity fields:
Because rules are essentially based on value given to [[Metis_Smart_Modeling_-_Variables|variables]] and /or positions, most of the numerical information which needs to be given when defining a rule is placed quantity fields:
 +
{| class="wikitable centre" width="90%" style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: grey;"
{| class="wikitable centre" width="90%" style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: grey;"
Line 191: Line 193:
{{Warning
{{Warning
-
| [[Metis_Smart_Modeling_-_Attributes|Attributes]] do not hold any values in material [[Metis_Smart_Modeling_-_Models|models]].
+
| [[Metis_Smart_Modeling_-_Attributes|Attributes]] do not hold any values in material [[Metis_Smart_Modeling_-_Models|models]], as in Rules their value is calculated based on a list of material and that this list is only available when the execution of the model is completed.
}}
}}
 +
 +
== Rule types ==
== Rule types ==
Line 259: Line 263:
| Changing the type of an existing rule will not reset its content (filter, inputs, outputs and add-ons). Be careful when doing such changes and review all parts of the rule before saving it. Metis Smart Modeling will discard all changes which do not apply to the new type when validating then in the rule edition window. The change cannot be reverted.
| Changing the type of an existing rule will not reset its content (filter, inputs, outputs and add-ons). Be careful when doing such changes and review all parts of the rule before saving it. Metis Smart Modeling will discard all changes which do not apply to the new type when validating then in the rule edition window. The change cannot be reverted.
}}
}}
 +
=== Single Selection ===
=== Single Selection ===
 +
The single selection rule tests an input and calculates the defined output based on a simple logical relation. The Input "object" can be of any type available, but the output one can only be a position or a variable. If the input is set to be a variable, its value may come directly from a field placed in a [[Metis_Smart_Modeling_-_Masks|mask]] or a default value. The output quantity ("Q out") is determined by the input quantity ("Q in"). If they are both set to "1", then for every number of input there will be an output. On the other hand, if the "Q out" fields is set to 2, it means that for every input there will be 2 output.
The single selection rule tests an input and calculates the defined output based on a simple logical relation. The Input "object" can be of any type available, but the output one can only be a position or a variable. If the input is set to be a variable, its value may come directly from a field placed in a [[Metis_Smart_Modeling_-_Masks|mask]] or a default value. The output quantity ("Q out") is determined by the input quantity ("Q in"). If they are both set to "1", then for every number of input there will be an output. On the other hand, if the "Q out" fields is set to 2, it means that for every input there will be 2 output.
Line 271: Line 277:
| Beware that if the "Q in" field is left empty, the output will be equal to the input. The output value will always be equal to the input value, for any “Q in” value.
| Beware that if the "Q in" field is left empty, the output will be equal to the input. The output value will always be equal to the input value, for any “Q in” value.
}}
}}
 +
 +
 +
A filter or limit to the execution of the rule can be set with the "Q from" and "Q to" fields by giving a scope in which the input/output relation should be executed. If the "Q from" field is left empty, this means that the rule is valid for input values greater or equal than 0. An d if the "Q to" field is also left empty, then it means that the rule is valid up to infinite input values.
Line 276: Line 285:
| If the “Q from” field is left empty, this means ‘from 0'. If the “Q to” field is left empty, this means “up to ∞” (or > 999'999'999).
| If the “Q from” field is left empty, this means ‘from 0'. If the “Q to” field is left empty, this means “up to ∞” (or > 999'999'999).
}}
}}
-
 
-
 
-
A filter or limit to the execution of the rule can be set with the "Q from" and "Q to" fields by giving a scope in which the input/output relation should be executed. If the "Q from" field is left empty, this means that the rule is valid for input values greater or equal than 0. An d if the "Q to" field is also left empty, then it means that the rule is valid up to infinite input values.
 
Line 288: Line 294:
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
On the left, in the “Groups of rules” dropdown list, select “D-Basic Hardware.”
On the left, in the “Groups of rules” dropdown list, select “D-Basic Hardware.”
-
Click on add. A window opens where the new rule will be created.
+
Click on add [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the new rule will be created.
In the “Type” field, select “Single” from the dropdown list. In the “comment” field, enter a name for the rule, for example, “Configure Memory.”
In the “Type” field, select “Single” from the dropdown list. In the “comment” field, enter a name for the rule, for example, “Configure Memory.”
The goal of this example rule is to generate the number of memory modules required based on the desired quantity of memory provided in a [[Metis_Smart_Modeling_-_Masks|mask]].
The goal of this example rule is to generate the number of memory modules required based on the desired quantity of memory provided in a [[Metis_Smart_Modeling_-_Masks|mask]].
Line 346: Line 352:
| Definition of a single rule within Metis Smart Modeling.
| Definition of a single rule within Metis Smart Modeling.
}}
}}
 +
 +
=== Table Selection===
=== Table Selection===
 +
The goal is to determine an output quantity within several ranges of input values. The rule allows to enter several 'Q from' and 'Q to' to determine those ranges. They each then induce a specific 'Q out' which will be used as a quantity for the output.
The goal is to determine an output quantity within several ranges of input values. The rule allows to enter several 'Q from' and 'Q to' to determine those ranges. They each then induce a specific 'Q out' which will be used as a quantity for the output.
Line 356: Line 365:
In the “Modeling” menu, make sure to select the “rules” sub-menu.
In the “Modeling” menu, make sure to select the “rules” sub-menu.
To create a new rule, first select an existing [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] from the drop down list. For example, “s-basic enhancements.”
To create a new rule, first select an existing [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] from the drop down list. For example, “s-basic enhancements.”
-
Then click on the “Add” button. A window opens where the rule will be created.
+
Then click on the “Add” button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the rule will be created.
In the “Type” field, select “table.”
In the “Type” field, select “table.”
In this particular example, a condition is first set to execute the rule only if a variable has a value greater than 0.
In this particular example, a condition is first set to execute the rule only if a variable has a value greater than 0.
Line 362: Line 371:
In the “comment” field, enter “Define RAID Type.”
In the “comment” field, enter “Define RAID Type.”
Additional comments can be entered in the box below the “comment” field if desired.
Additional comments can be entered in the box below the “comment” field if desired.
-
Click on the “add” button for the “filter” section.
+
Click on the “add” button [[File:MetisSmartModelingPLUSButton.PNG|link=]] for the “filter” section.
A new window opens. It is possible to add positions, [[Metis_Smart_Modeling_-_Variables|variables]] or [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
A new window opens. It is possible to add positions, [[Metis_Smart_Modeling_-_Variables|variables]] or [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
In the [[Metis_Smart_Modeling_-_Variables|variables]] list, select “$HasRAID.” Then click on confirm.
In the [[Metis_Smart_Modeling_-_Variables|variables]] list, select “$HasRAID.” Then click on confirm.
Line 370: Line 379:
The purpose of this rule is to determine which RAID configuration will be setup in the [[Metis_Smart_Modeling_-_Systems|system]] based on the selection done in a [[Metis_Smart_Modeling_-_Masks|mask]].
The purpose of this rule is to determine which RAID configuration will be setup in the [[Metis_Smart_Modeling_-_Systems|system]] based on the selection done in a [[Metis_Smart_Modeling_-_Masks|mask]].
-
To do so, click on the “add” button for the “Input” section.
+
To do so, click on the “add” button [[File:MetisSmartModelingPLUSButton.PNG|link=]] for the “Input” section.
The same window from before opens. Select “[[Metis_Smart_Modeling_-_Variables|variables]]” and select “$RAID_Type” from the list.
The same window from before opens. Select “[[Metis_Smart_Modeling_-_Variables|variables]]” and select “$RAID_Type” from the list.
Click on confirm. The variable is added to the input field.
Click on confirm. The variable is added to the input field.
-
Click on the “add” button for the “output” section.
+
Click on the “add” button [[File:MetisSmartModelingPLUSButton.PNG|link=]] for the “output” section.
The same window from before opens. Select “[[Metis_Smart_Modeling_-_Variables|variables]].”
The same window from before opens. Select “[[Metis_Smart_Modeling_-_Variables|variables]].”
Select “$NB_HDD” from the list and confirm to continue. The variable is added to the output field.
Select “$NB_HDD” from the list and confirm to continue. The variable is added to the output field.
Line 389: Line 398:
Notice the result is now “3” for the “$NB_HDD” variable.
Notice the result is now “3” for the “$NB_HDD” variable.
Close the test window and then confirm to save the new rule.
Close the test window and then confirm to save the new rule.
-
 
Line 424: Line 432:
| Definition of a table rule within Metis Smart Modeling.
| Definition of a table rule within Metis Smart Modeling.
}}
}}
 +
 +
=== Optimal Selection ===
=== Optimal Selection ===
 +
This very performing rule enables the automatic selection of the best alternative depending on the output quantity required and the related price. This rule is particularly appreciated in selecting products when one input corresponds to several possible output results.
This very performing rule enables the automatic selection of the best alternative depending on the output quantity required and the related price. This rule is particularly appreciated in selecting products when one input corresponds to several possible output results.
Line 437: Line 448:
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
On the left, in the “Groups of rules” dropdown list, select “Server Software 2.”
On the left, in the “Groups of rules” dropdown list, select “Server Software 2.”
-
Click on add. A window opens where the new rule will be created.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the new rule will be created.
In the “Type” field, select “Optimal” from the dropdown list. In the “comment” field, enter a name for the rule, for example “determine best license package.”  
In the “Type” field, select “Optimal” from the dropdown list. In the “comment” field, enter a name for the rule, for example “determine best license package.”  
Click on the add button near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Click on the add button near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Line 449: Line 460:
Repeat the previous steps and select the “Windows Server 2008 CAL 25x” position and click on confirm.
Repeat the previous steps and select the “Windows Server 2008 CAL 25x” position and click on confirm.
Enter “25” in the “Q in” field for “Windows Server 2008 CAL 25x”
Enter “25” in the “Q in” field for “Windows Server 2008 CAL 25x”
-
The rule now states that based on the number of licences, various solutions are possible. When executed, the rule looks up the prices of the various outputs to determine the cheapest and most suitable option.
+
The rule now states that based on the number of licenses, various solutions are possible. When executed, the rule looks up the prices of the various outputs to determine the cheapest and most suitable option.
To test this new rule, click on the “test” button.
To test this new rule, click on the “test” button.
The test window opens. Enter “10” in the “test value” cell and click on the “Test” button.  
The test window opens. Enter “10” in the “test value” cell and click on the “Test” button.  
Line 488: Line 499:
| Definition of an optimal rule within Metis Smart Modeling.
| Definition of an optimal rule within Metis Smart Modeling.
}}
}}
 +
 +
=== Maximal Selection ===
=== Maximal Selection ===
 +
This type of rule can be used when several input values influence a specific output. Each line will be used as a single criterion and Metis will return the highest result possible. It is particularly useful when the goal is to define a minimal number of one position in order to satisfy several criteria. When the input quantity is not within the indicated range (Q from – Q to), the line will not be valid, thus not considered by the rule.
This type of rule can be used when several input values influence a specific output. Each line will be used as a single criterion and Metis will return the highest result possible. It is particularly useful when the goal is to define a minimal number of one position in order to satisfy several criteria. When the input quantity is not within the indicated range (Q from – Q to), the line will not be valid, thus not considered by the rule.
Line 498: Line 512:
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
On the left, in the “Groups of rules” dropdown list, select “Server Software 1.”
On the left, in the “Groups of rules” dropdown list, select “Server Software 1.”
-
Click on add. A window opens where the new rule will be created.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the new rule will be created.
In the “Type” field, select “Maximal” from the dropdown list. In the “comment” field, enter a name for the rule, for example “Determine number of MS licenses.”
In the “Type” field, select “Maximal” from the dropdown list. In the “comment” field, enter a name for the rule, for example “Determine number of MS licenses.”
-
Click on the add button near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]].  
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]].  
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Select “$NB_Users” from the list and confirm.
Select “$NB_Users” from the list and confirm.
Repeat the previous steps, but this time select the variable “$NB_Mailboxes” from the list and click on confirm.
Repeat the previous steps, but this time select the variable “$NB_Mailboxes” from the list and click on confirm.
-
Click on the add button near the “Output” field.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “Output” field.
The same window from before opens, but it is only possible to select positions or [[Metis_Smart_Modeling_-_Variables|variables]].
The same window from before opens, but it is only possible to select positions or [[Metis_Smart_Modeling_-_Variables|variables]].
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Line 542: Line 556:
| Definition of a maximal rule within Metis Smart Modeling.
| Definition of a maximal rule within Metis Smart Modeling.
}}
}}
 +
 +
=== Minimal Selection ===
=== Minimal Selection ===
 +
This type of rule uses the same logic as the Maximal Rule, but the lowest value will be returned as an output result.
This type of rule uses the same logic as the Maximal Rule, but the lowest value will be returned as an output result.
Line 553: Line 570:
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
-
On the left, in the “Groups of rules” dropdown list, select “Server Software 1.”
+
On the left, in the “Groups of rules” drop-down list, select “Server Software 1.”
-
Click on add. A window opens where the new rule will be created.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the new rule will be created.
-
In the “Type” field, select “Maximal” from the dropdown list. In the “comment” field, enter a name for the rule, for example “Determine number of MS licenses.”
+
In the “Type” field, select “Maximal” from the drop-down list. In the “comment” field, enter a name for the rule, for example “Determine number of MS licenses.”
-
Click on the add button near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]].  
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]].  
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Select “$NB_Users” from the list and confirm.
Select “$NB_Users” from the list and confirm.
Repeat the previous steps, but this time select the [[Metis_Smart_Modeling_-_Variables|variable]] “$NB_Mailboxes” from the list and click on confirm.
Repeat the previous steps, but this time select the [[Metis_Smart_Modeling_-_Variables|variable]] “$NB_Mailboxes” from the list and click on confirm.
-
Click on the add button near the “Output” field.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “Output” field.
The same window from before opens, but it is only possible to select positions or [[Metis_Smart_Modeling_-_Variables|variables]].
The same window from before opens, but it is only possible to select positions or [[Metis_Smart_Modeling_-_Variables|variables]].
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Line 588: Line 605:
|-
|-
|}
|}
 +
See Maximal Rule for example of how to use this type of rule.
See Maximal Rule for example of how to use this type of rule.
 +
 +
=== Formulas ===
=== Formulas ===
 +
In some cases, the previous rules categories are not sufficient for a suitable result. The mathematical formula rules may be very helpful in calculating services associated to certain equipment.
In some cases, the previous rules categories are not sufficient for a suitable result. The mathematical formula rules may be very helpful in calculating services associated to certain equipment.
Line 600: Line 621:
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
On the left, in the “Groups of rules” dropdown list, select “Shipping.”
On the left, in the “Groups of rules” dropdown list, select “Shipping.”
-
Click on add. A window opens where the new rule will be created.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the new rule will be created.
In the “Type” field, select “Formula” from the dropdown list. In the “comment” field, enter “Shipping.”
In the “Type” field, select “Formula” from the dropdown list. In the “comment” field, enter “Shipping.”
-
Click on the add button near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Attributes|Attributes]].”
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Attributes|Attributes]].”
Select “weight” and click on confirm.
Select “weight” and click on confirm.
-
Click on add again. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”. Search for the [[Metis_Smart_Modeling_-_Variables|variable]] “$Shipping_Type.” Select it and click on confirm.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] again. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”. Search for the [[Metis_Smart_Modeling_-_Variables|variable]] “$Shipping_Type.” Select it and click on confirm.
Click on the add button near the “Output” field. Search for the “shipping and handling” position. Select it and click on confirm.
Click on the add button near the “Output” field. Search for the “shipping and handling” position. Select it and click on confirm.
In the “Quantity =” field, enter the following formula “(Var1*Var2)/2"
In the “Quantity =” field, enter the following formula “(Var1*Var2)/2"
Line 915: Line 936:
<Angle>: Integer or real angle (in degrees) to use.
<Angle>: Integer or real angle (in degrees) to use.
|-
|-
-
| width="20%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
+
| width="20%" style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |
'''Tangent'''
'''Tangent'''
-
| width="30%" style="border-style: solid; border-color: grey; border-width: 0 1px 1px 0" |
+
| width="30%" style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |
Calculates the angle tangent
Calculates the angle tangent
-
| width="50%" style="border-style: solid; border-color: grey; border-width: 0 0 1px 0" |
+
| width="50%" style="border-style: solid; border-color: grey; border-width: 0 0 0 0" |
<Result> = Tangent(<Angle>)
<Result> = Tangent(<Angle>)
Line 927: Line 948:
<Angle>: Integer or real angle (in degrees) to use. An error occurs if this parameter is set to 90°, -90°, 270° or -270°.
<Angle>: Integer or real angle (in degrees) to use. An error occurs if this parameter is set to 90°, -90°, 270° or -270°.
-
|-
 
-
| width="20%" style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |
 
-
???
 
-
| width="30%" style="border-style: solid; border-color: grey; border-width: 0 1px 0 0" |
 
-
???
 
-
| width="50%" style="border-style: solid; border-color: grey; border-width: 0 0 0 0" |
 
-
???
 
|-
|-
|}
|}
 +
 +
=== External Selection===
=== External Selection===
 +
For very complex rules, an external file might be used to implement them in Metis Smart Modeling. The purpose of this rule type is to allow the development of algorithms which may not be handled in Metis. The file linked to such rule should a compiled program which can be started by providing at least one parameter and which returns '''only one''' value. This file can be searched through the External File Name button on the right. In order for a new file to be displayed in that list it has to be "imported" through the ... .
For very complex rules, an external file might be used to implement them in Metis Smart Modeling. The purpose of this rule type is to allow the development of algorithms which may not be handled in Metis. The file linked to such rule should a compiled program which can be started by providing at least one parameter and which returns '''only one''' value. This file can be searched through the External File Name button on the right. In order for a new file to be displayed in that list it has to be "imported" through the ... .
Line 943: Line 960:
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected.
On the left, in the “Groups of rules” dropdown list, select “D-Basic Hardware.”
On the left, in the “Groups of rules” dropdown list, select “D-Basic Hardware.”
-
Click on add. A window opens where the new rule will be created.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. A window opens where the new rule will be created.
In the “Type” field, select “External” from the dropdown list. In the “comment” field, enter a name for the rule. For example, “Total Service Time.”
In the “Type” field, select “External” from the dropdown list. In the “comment” field, enter a name for the rule. For example, “Total Service Time.”
The goal of this example rule is to provide two inputs to an external program. The program will then sum up the value of the inputs and provide the output to a [[Metis_Smart_Modeling_-_Variables|variable]].
The goal of this example rule is to provide two inputs to an external program. The program will then sum up the value of the inputs and provide the output to a [[Metis_Smart_Modeling_-_Variables|variable]].
-
Click on the add button near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Attributes|Attributes]]”.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “input” field. A window opens where it is possible to select positions, [[Metis_Smart_Modeling_-_Variables|variables]], and [[Metis_Smart_Modeling_-_Attributes|attributes]]. Select “[[Metis_Smart_Modeling_-_Attributes|Attributes]]”.
Select “Installation time” from the list and confirm.
Select “Installation time” from the list and confirm.
Repeat the same steps, but this time select “Project management” from the list.
Repeat the same steps, but this time select “Project management” from the list.
Note: It is very important that the order in which the parameters are listed in the table is the same as within the external program.
Note: It is very important that the order in which the parameters are listed in the table is the same as within the external program.
-
Click on the add button near the “Output” field. The same window from before opens, but it is only possible to select positions or [[Metis_Smart_Modeling_-_Variables|variables]]. In this example a position is added. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
+
Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]] near the “Output” field. The same window from before opens, but it is only possible to select positions or [[Metis_Smart_Modeling_-_Variables|variables]]. In this example a position is added. Select “[[Metis_Smart_Modeling_-_Variables|variables]]”.
Search for the [[Metis_Smart_Modeling_-_Variables|variable]] “$Service.” Select it and then confirm.
Search for the [[Metis_Smart_Modeling_-_Variables|variable]] “$Service.” Select it and then confirm.
In the “Input” section, click on the icon next to the “External File Name” field.
In the “Input” section, click on the icon next to the “External File Name” field.
-
A window opens. Click on the add button. The “select a file…” window opens.
+
A window opens. Click on the "Add" button [[File:MetisSmartModelingPLUSButton.PNG|link=]]. The “select a file…” window opens.
For this example the file “ADD.exe” is added. Make sure that the “Add.exe” file is selected and then click on confirm to continue.
For this example the file “ADD.exe” is added. Make sure that the “Add.exe” file is selected and then click on confirm to continue.
To test this new rule, click on the “test” button.The test window opens.
To test this new rule, click on the “test” button.The test window opens.
Line 991: Line 1,008:
| The external application which is executed when running an external rule can be written in any programming language as long as it is configured to accept one or more input [[Metis_Smart_Modeling_-_Variables|variables]] and only one output. Common consideration for executing the application are not supported by Xpert Technologies SA.
| The external application which is executed when running an external rule can be written in any programming language as long as it is configured to accept one or more input [[Metis_Smart_Modeling_-_Variables|variables]] and only one output. Common consideration for executing the application are not supported by Xpert Technologies SA.
}}
}}
 +
 +
== Testing rules ==
== Testing rules ==
Line 1,001: Line 1,020:
OUTPUT VALUES (Output and Add-on)
OUTPUT VALUES (Output and Add-on)
In the lower table, results will be displayed based on the inputs given and the rule itself. The listed result include both the output defined in the rule and the "Add-on" specified.
In the lower table, results will be displayed based on the inputs given and the rule itself. The listed result include both the output defined in the rule and the "Add-on" specified.
 +
 +
 +
{{Note
 +
| The "program" which is used for an external rule should be executable on its own, meaning that the related execution environment or libraries should be accessible on the machine where Metis Smart Suite in installed.
 +
}}
Line 1,017: Line 1,041:
| Because some products may not be available for specific variants, the testing window allows to set a preferred "Variant" for the current test. Thus the result will take into account the selection.
| Because some products may not be available for specific variants, the testing window allows to set a preferred "Variant" for the current test. Thus the result will take into account the selection.
}}
}}
 +
 +
== Structuring rules together ==
== Structuring rules together ==
-
One simple example to described the importance of planning in advance the structure of the rules within a group or the groups themselves is in the scope of the configuration of a computer the calculation of the memory modules required. One way to accommodate this situation is to let the user input the requested amount of memory he would like to have configured in his machine.
+
 
 +
One simple example to described the importance of planning in advance the structure of the rules within a group or the groups themselves is in the scope of the configuration of a computer is the calculation of the memory modules required. One way to accommodate this situation is to let the user input the requested amount of memory he would like to have configured in his machine.
The first rule will determine the number of 1 GB modules required to suit his needs. For example the input is 4 GB and the result is 4 modules of 1 GB each. The situation would be more complicated if the user had chosen 8 GB and that the machine could only hold 4 modules in total. This means that the [[Metis_Smart_Modeling_-_Models|model]] requires a second rule to check the number of 1 GB module against the number of slots available. In the example of a input equal to 8, the resulting number of modules is 8. The second rule could then take this value and modify the result to 2 GB modules thus making it possible to be installed on the machine.
The first rule will determine the number of 1 GB modules required to suit his needs. For example the input is 4 GB and the result is 4 modules of 1 GB each. The situation would be more complicated if the user had chosen 8 GB and that the machine could only hold 4 modules in total. This means that the [[Metis_Smart_Modeling_-_Models|model]] requires a second rule to check the number of 1 GB module against the number of slots available. In the example of a input equal to 8, the resulting number of modules is 8. The second rule could then take this value and modify the result to 2 GB modules thus making it possible to be installed on the machine.
Line 1,029: Line 1,056:
| On the main rule screen, listing all rules within a single group, they can be sorted. This functionality is only a visual help for the user. Based on the execution scheme of [[Metis_Smart_Modeling_-_Models|models]], sorting rule within a group doesn't have any effect on the result of the group. If rule need to be executed a sequential order, then they should be placed in sequential groups.
| On the main rule screen, listing all rules within a single group, they can be sorted. This functionality is only a visual help for the user. Based on the execution scheme of [[Metis_Smart_Modeling_-_Models|models]], sorting rule within a group doesn't have any effect on the result of the group. If rule need to be executed a sequential order, then they should be placed in sequential groups.
}}
}}
 +
== Advanced rules search ==
== Advanced rules search ==
 +
From the main rules screen in Metis Smart Modeling, the Advanced Search button brings up a window allowing to refine the search for rules.
From the main rules screen in Metis Smart Modeling, the Advanced Search button brings up a window allowing to refine the search for rules.
Line 1,038: Line 1,067:
-
* '''ID'''
+
* '''ID''' : Search for a rule directly by entering its identification number.
-
Search for a rule directly by entering its identification number.
+
-
* '''Comment'''
+
* '''Comment''' : Search for a rule by entering the "Comment" (name) of a rule.
-
Search for a rule by entering the "Comment" (name) of a rule.
+
-
* '''Mandatory Control'''
+
* '''Mandatory Control''' : Refine to search to rule which enforce mandatory controls.
-
Refine to search to rule which enforce mandatory controls.
+
-
 
+
-
* '''Contain Item'''
+
-
By using the ADD button [[File:MetisSmartModelingAddButton.PNG|link=]] search for rules which contain a specific position, variable or [[Metis_Smart_Modeling_-_Attributes|attribute]]. Using the '''Used as''' options it is possible to refine how this object is used in the rule looked for. Either as a filter, an add-on value or as input or output values. In the case of objects being used in the rule itself, the application allows to specify exactly where it is used in the rule.
+
 +
* '''Contain Item''' : By using the ADD button [[File:MetisSmartModelingAddButton.PNG|link=]] search for rules which contain a specific position, variable or [[Metis_Smart_Modeling_-_Attributes|attribute]]. Using the '''Used as''' options it is possible to refine how this object is used in the rule looked for. Either as a filter, an add-on value or as input or output values. In the case of objects being used in the rule itself, the application allows to specify exactly where it is used in the rule.
** ''Rule Input or Output'' : Object used either as an input or an output of a rule.
** ''Rule Input or Output'' : Object used either as an input or an output of a rule.
** ''Rule Input only'' : Object used only as an input of a rule.
** ''Rule Input only'' : Object used only as an input of a rule.
Line 1,061: Line 1,085:
| The comment field doesn't enforce capitalization.  
| The comment field doesn't enforce capitalization.  
}}
}}
 +
 +
== Modifying a rule ==
== Modifying a rule ==
 +
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected. On the left, in the “Groups of rules” drop-down list, select the appropriate group where the rule to be edited is stored. Select the rule and click on the EDIT button [[File:MetisSmartModelingEditButton.PNG|link=]], the rule definition window opens up and modifications can be applied. Validation is required in order to save all changes made to the rule. Please refer to the individual rule type description for additional information on configuring a valid rule.
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected. On the left, in the “Groups of rules” drop-down list, select the appropriate group where the rule to be edited is stored. Select the rule and click on the EDIT button [[File:MetisSmartModelingEditButton.PNG|link=]], the rule definition window opens up and modifications can be applied. Validation is required in order to save all changes made to the rule. Please refer to the individual rule type description for additional information on configuring a valid rule.
Line 1,079: Line 1,106:
| A duplicated rule is an entirely new rule. All modifications applied to the original or the duplicate will not be reciprocated to the other one.  
| A duplicated rule is an entirely new rule. All modifications applied to the original or the duplicate will not be reciprocated to the other one.  
}}
}}
 +
 +
=== Moving a rule to another group of rules===
=== Moving a rule to another group of rules===
Line 1,092: Line 1,121:
}}
}}
-
=== linking a rule with another group of rules===
+
 
 +
 
 +
=== Linking a rule with another group of rules===
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected. On the left, in the “Groups of rules” drop-down list, select the appropriate group where the rule to be linked to other group(s) of rule is located. Select the rule and click on the LINK button [[File:MetisSmartModelingLinkButton.PNG|link=]], a window opens up where a target [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] can be selected from a drop-down list to set the [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] where the selected rule should be applied. Once selected, validation is required in order to save all changes made to the rule.  
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected. On the left, in the “Groups of rules” drop-down list, select the appropriate group where the rule to be linked to other group(s) of rule is located. Select the rule and click on the LINK button [[File:MetisSmartModelingLinkButton.PNG|link=]], a window opens up where a target [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] can be selected from a drop-down list to set the [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]] where the selected rule should be applied. Once selected, validation is required in order to save all changes made to the rule.  
Line 1,108: Line 1,139:
To check in which groups of rules a rule is used (linked), select the rule for which a verification should be done and click on the "Currently used by" button [[File:MetisSmartModelingCurrentlyUsedByButton.PNG|link=]]. A window will open displaying all groups of rules, [[Metis_Smart_Modeling_-_Models|models]] and [[Metis_Smart_Modeling_-_Systems|systems]] to which the selected rule is linked. Please refer here for more information.
To check in which groups of rules a rule is used (linked), select the rule for which a verification should be done and click on the "Currently used by" button [[File:MetisSmartModelingCurrentlyUsedByButton.PNG|link=]]. A window will open displaying all groups of rules, [[Metis_Smart_Modeling_-_Models|models]] and [[Metis_Smart_Modeling_-_Systems|systems]] to which the selected rule is linked. Please refer here for more information.
 +
 +
== Deleting a rule ==
== Deleting a rule ==
 +
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected. On the left, in the “Groups of rules” drop-down list, select the appropriate group where the rule to be edited is stored. Select the rule and click on the DELETE button [[File:MetisSmartModelingDeleteButton.PNG|link=]]. This opens a small window requesting to confirm the deletion of the selected rule. Once confirmed it will be definitively deleted from the selected [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]].  
In the “Modeling” menu, make sure that the “Rules” sub-menu has been selected. On the left, in the “Groups of rules” drop-down list, select the appropriate group where the rule to be edited is stored. Select the rule and click on the DELETE button [[File:MetisSmartModelingDeleteButton.PNG|link=]]. This opens a small window requesting to confirm the deletion of the selected rule. Once confirmed it will be definitively deleted from the selected [[Metis_Smart_Modeling_-_Group_of_Rules|group of rules]].  

Revision as of 14:49, 3 October 2013

Personal tools