A revaluation is performed to know the exact value of the open transactions ( Payables and receivables) of a company within a selected date range(generally month or year).
It does not take into account the impact of related transactions that occur in a period after the selected date range.
For example, an invoice recorded in January is paid in July. If you reopen the date range in January when the invoice was recorded and then revalue open currency balances “as-of” June, you will see an unrealized gain amount posted in June.
and once the revaluation is performed, NetSuite posts the difference between the exchange rate value on the created date of transaction and the date on which revaluation is done. It automatically posts the values to Unrecognized Gain/Loss account.