Calculate two fields and autopopulate sum

bindu999
Tera Contributor

Hi,

 

    I'm using client script to calculate the value of a+b and get total sum value in the single line text box. This script is not working for me. can you help me

 I'm using 2 select box'es 

a Select Box has option yes or no  (Yes value as 10 ; No Value as 5)

b Select Box has option yes or no (Yes value as 10 ; No Value as 5)

 

I'm using C as a single line text box I need to get the score of what the user selects.

If Select Yes in A; Yes in B; 

It should autopopulate C as 10

Client Script:

function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
var xyz ='';
var X = g_form.getValue('a');
alert('a');
var Y = g_form.getValue('b');
var Z = g_form.getValue('c');

xyz = X+Y+Z;

g_form.setValue('score', xyz);
alert('xyz');

return;
}


}

 

Please Help!!

 

Thank you!!!

1 ACCEPTED SOLUTION

Hi @bindu999 

 

Finally Im here with an answer,

That is you have to write two Onchange client scripts() for two variables ie, var1,var2.

I have tried in my PDI its working as you expected.

Im posting the screenshots as well..

Let me know if you still facing difficulty..

 

Code:

Onchange()

function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}

if (newValue != oldValue && newValue != '') {

 

var f1 = g_form.getValue('variable1');

var f2 = g_form.getValue('variable2');

if (f1 != '' && f2 != '') {

g_form.setValue('result', parseInt(f1) + parseInt(f2));

}

}
}

 

PFA:

find_real_file.pngfind_real_file.png

 

Thanks,

Murthy

Thanks,
Murthy

View solution in original post

21 REPLIES 21

Yeah, i verified and i gave the names as a, b,c

 

and also i made the changes i changed variable name from empty to a.

Now when i'm selecting options in A either as Yes or No it's giving me NaN

Yes it will give you NaN because you select some value in a which can be parsed to Int.

But the fields b and c has value None which cannot be parsed to Int. so is your error.

 

Make sure you select B and C variables first if your client script is on A

 

Use this updated script:

function onChange(control, oldValue, newValue, isLoading, isTemplate) {
    if (isLoading || newValue === '') {
        return;
    }

    var X = g_form.getValue('variables.a');
    var Y = g_form.getValue('variables.b');
    var Z = g_form.getValue('variables.c');
    var xyz = 0;
    if (X != '') {
        xyz += parseInt(X);
    }
    if (Y != '') {
        xyz += parseInt(Y);
    }
    if (X != '') {
        xyz += parseInt(Z);
    }


    g_form.setValue('variables.score', xyz);
    alert(xyz);


}

yeah i tried this script but still no luck Mahesh.

First selected options in B and C and then A

 it is now showing the value as 0 when i select either Yes or No in the Field A

 

Is it not taking the backend value of a,b,c?

Hi @bindu999 

 

Finally Im here with an answer,

That is you have to write two Onchange client scripts() for two variables ie, var1,var2.

I have tried in my PDI its working as you expected.

Im posting the screenshots as well..

Let me know if you still facing difficulty..

 

Code:

Onchange()

function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}

if (newValue != oldValue && newValue != '') {

 

var f1 = g_form.getValue('variable1');

var f2 = g_form.getValue('variable2');

if (f1 != '' && f2 != '') {

g_form.setValue('result', parseInt(f1) + parseInt(f2));

}

}
}

 

PFA:

find_real_file.pngfind_real_file.png

 

Thanks,

Murthy

Thanks,
Murthy

Thank you very much Murthy. It worked.