OCLOperators scripteval
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
ScriptEval is an operator on a model object (the context) that lets you have expressions as data and evaluate | ScriptEval is an operator on a model object (the context) that lets you have expressions as data and evaluate them. | ||
You must state the valid Return type. | You must state the valid Return type. | ||
Line 6: | Line 6: | ||
vSomeStringResult:=(info='ok').casetruefalse(self.ScriptEval(false,Double, self.SomeString).asstring,info) | vSomeStringResult:=(info='ok').casetruefalse(self.ScriptEval(false,Double, self.SomeString).asstring,info) | ||
) | ) | ||
The above code will check if the self.SomeString value is a valid expression in the context of self and | The above code will check if the self.SomeString value is a valid expression in the context of self and whether it returns a double - if so, the result will be converted to string and assigned to vSomeStringResult. If it's not a valid expression, the problem with the expression will be in vSomeStringResult. | ||
Using the default model: | Using the default model: | ||
0.2222+self.SomeInt+self.SomeDateTime.Ticks | 0.2222+self.SomeInt+self.SomeDateTime.Ticks | ||
[[Category:OCLOperators]] | [[Category:OCLOperators]] |
Revision as of 06:48, 6 March 2023
ScriptEval is an operator on a model object (the context) that lets you have expressions as data and evaluate them.
You must state the valid Return type.
let info=self.ScriptEvalCheck(false,Double, self.SomeString) in ( vSomeStringResult:=(info='ok').casetruefalse(self.ScriptEval(false,Double, self.SomeString).asstring,info) )
The above code will check if the self.SomeString value is a valid expression in the context of self and whether it returns a double - if so, the result will be converted to string and assigned to vSomeStringResult. If it's not a valid expression, the problem with the expression will be in vSomeStringResult.
Using the default model:
0.2222+self.SomeInt+self.SomeDateTime.Ticks
This page was edited more than 11 months ago on 02/10/2024. What links here