The problem is whenever the Version Code field (which is Field Update Action) is getting set through workflow rule trigger is getting fired thrice and when it is getting fired for the second time it is showing us the proper values in oldMap and newMap. (See #2 and #3 in screenshot).
And whenever a simple field in an opportunity like a cell phone is updated we are getting proper value when the trigger is getting called for the first time.(See #1 in the screenshot).
Now, it is getting very difficult for us to identify when to consider (i.e. when the trigger is getting fired for the first time or second time) value of oldMap and newMap for further processing.
Below is the screenshot of Tracked values of oldMap and newMap when trigger is getting fired multiple times
8 answers
Okay, put Static fields to stop recursive triggers and am just hoping your issues shall resolve itself, otherwise let me know the issue details.