Hello ShawnHarmon,
I studied your graph and found a serie of misunderstandings.
I did not have your original files, but I could use the files you attached to your question on Forum. I noticed that your PrimaryKey values were not identical in either edges. Maybe in your original files they are identical?
I did not understand why you tried to use Denormalizer. As regards Denormalizer and all other components and Designer as a whole, consult our Users Guide at:
http://www.cloveretl.com/documentation/UserGuide/index.jsp?topic=/com.cloveretl.gui.docs/docs/index.html
Section concerning Denormalizer is the following:
http://www.cloveretl.com/documentation/UserGuide/topic/com.cloveretl.gui.docs/docs/denormalizer.html
I set Denormalizer to the PassThrough state. This way, all data goes throughout the component unchanged.
In your ExtMergeJoin I noticed that PrimaryKeys (integers originaly) are string after the component.
Also, your transformation in the form:
function integer transform() {
$.0.* = $1.*;
$.0.* = $0.*;
return ALL;
}
is OK.
It works with Inner join, Left outer join properly.
Nevertheless, when Join type is set to Full outer join, there is some bug, as some of the fields mapped from the input port 1 (slave port) (which is on the first row in the mappings) are missing in the output. This bug I will report.
To avoid this, you need to specify each field separately by now.
I hope I could explain to you some part of CloverETL Designer.
Please do not hesitate to study our Users Guide which can help you with many questions that may arise.
Best regards,