Dalam penggunaan object lookup expression di mapping (owb 11g, kurang tahu di versi sebelum ataupun sesudahnya) belum otomatis field output muncul dengan sendirinya. Tidak seperti tool etl yang lain yang sudah baik, tentunya ketika kita men-drag ke object kemudian sebelah kirinya sudah muncul dengan nama sama. Di owb 11g ini, masih harus mengetik sendiri secara manual, tentunya akan merepotkan, belum lagi salah menulis dan type data dan ukuran salah. Untuk mengurangi digunakanlah script dengan menggunakan omb plus.
Contoh berikut masih menggunakan nama standard ingrp1 dan outgrp1, apabila anda mengcode sendiri, tentunya namanya juga menyesuaikan. :)
Syntax:
# Change the following parameters (the map, the source operator name, its group name and the new expression operator name):
set source_map [Nama Mapping]
set expression_oper LOOKUP_EXP
set atts [OMBRETRIEVE MAPPING '$source_map' OPERATOR '$expression_oper' GROUP 'INGRP1' GET ATTRIBUTES]
foreach att $atts {
set l_adty [OMBRETRIEVE MAPPING '$source_map' OPERATOR '$expression_oper' GROUP 'INGRP1' ATTRIBUTE '$att' GET PROPERTIES (DATATYPE)]
set l_alen [OMBRETRIEVE MAPPING '$source_map' OPERATOR '$expression_oper' GROUP 'INGRP1' ATTRIBUTE '$att' GET PROPERTIES (LENGTH)]
set l_apre [OMBRETRIEVE MAPPING '$source_map' OPERATOR '$expression_oper' GROUP 'INGRP1' ATTRIBUTE '$att' GET PROPERTIES (PRECISION)]
set l_asca [OMBRETRIEVE MAPPING '$source_map' OPERATOR '$expression_oper' GROUP 'INGRP1' ATTRIBUTE '$att' GET PROPERTIES (SCALE)]
OMBALTER MAPPING '$source_map' ADD ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper'
OMBALTER MAPPING '$source_map' MODIFY ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper' SET PROPERTIES (DATATYPE) VALUES ('$l_adty')
if {[regexp "NUM." $l_adty] > 0} {
OMBALTER MAPPING '$source_map' MODIFY ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper' SET PROPERTIES (PRECISION) VALUES ('$l_apre')
OMBALTER MAPPING '$source_map' MODIFY ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper' SET PROPERTIES (SCALE) VALUES ('$l_asca')
}
if {[regexp ".CHAR" $l_adty] > 0} {
OMBALTER MAPPING '$source_map' MODIFY ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper' SET PROPERTIES (LENGTH) VALUES ('$l_alen')
}
if {[regexp "CHAR" $l_adty] > 0} {
OMBALTER MAPPING '$source_map' MODIFY ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper' SET PROPERTIES (LENGTH) VALUES ('$l_alen')
}
OMBALTER MAPPING '$source_map' MODIFY ATTRIBUTE '$att' OF GROUP 'OUTGRP1' OF OPERATOR '$expression_oper' SET PROPERTIES (EXPRESSION) VALUES ('INGRP1.$att')
}
Terbatasnya pengetahuan teknologi informasi di Indonesia khususnya business intelligence data warehouse data mining menjadi perhatian tersendiri, sehingga berinisiatif memunculkan web-blog ini. Sekedar sharing sistem datawarehouse, datamart, ataupun business intelligent mulai dari ER Desain/Star Schema,ETL, Reporting, hingga training. Tool yang digunakan (Data Stage, (Kettle, Mondrian, BI Server, Weka) Pentaho , Jasper, Sagent, Business Object, dll)
Tidak ada komentar:
Posting Komentar