Add a custom function to the expression engine and call it from a report template during rendering.

Registering the function. Define the function signature, register it with the expression engine, and call it from a template expression during rendering.
StiFunctions.AddFunction("MyCategory", "MySum",
    "description", typeof(CustomFunction),
    typeof(decimal), "Calculates a sum of the specified set of values.",
    new[] { typeof(object) },
    new[] { "values" },
    new[] { "A set of values" }).UseFullPath = false;

this.Report = new StiReport();
StiFunctions.AddFunction registers the method with its category, name, description, return type and parameters. It then appears in the designer's function list under MyCategory and can be used in any report expression.
In the screenshot below you can see the result of the sample code:

Adding a Custom Function to the Designer

Hi. Need any help?