pernah bingung.. gimana sih ngubungin oracle form ama oracle report. gini nih..

misalnya kita punya form trus ada button yg fungsinya bakal nampilin report sesu ai dengan inputan kita yg di form. kita pengen lihat report pegawai2 yang bekerj a di perusahaan A dan di unit yg x atau dgn kriteria2 lain. jadi di trigger when button pressed, kita mendeclare sebuah variabel p_list dengan tipe paramlist. d ari namanya sih variabel ini bakalan nyimpan list parameter. dan emang iya sih.. :) setelah di declare di body plsql kita assign nilai p_list itu spti berikut: p_list:=Get_Parameter_list('tmpdata') biasanya ada tambahan kondisi yg bakal menghapus variabel ini jika memang setela h mengget parameter, ternyata didapati variabel bernilai null. if not id_null(p_list)then Destroy_Parameter_List(p_list); end if; kemudian akan diteruskan dgn kode berikut p_list :=Create_Parameter_List(tmpdata);-----> menciptakan atau mendaftarkan lis t parameter yg baru Add_Parameter(p_list,'CMP',TEXT_PARAMETER,:textitem1); Add_Parameter(p_list,'ORG_ID',TEXT_PARAMETER,:textitem2); 1 2 3 4 no1 adalah nama paramlistnya no2 adalah nama parameter yg akan menmpung inputan di form, setau saya sih nama parameter disini harus kita samakan dengan nama paramter yg diperlukan di oracle report. mis di report user parameter yg kita butuhkan comp_name, brarti di no2 ini yg kita buat adalah comp_name no3 adalah tipe field di form yg nilainya akan kita kirim ke report, bisa berupa text_item, display_item. check_box, dll tergantung yg kita buat di form. no 4 aadalah nama fieldnya, misalnya inputan kita bertipe text_item trus name(li hat di properties) nya itm_text2 maka isi no 4 adalah itm_text2 tsbt. setelah kita mengadd parameter2 yg perlu, ada dua tambahan parameter lagi Add_Parameter(pl_id, 'PARAMFORM', TEXT_PARAMETER, 'NO'); --->agar tampilan input an sperti di o.form tdk muncul lagi, jadi nilai dari form lgsung diproses dan yg keluar lgsung report Add_Parameter(pl_id, 'MAXIMIZE', TEXT_PARAMETER, 'YES');--->report yg dihasilkan otomatis dalam ukuran maximize dan yg terakhir: Run_Product(REPORTS,'PIM001', SYNCHRONOUS, RUNTIME, FILESYSTEM, pl_id, NULL); 1 2 3 4 5 6 7

Sign up to vote on this title
UsefulNot useful