Skip to main content
Participant
May 1, 2024
Answered

Calculation script to increment after specific variable entered

  • May 1, 2024
  • 2 replies
  • 883 views

Hello!

 

I am working on a PDF form and need help with a calculation script. A user must enter a variable integer in Line A. Based off that input a value populates in another field, Line B. If the variable >=6, then it increments by a set value (See table below, note: 1-6 do not increment based off the value after 6).

 

So far, I have created this but am certain it's not correct and lost for the incrementing part:
 
var a = this.getField("line_A").value; //variable for Line A
if (a == "1") event.value = 2000;
else if (a == "2") event.value = 2848;
else if (a == "3") event.value = 3694;
else if (a == "4") event.value = 4540;
else if (a == "5") event.value = 5390;
else if (a == "6") event.value = 6234;
else if (a >= "7") event.value = 7570;
else {
event.value = "";}

Any help is greatly appreciated!!!

This topic has been closed for replies.
Correct answer Nesa Nurani

If you add 848 to any value after 6 why did you add 7570, shouldn't it be 7082 for 7, and 7930 for 8...etc?

Here is the script that will add 848 to values after 6:

var a = Number(this.getField("line_A").valueAsString);
var values = [2000, 2848, 3694, 4540, 5390, 6234];
var increment = 848;

if (a > 0) {
 if (a <= 6) {
  event.value = values[a - 1];} 
 else {
  event.value = values[5] + increment * (a - 6);}} 
else {
 event.value = "";}

2 replies

Nesa Nurani
Community Expert
Nesa NuraniCommunity ExpertCorrect answer
Community Expert
May 2, 2024

If you add 848 to any value after 6 why did you add 7570, shouldn't it be 7082 for 7, and 7930 for 8...etc?

Here is the script that will add 848 to values after 6:

var a = Number(this.getField("line_A").valueAsString);
var values = [2000, 2848, 3694, 4540, 5390, 6234];
var increment = 848;

if (a > 0) {
 if (a <= 6) {
  event.value = values[a - 1];} 
 else {
  event.value = values[5] + increment * (a - 6);}} 
else {
 event.value = "";}
ls_rbls
Community Expert
Community Expert
May 2, 2024

Beautiful script @Nesa Nurani , thank you as usual  for catching these details.

ls_rbls
Community Expert
Community Expert
May 2, 2024

Hi @Talia5EC7 ,

 

You may try something like this as the custom calculation script of line_B field:

 

var a = this.getField("line_A").value;

if (a !== "") {

if (a == 0)  {event.value = 0}
if (a == 1)  {event.value = 2000}
if (a == 2)  {event.value = 2848}
if (a == 3)  {event.value = 3694}
if (a == 4)  {event.value = 4540}
if (a == 5)  {event.value = 5390}
if (a == 6)  {event.value = 6234}
if (a >= 7)  {event.value = 7570}

} else {

event.value =""

}