Expand my Community achievements bar.

SOLVED

Calculation No Longer Works if a Value in a Field is deleted

Avatar

Level 3

I've got an issue where a FormCalc calculation stops working if I delete a value in a field that is part of the formula.

Here's a link to the test form:  https://www.dropbox.com/s/3w6weyd3bp5dfss/Test_Totals.pdf?dl=0

When I enter the values in the table as below, the calculation in the CASH DUE EMPLOYEE field works fine.

Total_B.jpg

If I delete the value in the CASH ADVANCE field, the calculation in the CASH DUE EMPLOYEE field doesn't recalculate.  In the below example, I deleted the cash advance, so the CASH DUE EMPLOYEE should be $100, but yet the field goes blank.

Total_A.jpg

Here's the FormCalc script in the CASH DUE EMPLOYEE field:

if (Table1.Row1.Total_E_Exp.rawValue > Table1.Row2.Cash_Adv.rawValue) then

   Cash_Due_Employee.rawValue = Table1.Row1.Total_E_Exp.rawValue - Table1.Row2.Cash_Adv.rawValue

else

   Cash_Due_Employee.rawValue = 0

endif

I just can't figure out why the field isn't recalculating after I delete the value in the CASH ADVANCE field.

Any help would be appreciated.

Thanks

1 Accepted Solution

Avatar

Correct answer by
Level 4

Not sure why FornCalc is not working, but same logic works fine JavaScript.

Check the form at following link:

Dropbox - Test_Totals2.pdf

View solution in original post

4 Replies

Avatar

Correct answer by
Level 4

Not sure why FornCalc is not working, but same logic works fine JavaScript.

Check the form at following link:

Dropbox - Test_Totals2.pdf

Avatar

Level 2

use "Number Fields" from the object pallette (NOT text fields) - amend settings in Patterns > "allow zero" + set "currency{}" as data format.

deleting field value will produce this display value "$0.00" and NOT " " [AKA 'empty field']

Avatar

Level 3

PDFGuru,

Thanks for the info.  I switched the calculation from Formcalc to JavaScript and it works fine now.

Avatar

Level 3

XIIIX,

I was using Numeric fields, along with the same pattern setup, but no luck.  Switching to Javascript corrected the issue.