рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рд╕реЛрд▓реНрдЬрд░: рдбреЗрдЯрд╛рд╕реНрдЯреЗрдЬ рдореЗрдВ рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░

рдЖрдИрдмреАрдПрдо рдбреЗрдЯрд╛рд╕реНрдЯреЗрдЬ рдХреА рдИрдЯреАрдПрд▓ рдХреНрд╖рдорддрд╛рдПрдВ рдбреЗрдЯрд╛ рдПрдХреАрдХрд░рдг рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдХрд╡рд░ рдХрд░рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди, рдЬрд▓реНрджреА рдпрд╛ рдмрд╛рдж рдореЗрдВ, рд╕реА рдореЗрдВ рд╕рдорд╛рдирд╛рдВрддрд░ рд░реВрдЯреАрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдпрд╛ рдЬрд╛рд╡рд╛ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдмрд╛рдж рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЬрд╛рд╡рд╛ рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╛ рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рдЗрдВрдЯред рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдмреЗрд╕рд┐рдХ рднрд╛рд╖рд╛ рдХреА рд╕реАрдорд┐рдд рд╕реБрд╡рд┐рдзрд╛рдПрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдкреБрд░рд╛рдиреА рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЧрдВрднреАрд░ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, XML рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рдпрд╛, рджреВрд╕рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмреЗрд╕рд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдордбреА 5 рд╣реИрд╢рд┐рдВрдЧ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рд▓рдЧреЗрдЧрд╛ред )ред
рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдореИрдВ рдПрдХ рдХрд╛рдлреА рд▓рдЪреАрд▓рд╛ рдЙрдкрдХрд░рдг рд░рдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЗрд╕рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреЗрдЯрд╛рд╕реНрдЯреЗрдЬ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧреА рдФрд░ рдХрд░реАрдмреА рджреЛрд╕реНрдд рдХреЛ рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЧрдпрд╛ рдерд╛ред рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред

рдХреНрдпреЛрдВ рдЧреНрд░реЛрд╡реА рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рднрд╛рд╖рд╛ рдХрд╛рдлреА рд▓рдЪреАрд▓реА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЬрд╛рд╡рд╛ рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдРрдб-рдСрди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд╛рдн рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:


рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЗ рдкреАрдЫреЗ рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдореЗрдВ рдЧреНрд░реВрд╡реА рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЪреВрдВрдХрд┐ рдЗрд╕ рдЪрд░рдг рдореЗрдВ рдХреЛрдб рд╕реАрдзреЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрдк рдЦреБрдж рддрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ - рдЧреНрд░реВрд╡реА рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдЬреЛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ, рдиреМрдХрд░реА рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рдЖрддрд╛ рд╣реИ рдпрд╛ рдЬреЛ рдЖрдк рдЦреБрдж рд▓рд┐рдЦреЗрдВрдЧреЗред
рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдпрд╣ рд╕реАрдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред рдЬреЛ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдореИрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдкреНрд░рд▓реЗрдЦрди рдкрд░реНрдпрд╛рдкреНрдд рд╡рд┐рд╡рд░рдг рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, Java рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдорд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдРрд╕реА рдХреНрд▓рд╛рд╕ рдмрдирд╛рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдЬреЛ рд╕реНрдЯреЗрдЬ рдХреНрд▓рд╛рд╕ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реЗ:
 import com.ascentialsoftware.jds.* ; class MyJavaTransformer extends Stage{ } 

рдФрд░ рдЖрдкрдХреЛ рддреАрди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рддрд░реАрдХреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдкреНрд░рд╛рд░рдВрдн (), рдкреНрд░рдХреНрд░рд┐рдпрд╛ () рдФрд░ рд╕рдорд╛рдкреНрдд ()ред
рдкреНрд░рд╛рд░рдВрднрд┐рдХ () рд╡рд┐рдзрд┐ рдХреЛ рд╕реНрдЯреНрд░реАрдо рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреА рдШреЛрд╖рдгрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЗ рдЬреАрд╡рди рднрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддреЗ рд╣реИрдВред
рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд▓рд╛рдЗрди рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ () рд╡рд┐рдзрд┐ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЖрдкрдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рддрд░реНрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЯрд░реНрдорд┐рдиреЗрдЯ () рдкрджреНрдзрддрд┐ рдХреЛ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рдЕрдВрдд рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЕрд╕реНрдерд╛рдпреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░рд┐рдпрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ (рд╣рд╛рдВ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛ рдореЗрдВ рдХреЛрдИ рд╡рд┐рдзреНрд╡рдВрд╕рдХ рдирд╣реАрдВ рд╣реИрдВ, рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдИ рдХрдЪрд░рд╛: рдлрд╛рдЗрд▓реЗрдВ, рдЯреЗрдмрд▓, рдЖрдк рдХрднреА рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ)ред
рд╕рдорд╛рдирд╛рдВрддрд░ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдореЛрдб рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рджреЗрдВ: DataStage рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдЬрд╛рд╡рд╛ рдорд╢реАрди рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЪрд╛рд░ рдиреЛрдб рд╣реИрдВ, рддреЛ рдбреЗрдЯрд╛рд╕реНрдЯреЗрдЬ рдЪрд╛рд░ рдЬреЗрд╡реАрдПрдо рд▓реЙрдиреНрдЪ рдХрд░реЗрдЧрд╛ред рдЪреВрдВрдХрд┐ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрдиреЗрдВ рдЕрд▓рдЧ-рдерд▓рдЧ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рдереНрд░реЗрдбреНрд╕ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХреЗ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХреЗ рд▓рд┐рдП рд╕реНрд╡реАрдХрд╛рд░реНрдп рддрд░реАрдХреЗ рдирд╣реАрдВ рд╣реИрдВред

рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдЬрд╛рд╡рд╛ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦрд╛рдХрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ:
 import com.ascentialsoftware.jds.*; public class MyJavaTransformer extends Stage { public void initialize() { trace("Init"); } public void terminate() { trace("Terminate"); } public int process() { return 0; } } 

рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдФрд░ рдЫреЛрдбрд╝рдиреЗ рд╡рд╛рд▓реА рд░реЗрдЦрд╛рдУрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкрдВрдХреНрддрд┐ рд╡рд╕реНрддреБ рдФрд░ рджреЛ рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: readRow () рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдФрд░ рд░рд╛рдЗрдЯрд░ () рд▓рд┐рдЦрдиреЗ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдПред
рдкрдВрдХреНрддрд┐ рд╡рд╕реНрддреБ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдо рдХреЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рднреА рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрди рдХреЙрд▓рдореЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдирд┐рдореНрди рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕рднреА рд╕реНрддрдВрднреЛрдВ рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд╡рд░реНрдХрд░ рдХреЗ рдкреНрд░рдХрд╛рд░ "рдЬрд╛рд╡рд╛ рд╕реЗ рд╣реИрд▓реЛ", рдЕрдиреНрдп рд╕рднреА рд╕реНрддрдВрднреЛрдВ рдХреЛ "рдмрджрд▓рд╛рд╡" рдХреЗ рдмрд┐рдирд╛ "рдмрджрд▓рд╛рд╡" рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:

 public int process() { Row inputRow=readRow() ; if (inputRow == null) //     return OUTPUT_STATUS_END_OF_DATA; Row outputRow=createOutputRow(); for (int i=0;i<inputRow.getColumnCount();i++) { Object column=inputRow.getValueAsSQLTyped(i); if (column instanceof java.lang.String) outputRow.setValueAsSQLTyped(i, тАЬHello from JavaтАЭ); else outputRow.setValueAsSQLTyped(i, column); } writeRow(outputRow); } 


рдиреЛрдЯ : рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдорд░ рдХреНрд▓рд╛рд╕ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, tr4j.jar рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдХреНрд▓рд╛рд╕ рдкрде рдпрд╛ рдЕрдкрдиреЗ IDE рдореЗрдВ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВред
рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рддреИрдпрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Groovy Transformer рдПрдХ JavaTransformer рд╣реИ рдЬреЛ рдордХреНрдЦреА рдкрд░ Groovy рдХреЛрдб рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдирд┐рдпрдорд┐рдд рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд╕реБрдЧрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рд╢реБрдЧрд░ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╕реНрдЯреЗрдЬ рдХреНрд▓рд╛рд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рддреЛ, рд╣рдорд╛рд░реЗ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдЪрд╛рд╣рд┐рдП:


рдЗрди рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕реЗ рдЖрдк рдпрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: http://geckelberryfinn.ru/fr/GroovyTransformer.html ред (рд╕рд╛рд╡рдзрд╛рдиреА! рдпрд╣ рдЬрд╛рд╡рд╛ рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдорд░ рдЧреНрд░реВрд╡реА = рдореЗрдВ рднреА рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ), рдЕрдкрдШрдЯрди рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреА)ред

рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ:
рд╡рд╕реНрддреБрд╡рд┐рд╡рд░рдгрдЙрджрд╛рд╣рд░рдг
GTransformerрд╡рд╕реНрддреБред рдЗрд╕ рд╕реНрдЯреЗрдЬ рдХреНрд▓рд╛рд╕ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░реЗрдВред рдЗрд╕ рд╡рд░реНрдЧ рдХреЗ рд╕рднреА рддрд░реАрдХреЛрдВ рдФрд░ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╕рдорд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реИредGTransformer.createOutputRow ()
OutputMatchingHashMapред рдХреЙрд▓рдо рдХреЗ рдирд╛рдо рдФрд░ рдЙрдирдХреЗ рд╕реВрдЪрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВредOutputMatching.get (k);
OutputMatching.ID;
OutputMatching.LIBL;
рдореЗрдЯрд╛ рдбреЗрдЯрд╛HashMapред рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдХреЗ рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рдХреЙрд▓рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИредMetaData.ID.Description;
MetaData.ID.Derivation;
MetaData.ID.SQLType:
MetaData.ID.DataElementName;
OutputMetaDataHashMapред рд╡рд┐рдзрд┐рдкреВрд░реНрд╡рдХ рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдорд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реИOutputMetaData.ID.Description;
OutputMetaData.ID.Derivation;
OutputMetaData.ID.SQLType:
OutputMetaData.ID.DataElementName;
InputColumnsHashMapред рд╕рднреА рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдХреЙрд▓рдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВInputColumns.ID;
InputColumns.LIBL;
OutputRowsрд╕реВрдЪреА <, рд╣рд╢рдкрдк>ред рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рд▓рд╛рдЗрдиреЛрдВ рдХреА рд╕реВрдЪреАред рдЖрдк рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЖрдиреЗ рд╡рд╛рд▓реА рд▓рд╛рдЗрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЖрдиреЗ рд╡рд╛рд▓реА рд▓рд╛рдЗрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛредHashMap curRow = рдирдпрд╛ HashMap ();
outputRows [0] = curRow;
outputRows [0] .ID = 0;
outputRows [0] .LIBL = "рдкрд╣рд▓рд╛ рдЖрдЗрдЯрдо";


рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдмрдирд╛рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ:
  1. рдЖрдЙрдЯрдкреБрдЯрд░реЛрдЬрд╝ рдХреА рд╕реВрдЪреА рднрд░реЗрдВ;
  2. CreateOutputRow () рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж GTransformer рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд▓рд┐рдЦреЗрдВред


рдХрд┐рд╕ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ рдпрд╣ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрд╛рд╡рд╛ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдЪрд░рдг рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдЖрдмрд╛рдж рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛:

рдиреАрдЪреЗ рдореИрдВ рдЧреНрд░реВрд╡реА рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛:



рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ:
  1. рдЧреНрд░реВрд╡реА рд╣реИрдВрдбрдмреБрдХ: http://groovy.codehaus.org/Documentation
  2. рдЬрд╛рд╡рд╛ рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдорд░ рдЙрджрд╛рд╣рд░рдг: http://www.ibm.com/developerworks/data/library/techarticle/dm-1106etljob/index.html

Source: https://habr.com/ru/post/In163615/


All Articles