How to write script Include to do addition of two numbers and glideajax.

Kapil5
Kilo Explorer

How to get the sum of two numbers using script include.

1 ACCEPTED SOLUTION

Hitoshi Ozawa
Giga Sage
Giga Sage

Create 3 variables: field1, field2, sum. Set Validation Regex on all fields to be "Number" and also set Default Values on Field1 and Field2 to be 0 and also check "Mandatory" on those field1 and field2.

Client Script:

function onChange(control, oldValue, newValue, isLoading) {
    if (isLoading || newValue == '') {
        return;
    }
    var ga = new GlideAjax('calculator');
    ga.addParam('sysparm_name', "calculatesum");
    ga.addParam('sysparm_field1', g_form.getValue("field1"));
	ga.addParam('sysparm_field2', g_form.getValue("field2"));
    ga.getXMLAnswer(function(response) {
        g_form.setValue('sum', response);
    });
}

Script Include:

var calculator = Class.create();
calculator.prototype = Object.extendsObject(AbstractAjaxProcessor, {
    calculatesum: function() {

        var number1 = parseInt(this.getParameter('sysparm_field1'));
        var number2 = parseInt(this.getParameter('sysparm_field2'));

        return (number1 + number2).toString();
    },

    type: 'calculator'
});

 

View solution in original post

3 REPLIES 3

Tony Chatfield1
Kilo Patron

Hi, you may need to clarify your question as I am not sure it's intent is clear.
integer addition in javascript (server side or client side) is simply sum = N + N
ie var a = 1; var b = 2; var c = a + b

https://www.w3schools.com/js/js_arithmetic.asp

The SN Nerd
Giga Sage
Giga Sage

As Tony has mentioned, you can calculate the sum of two numbers client-side (no need for GlideAjax + Script Include).

For GlideAjax examples, see here

 


ServiceNow Nerd
ServiceNow Developer MVP 2020-2022
ServiceNow Community MVP 2019-2022

Hitoshi Ozawa
Giga Sage
Giga Sage

Create 3 variables: field1, field2, sum. Set Validation Regex on all fields to be "Number" and also set Default Values on Field1 and Field2 to be 0 and also check "Mandatory" on those field1 and field2.

Client Script:

function onChange(control, oldValue, newValue, isLoading) {
    if (isLoading || newValue == '') {
        return;
    }
    var ga = new GlideAjax('calculator');
    ga.addParam('sysparm_name', "calculatesum");
    ga.addParam('sysparm_field1', g_form.getValue("field1"));
	ga.addParam('sysparm_field2', g_form.getValue("field2"));
    ga.getXMLAnswer(function(response) {
        g_form.setValue('sum', response);
    });
}

Script Include:

var calculator = Class.create();
calculator.prototype = Object.extendsObject(AbstractAjaxProcessor, {
    calculatesum: function() {

        var number1 = parseInt(this.getParameter('sysparm_field1'));
        var number2 = parseInt(this.getParameter('sysparm_field2'));

        return (number1 + number2).toString();
    },

    type: 'calculator'
});