Use of History Preserving Transform
It is used to preserve the history of the source records.
If the source row has operation code of Insert/Update then it inserts a new record in the target table.
We are doing a scenario where we want to insert the updated record into target table to preserve the history of the source records.
1) Create project, job, workflow & dataflow as usual.
2) Drag a source table to dataflow. Its contents are as follows.
3) Drag a target table to dataflow. Its contents are as follows.
4) Drag query, Table-Comparison, History Preserving blocks as shown in the figure.
5) Open Query & do mappings as you do normally.
6) Open Table_Comparison block & enter all the properties.
7) Similarly provide details for the History_Preserving block.
8) Now after this we have updated 1st 3 rows of source records & 4th row is deleted .
Fields where changes are made are circled with the red marks as seen in the above figure.
9) Validate & Execute the job.
10) 3 new records got added in the target table as shown below.
You can see that new entry for updated record is made in the target table along with the
‘Y’ flag & new END_DATE as ‘9000.12.31’ & the flag of the original records are changed to ‘N’.
So in this way History Preserving block is useful in preserving the History if the source records.