Hi,
I have a normaliser transformation used to normalise a denormalised record into 7 new records on a staging table. In this way I have the same primary key evt_num with 7 records each with a single piece of denormalised data.
e.g.
source
evt_num, attr_1, attr_2, attr_3,attr_4
target
evt_num, attr_1
evt_num, attr_2
evt_num, attr_3
evt_num, attr_4
However the complication is that following the denormalisation when they hit the staging table the all result in the same primary key and update each other resulting in the end result of only 1 row instead of 7. I therefore have to flag each one up to change the primary key to a unique value.
e.g
evt_num, attr_1, val_1
evt_num, attr_2, val_2
evt_num, attr_3, val_3 etc.
I was thinking about tagging each field with a unique value prior to entering the normaliser and then looking for the instr of that value to assign its unique value.
e.g.
prior normaliser:
evt_num, attr_1 || '_1'
evt_num, attr_2 || '_2'
evt_num, attr_3 || '_3'
after normaliser:
decode(instr(output_port), '_1', 'val_1', '_2', 'val_2')
etc.
However I notice on the normaliser there is a field prefixed GK_output_port and GCID_output_port.
Can't find anything about these in the help filed. Do they tag rows with some kind of unique Id that could be used to identify a row or are they for inforamtica's use only.
cheers
simmo
I have a normaliser transformation used to normalise a denormalised record into 7 new records on a staging table. In this way I have the same primary key evt_num with 7 records each with a single piece of denormalised data.
e.g.
source
evt_num, attr_1, attr_2, attr_3,attr_4
target
evt_num, attr_1
evt_num, attr_2
evt_num, attr_3
evt_num, attr_4
However the complication is that following the denormalisation when they hit the staging table the all result in the same primary key and update each other resulting in the end result of only 1 row instead of 7. I therefore have to flag each one up to change the primary key to a unique value.
e.g
evt_num, attr_1, val_1
evt_num, attr_2, val_2
evt_num, attr_3, val_3 etc.
I was thinking about tagging each field with a unique value prior to entering the normaliser and then looking for the instr of that value to assign its unique value.
e.g.
prior normaliser:
evt_num, attr_1 || '_1'
evt_num, attr_2 || '_2'
evt_num, attr_3 || '_3'
after normaliser:
decode(instr(output_port), '_1', 'val_1', '_2', 'val_2')
etc.
However I notice on the normaliser there is a field prefixed GK_output_port and GCID_output_port.
Can't find anything about these in the help filed. Do they tag rows with some kind of unique Id that could be used to identify a row or are they for inforamtica's use only.
cheers
simmo