Metis Smart Modeling - Models
From Metis Documentation
(→What is a model?) |
(→How does a model work?) |
||
Line 10: | Line 10: | ||
== How does a model work? == | == How does a model work? == | ||
- | Before explaining how to create and use models, it is necessary to explain how | + | Before explaining how to create and use models, it is necessary to explain how Metis Smart Quote works in order to provide the user with a fully featured offer. Establishing such an offer can be summarized through the following scheme. |
[[Image:Model_Metis_SQ_Exec.png|thumb|upright=0.5|alt=Metis Smart Quote Execution Description|Metis Smart Quote Execution Description]] | [[Image:Model_Metis_SQ_Exec.png|thumb|upright=0.5|alt=Metis Smart Quote Execution Description|Metis Smart Quote Execution Description]] | ||
When an offer is initiated in Metis Smart Quote, '''modeled positions''' are “calculated” based in the information provided in modeling masks. These values represent the customer’s needs. Through the execution of the [[#Material|material]] model, the application creates a list of positions which basically represents the customer’s desired items and all of these products are listed in a structured way. | When an offer is initiated in Metis Smart Quote, '''modeled positions''' are “calculated” based in the information provided in modeling masks. These values represent the customer’s needs. Through the execution of the [[#Material|material]] model, the application creates a list of positions which basically represents the customer’s desired items and all of these products are listed in a structured way. | ||
Line 20: | Line 20: | ||
Based on the previous example, a secondary screen can be added for one or more calculated computers. Or, additional, none modeled network features can be added. | Based on the previous example, a secondary screen can be added for one or more calculated computers. Or, additional, none modeled network features can be added. | ||
- | After the two previous steps, Metis Smart Quote will not only list all items required for the offer, but also calculate | + | After the two previous steps, Metis Smart Quote will not only list all items required for the offer, but also calculate '''prices'''. This calculation will not only be based on all positions listed in the offer, but also on the pricing settings defined on the positions. For example, a specific computer component, like software licenses may be subject to discounts based on the quantity. |
Additionally to defining the list of positions required in an offer, the modeling functionality of Metis Smart Suite, '''services specific models''' can be implemented in the application. Once the pricing of materials and based on the availability of a [[#Service|service]] models, Metis Smart Quote is able to calculated related services through service models and list relevant service position in the offer. | Additionally to defining the list of positions required in an offer, the modeling functionality of Metis Smart Suite, '''services specific models''' can be implemented in the application. Once the pricing of materials and based on the availability of a [[#Service|service]] models, Metis Smart Quote is able to calculated related services through service models and list relevant service position in the offer. | ||
Line 36: | Line 36: | ||
- | + | Now that the ground work of the model concept is laid down, it is necessary to understand a bit how such a model works in the Metis environment. As described in figure [[:File:Model_Exec_1.png|Model execution overview]], outside of the masks, a model is built on specific objects. Each model includes at least one “group of rules”, which is a container for individual rules. Those rules are the logic part of the models. Each rule uses input values (variables, [[Description_of_the_Menu_Attributes|attributes]], positions) coming from the masks, default or calculated information to process a logic “formula”. A Group of rule can include as many rules as necessary, with the only constrain that the result of a given rule will only be available in the next group of rules in the process. As described in figure [[:File:Model_Exec_2.png|Group of rules execution overview]], a Group of rules feeds on input values which are instantiated before its execution. Once inside, all rules will use those values to process the formulas. When all rules are processed, the resulting variables and/or material positions are prepared for the next Group of rules.Before starting the execution of the next Group of rules, the engine instantiates the new input values and lets the various rules included in the group feed on them. | |
- | Now that the ground work of the model concept is laid down, it is necessary to understand a bit how such a model works in the Metis environment. As described in figure [[:File:Model_Exec_1.png|Model execution overview]], outside of the masks, a model is built on specific objects. Each model includes at least one “group of rules”, which is a container for individual rules. Those rules are the logic part of the models. Each rule uses input values (variables, [[Description_of_the_Menu_Attributes|attributes]], positions) coming from the masks, default or calculated information to process a logic “formula”. A Group of rule can include as many rules as necessary, with the only constrain that the result of a given rule will only be available in the next group of rules in the process. As described in figure [[:File:Model_Exec_2.png|Group of rules execution overview]], a Group of rules feeds | + | |
[[Image:IMG_BLANK.png|500x226px|link=]][[Image:Model_Exec_1.png|500x226px|link=]] [[Image:Model_Exec_2.png|500x226px|link=]] | [[Image:IMG_BLANK.png|500x226px|link=]][[Image:Model_Exec_1.png|500x226px|link=]] [[Image:Model_Exec_2.png|500x226px|link=]] | ||
For example, when configuring a computer, the selection of a specific CPU will influence the list of compatible motherboards. Only when the appropriate one is determined, will the number of specific ports (like USB) be available and used for further configuration. | For example, when configuring a computer, the selection of a specific CPU will influence the list of compatible motherboards. Only when the appropriate one is determined, will the number of specific ports (like USB) be available and used for further configuration. | ||
- | |||
- | |||