DO NOT EDIT THE CONTENT OF THIS PAGE DIRECTLY (EXCEPT INSIDE THE DIV BELOW WITH ID=DESCRIPTION), UNLESS YOU KNOW WHAT YOU'RE DOING.
THE STRUCTURE OF THE CONTENT IS VITAL IN BEING ABLE TO AUTO UPDATE THE CONTENT THROUGH THE DOC GENERATOR
{column:width=80px|padding=0px}{column}{column}{column}
Method Summary
getCalculation(name)
Get an existing calculation for the datasource node.
getCalculations()
Gets all the calculations for the datasource node.
getDataSource()
Get the data source for this node.
JSMethod[]
getMethods()
Gets all the foundset methods for the datasource node.
newCalculation(code)
Creates a new calculation for the given code, the type will be the column where it could be build on (if name is a column name),
else it will default to JSVariable.
newCalculation(code, type)
Creates a new calculation for the given code and the type, if it builds on a column (name is a column name) then type will be ignored.
removeCalculation(name)
Removes the calculation specified by name.
removeMethod(name)
Removes the foundset method specified by name.
{column:width=100%|padding=0px}{column}
Method Details
getCalculation
(name)
Sample
var calc = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation() { return 123; }", JSVariable.INTEGER); var calc2 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation2() { return '20'; }"); var calc3 = solutionModel.getDataSourceNode("db:/example_data/employees").newCalculation("function myCalculation3() { return 'Hello World!'; }", JSVariable.TEXT); var c = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myCalculation"); application.output("Name: " + c.getName() + ", Stored: " + c.isStored()); var allCalcs = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculations(); for (var i = 0; i < allCalcs.length; i++) { application.output(allCalcs[i]); }
getCalculations
()
Sample
var calc = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation() { return 123; }", JSVariable.INTEGER); var calc2 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation2() { return '20'; }"); var calc3 = solutionModel.getDataSourceNode("db:/example_data/employees").newCalculation("function myCalculation3() { return 'Hello World!'; }", JSVariable.TEXT); var c = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myCalculation"); application.output("Name: " + c.getName() + ", Stored: " + c.isStored()); var allCalcs = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculations(); for (var i = 0; i < allCalcs.length; i++) { application.output(allCalcs[i]); }
getDataSource
()
Sample
var nodeDataSource = solutionModel.getDataSourceNode("db:/example_data/customers").getDataSource();
getMethod
(name)
Sample
var method = solutionModel.getDataSourceNode("db:/example_data/orders").newMethod("function doubleSize() { return 2*getSize(); }"); application.output('Doubled orders for this customer: '+customers_to_orders.doubleSize())
JSMethod[]
getMethods
()
Sample
var method = solutionModel.getDataSourceNode("db:/example_data/orders").newMethod("function doubleSize() { return 2*getSize(); }"); application.output('Doubled orders for this customer: '+customers_to_orders.doubleSize())
newCalculation
(code)
Parameters
{String} code – The code of the calculation, this must be a full function declaration.
Sample
var calc = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation() { return 123; }", JSVariable.INTEGER); var calc2 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation2() { return '20'; }"); var calc3 = solutionModel.getDataSourceNode("db:/example_data/employees").newCalculation("function myCalculation3() { return 'Hello World!'; }", JSVariable.TEXT); var c = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myCalculation"); application.output("Name: " + c.getName() + ", Stored: " + c.isStored()); var allCalcs = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculations(); for (var i = 0; i < allCalcs.length; i++) { application.output(allCalcs[i]); }
newCalculation
(code, type)
Sample
var calc = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation() { return 123; }", JSVariable.INTEGER); var calc2 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation2() { return '20'; }"); var calc3 = solutionModel.getDataSourceNode("db:/example_data/employees").newCalculation("function myCalculation3() { return 'Hello World!'; }", JSVariable.TEXT); var c = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myCalculation"); application.output("Name: " + c.getName() + ", Stored: " + c.isStored()); var allCalcs = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculations(); for (var i = 0; i < allCalcs.length; i++) { application.output(allCalcs[i]); }
newMethod
(code)
Parameters
{String} code – the specified code for the foundset method
Sample
var method = solutionModel.getDataSourceNode("db:/example_data/orders").newMethod("function doubleSize() { return 2*getSize(); }"); application.output('Doubled orders for this customer: '+customers_to_orders.doubleSize())
removeCalculation
(name)
Parameters
{String} name – the name of the calculation to be removed
Returns
Boolean – true if the removal was successful, false otherwise
Sample
var calc1 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation1() { return 123; }", JSVariable.INTEGER); var calc2 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myCalculation2() { return '20'; }"); var c = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myCalculation1"); application.output("Name: " + c.getName() + ", Stored: " + c.isStored()); solutionModel.getDataSourceNode("db:/example_data/customers").removeCalculation("myCalculation1"); c = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myCalculation1"); if (c != null) { application.output("myCalculation could not be removed."); } var allCalcs = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculations(); for (var i = 0; i < allCalcs.length; i++) { application.output(allCalcs[i]); }
removeMethod
(name)
Parameters
{String} name – the name of the method to be removed
Returns
Boolean – true if the removal was successful, false otherwise
Sample
var method1 = solutionModel.getDataSourceNode("db:/example_data/customers").newMethod("function myFoundsetMethod1() { return 123; }"); var method2 = solutionModel.getDataSourceNode("db:/example_data/customers").newCalculation("function myFoundsetMethod2() { return '20'; }"); var m = solutionModel.getDataSourceNode("db:/example_data/customers").getMethod("myFoundsetMethod1"); application.output("Name: " + m.getName()); solutionModel.getDataSourceNode("db:/example_data/customers").removeMethod("myFoundsetMethod1"); m = solutionModel.getDataSourceNode("db:/example_data/customers").getCalculation("myFoundsetMethod1"); if (m != null) { application.output("myFoundsetMethod1 could not be removed."); } var allMethods = solutionModel.getDataSourceNode("db:/example_data/customers").getMethod(); for (var i = 0; i < allMethods; i++) { application.output(allMethods[i]); }