Let us know how we can make Jedox even better!
the design of the method value() in the macro engine should be improved. It returns a different type depending of the arguments passed to the range() property. Example:
activesheet()->range('A1')->value => returns a string // this is correct, user/developer explicitely wants a single value or string
activesheet()->range('A1:A6')->value => returns an array // this is correct, user/developer explicitely wants an array of values or strings
activesheet()->range('A1:A1')->value => returns a string // this in INCORRECT, user/developper expects a single-element array
when using the method in macros you face the following problem:
for ($i=1;$i<10;$i++) {
$currentValue = activesheet()->range('A1:A' . $i)->value;
}
the first iteration returns a string, when the following will return an array. a test has to be performed to check whether the returned variable is an array or a string.
such design (a method returning different types depending on the argument passed) is explicitely considered as a bad practice by ooo PHP developers
Thanks for the idea. This feature has been evaluated by us and we will not implement at this time.