OCLOperators scripteval
No edit summary
(Automatically adding template at the end of the page.)
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
ScriptEval is an operator on a model object (the context) that lets you have expressions as data and evaluate those expressions.
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 that it returns a double - if so the result will be converted to string and assigned to vSomeStringResult - if not a valid expression - the problem with expression will be in vSomeStringResult
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
[[Category:OCLOperators]]
{{Edited|July|12|2024}}

Latest revision as of 15:42, 10 February 2024

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 89 days ago on 02/10/2024. What links here