Skip to Main Content
Jedox Ideas

Let us know how we can make Jedox even better!

Status Not Planned
Workspace Jedox Platform
Created by Guest
Created on Aug 17, 2020

Refactor the design of method ->value

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

  • ADMIN RESPONSE
    Feb 18, 2022

    Thanks for the idea. This feature has been evaluated by us and we will not implement at this time.