Lade...
 

Extern mit overwrites für kundenspezifische Ableitung - Beispiel 1

Extern mit overwrites für kundenspezifische Ableitung - Beispiel 1

Das Beispiel einer Anwendung:

 

Basics.mod Module(Basics) [ Define(GetQuantity) LocalVar(value, amount) -> amount, -> value value amount *; ] Processing.mod Module(Processing) : Basics [ Define(GetPrice) LocalVar(pricePerUnit) -> privcePerUnit GetQuantity pricePerUnit *; Msg(GET_PRICE) GET_PRICE: GetPrice ReturnStack ] Anwendung und Extern-Definitionen Module(Application) [ Msg(GET_PRICE) Define(DoSomething) LocalVar(unitPrice, value, amount) . . . unitPrice amount value SendMsg(GET_PRICE) . . . ; ] Extern(Basics, File(Basics.mod)) Extern(Processing, File(Processing.mod), triggeredBy(GET_PRICE)) : Basics Eine Modifikation für Kunde X: BasicsForCustomerX.mod Module(BasicsForCustomerX) : Basics [ Define(GetQuantity) LocalVar(qty) super::GetQuantity -> qty qty 1000 >= if { qty 80.5% *= } qty; ]

 

d.h. ein ein Modul wird in die Vererbungsfolge eingefügt. Die Extern-Definition der Basis-Anwendung (siehe oben) soll nicht