Posted by **gwf** on 05-Jan-2015 09:46

Is it possible to sort an array in a formula field?

This code in a formula field results in an invalid return error:

var array = [5, 2, 1, 3, 4]; array.sort( function(a,b) { return a-b; } ); return array[0];

Why won't this work?

Thank you,

Greg

Posted by **Godfrey Sorita** on 05-Jan-2015 11:51

Hi Greg,

Wrapping the process in a function should do the trick. Please see revised code below:

function main() { var array = [5, 2, 1, 3, 4]; array.sort(function(a,b) { return a-b; }); return array[0]; } main();

Regards,

Godfrey

Posted by **Godfrey Sorita** on 05-Jan-2015 11:51

Hi Greg,

Wrapping the process in a function should do the trick. Please see revised code below:

function main() { var array = [5, 2, 1, 3, 4]; array.sort(function(a,b) { return a-b; }); return array[0]; } main();

Regards,

Godfrey

Posted by **gwf** on 05-Jan-2015 14:19

Thank you very much, Godfrey, that works.

For my future reference, could you please explain why this needs to be wrapped in a function?

Thanks,

Greg

Posted by **Godfrey Sorita** on 05-Jan-2015 15:05

In complex formulas, its body is automatically wrapped into a JavaScript function and that resultant function will represent the formula's result. If you are using custom-defined functions, your formula cannot be automatically wrapped and hence cannot include a return statement outside of a function.

For more information on formulas, please check this link: http://documentation.progress.com/output/Rollbase/#page/rb/formulas.html

Posted by **gwf** on 05-Jan-2015 16:28

Thank you very much!

Greg

This thread is closed