Not 100% clear to me:
Is it possible that an ID is delivered more than once during each day?
If yes, how can I distinguish them from one another?
Also, can it happen that a record gets a sysdate e.g. on May 23rd but arrives in the system on May 24th? This may mean that we cannot use this STATUS_D column to differentiate between records with the same ID.
from source ID would be unique.
and whenever we receive record from source, I will load it in history table with sysdate as status_D.
What I would try is to use a SQL transformation to UPDATE all existing records with ID ... (whatever your current ID happens to be) and then send the new record with status A to the target. As long as the SQL transformation is set to auto-commit all changes, by the time the new record gets inserted into the target table, the UPDATE statement should already be processed completely.