Q:

recalc function not firing as described

I have a recalc function on one of my client scripts that's deployed on Sales Orders. By definition, the recalc client event should only fire "after a sublist change, but only if the sublist change causes the total to change"; however, I've found that this is not the case. Simply clicking on a line item and then clicking the blue "OK" button is causing my recalc function to fire. Simply selecting an item and subsequently clicking "OK" does not cause any totals to change, thus it shouldn't be causing the recalc function to fire, correct? Why is this happening and how do I fix it?

A:

The behavior you are describing is intended by NetSuite - their "change" and your "change" don't necessarily mean the same thing. Even though you didn't necessarily change anything on the line, NS's UI is dumb to that and knows that you could have, so they recalc anyway. 
Unfortunately, I don't think there is a way for you to get around this.
I assume you have a script running on recalc that takes too long and you'd like to speed things up, so perhaps there's a way to look at that script instead and refactor it to perform better?

