Custom Formula Functions

From Documentation
Revision as of 08:30, 17 July 2013 by Hawk (talk | contribs)


Custom Formula Functions




Overview

Spreadsheet allows developers to implement their own custom formulas and use these formulas like built-in ones. You can just enter your custom formula like =MYFORMULA(A1) and it works like other formulas. To implement such a custom method is easy: just create a static method and declare it in a ZUL page with EL method or tag library.

Main steps to add a custom formula for Spreadsheet:

  1. Implement a public static method
  2. Declare in a ZUL page with Spreadsheet component
    You could use ZUML_Reference/ZUML/Processing_Instructions/xel-method or ZUML_Reference/ZUML/Processing_Instructions/taglib/Custom_Taglib

After completing above steps, you can use the custom formula in Spreadsheet.


Implement a Formula

Basically, to implement a formula is just like implementing a static Java method, but depending on your requirements there are several ways to do it. We will introduce them from easy to complicated one.

1. Simple Formula

If your formula accepts fixed number of arguments and each argument is a single value (or a reference to a single cell), you can use this way to implement your custom formula.

Example

Assume that we are going to create a money exchange formula that accepts 2 double arguments and return exchange result. The first one is money, and the second one is exchange rate.

public class MyCustomFormulas {
	
	public static double exchange(double money, double exchangeRate) {
        return money * exchangeRate;
    }	
}

so only the first cell of a range of cells is evaluated. Spreadsheet evaluate arguments for you. .

2. Multiple Arguments Numeric Formula

3. Multiple Arguments Formula