1 / 52

Oracle : Form/Report Developer

Pertemuan 9. Oracle : Form/Report Developer. Dibuat oleh : Lis Suryadi , M.Kom. Materi : Membuat Form Entri Pelanggan. Sasaran Belajar. Agar mahasiswa : Dapat mengerti dan membuat form untuk membangun sebuah aplikasi dengan menggunakan objek-objek yang ada di Form Builder.

janna-ryan
Download Presentation

Oracle : Form/Report Developer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pertemuan 9 Oracle : Form/Report Developer Dibuatoleh : LisSuryadi, M.Kom

  2. Materi: Membuat Form EntriPelanggan

  3. Sasaran Belajar Agar mahasiswa : Dapat mengerti dan membuat form untuk membangun sebuah aplikasi dengan menggunakan objek-objek yang ada di Form Builder. Dapat mengerti dan memahami penggunakan perintah-perintah PL/SQL dan perintah-perintah Data Manipulation Language(DML) di dalam Form.

  4. Membuat Form Master Pelanggan Dengan Menggunakan Wizard Berikut ini adalah langkah-langkahnya : Dari Form Builder -> File -> New -> Form. Atau melalui Object Navigator.

  5. Langkah-1: Me-running OC4J Instance

  6. Sebelum Membuka Form Builder Running terlebih dulu OC4J Instance Caranya: Dari Oracle Developer Suite --> Forms Developer --> Start OC4J Instance, sehingga akan tampil kotak dialog seperti berikut :

  7. Langkah ke-2: Memanggil Forms Builder Dari : Start -> Program -> Oracle Developer Suite -> Forms Developer -> Forms Builder. Sehingga akan tampil kotak dialog sebagai berikut :

  8. Memanggil Form Builder

  9. Langkah ke-3: Login Koneksi

  10. Langkah ke-4: Membuat Form Baru

  11. Membuat Form Baru 2 1

  12. Membuat Object Alert untuk pesan 2 1

  13. Membuat Data Block Menggunakan Wizard

  14. Membuat Data Block Menggunakan Wizard

  15. Membuat Data Block Menggunakan Wizard

  16. Memilih Tipe Data Block

  17. Mencari Tabel atau View di Database

  18. Memilih Tabel atau View dari Database

  19. Memilih Kolom yang akan Ditampilkan di Layout Editor

  20. Memilih Kolom yang akan Ditampilkan di Layout Editor

  21. Memberi Nama Data Block 1 2

  22. Memanggil Layout Wizard

  23. Memilih Canvas yang akan digunakan untuk Layout Data Block

  24. Memilih Item-item yang akan tampil di Frame

  25. Memilih Item-item yang akan tampil di Frame

  26. Menyetting Label, Panjang dan Lebar Item 1 2

  27. Memilih Style Layout untuk Frame 1 2

  28. Menyetting Judul Frame 1 2

  29. Tahap Akhir Membuat Data Block Menggunakan Wizard

  30. Hasil Akhir Layout Menggunakan Wizard

  31. Buatlah Disain Form Seperti Berikut :

  32. Block PL/SQL ketika Trigger When-New-Form-Instance DECLARE judul VARCHAR2(100); BEGIN :global.ubah:='T‘; judul :=‘Form Entri Pelanggan‘; SET_WINDOW_PROPERTY(WINDOW1, WINDOW_STATE, MAXIMIZE); SET_WINDOW_PROPERTY(‘WINDOW1’, TITLE, judul); -- Memanggil prosedur counter kode pelanggan COUNTER_KDPLG(); GO_ITEM('blokplg.kdplg'); SET_ITEM_PROPERTY(‘blokplg.bkeluar',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bhapus',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bbatal',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bsimpan',ENABLED,PROPERTY_FALSE); END;

  33. Membuat Prosedur Counter_KdPlg PROCEDURE COUNTER_KDPLG IS x NUMBER:=0; vnomor CHAR(5); BEGIN BEGIN SELECT MAX(TO_NUMBER(SUBSTR(kdplg,2,5))) INTO x FROM pelanggan ORDER BY kdplg; EXCEPTION WHEN NO_DATA_FOUND THEN x:=0; END; ---(***)

  34. Membuat Procedure Counter_KdPlg ---(***) Koding program lanjutan … x:=NVL(x,0)+1; IF LENGTH(x) = 1 THEN vnomor :='P'||'000'||TO_CHAR(x); ELSIF LENGTH(x) = 2 THEN vnomor :='P'||'00'||TO_CHAR(x); ELSIF LENGTH(x) = 3 THEN vnomor :='P'||'0'||TO_CHAR(x); ELSE vnomor :=TO_CHAR(x); END IF; :blokplg.kdplg:= vnomor; END;

  35. Block PL/SQL pada object TxtKdBrgketika Trigger Key-Next-Item DECLARE ada NUMBER:=0; BEGIN BEGIN SELECT COUNT(*) INTO ada FROM pelanggan WHERE kdplg=:blokplg.kdplg; EXCEPTION WHEN NO_DATA_FOUND THEN ada:=0; END; IF ada <> 0 THEN :global.ubah :='T'; --- (***)

  36. Block PL/SQL pada object KdPlg ketika Trigger Key-Next-Item --- (***) Koding program lanjutan …. BEGIN SELECT nmplg, alamat INTO :blokplg.nmplg, :blokplgn.alamat FROM pelanggan WHERE kdplg=:blokplg.kdplg; EXCEPTION WHEN NO_DATA_FOUND THEN :blokplg.nmplg :=‘ '; :blokplg.alamat :=‘ '; END; GO_ITEM('blokplg.nmplg'); SET_ITEM_PROPERTY('blokplg.bhapus',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bbatal',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY(‘blokplg.bkeluar',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bsimpan',ENABLED,PROPERTY_TRUE);

  37. Block PL/SQL pada object KdPlg ketika Trigger Key-Next-Item ---(***) Koding program lanjutan ELSE :global.ubah:='F'; GO_ITEM('blokplg.nmplg'); SET_ITEM_PROPERTY('blokplg.bsimpan',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bbatal',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bkeluar',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bhapus',ENABLED,PROPERTY_FALSE); END IF; END;

  38. Block PL/SQL pada object BSimpan ketika Trigger When-Button-Pressed DECLARE ada NUMBER:=0; psn NUMBER:=0; BEGIN BEGIN SELECT COUNT(*) INTO ada FROM pelanggan WHERE kdplg=:blokplg.kdplg; EXCEPTION WHEN NO_DATA_FOUND THEN ada:=0; END; IF ada <> 0 THEN UPDATE pelanggan SET nmplg=:blokplg.nmplg, alamat=:blokplg.alamat WHERE kdplg=:blokplg.kdplg; COMMIT; SET_ALERT_PROPERTY('PESAN',ALERT_MESSAGE_TEXT,'Berhasil diubah....'); psn:=SHOW_ALERT('PESAN');

  39. Block PL/SQL pada object BSimpan ketika Trigger When-Button-Pressed ---(***) Lanjutan ELSE INSERT INTO pelanggan(kdplg, nmplg, alamat) VALUES(:blokplg.kdplg, :blokplg.nmplg, :blokplg.alamat); COMMIT; SET_ALERT_PROPERTY('PESAN',ALERT_MESSAGE_TEXT,'Berhasil disimpan....'); psn:=SHOW_ALERT('PESAN'); END IF; CLEAR_MESSAGE; CLEAR_FORM; COUNTER_KDPLG(); GO_ITEM(‘blokplg.kdplg'); SET_ITEM_PROPERTY('blokplg.bkeluar',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bhapus',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bbatal',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bsimpan',ENABLED,PROPERTY_FALSE); END;

  40. Membuat Alertuntuk Konfirmasi Penghapusan Data 2 1 3

  41. Block PL/SQL pada object BHapus ketika Trigger When-Button-Pressed DECLARE ada NUMBER:=0; psn NUMBER:=0; BEGIN psn:= SHOW_ALERT('pesan_hapus'); IF psn= Alert_Button1 THEN DELETE pelanggan WHERE kdplg=:blokplg.txtkdplg; COMMIT; CLEAR_MESSAGE; SET_ALERT_PROPERTY('PESAN',ALERT_MESSAGE_TEXT,'Berhasil dihapus....'); psn:=SHOW_ALERT('PESAN'); END IF; CLEAR_MESSAGE; CLEAR_FORM; COUNTER_KDPLG(); GO_ITEM(‘blokplg.kdplg');

  42. Block PL/SQL pada object BHapus ketika Trigger When-Button-Pressed SET_ITEM_PROPERTY('blokplg.bkeluar',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bhapus',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bbatal',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bsimpan',ENABLED,PROPERTY_FALSE); END;

  43. Block PL/SQL pada object BBatal ketika Trigger When-Button-Pressed BEGIN CLEAR_MESSAGE; CLEAR_FORM; COUNTER_KDPLG(); GO_ITEM(‘blokplg.kdplg'); SET_ITEM_PROPERTY('blokplg.bkeluar',ENABLED,PROPERTY_TRUE); SET_ITEM_PROPERTY('blokplg.bhapus',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bbatal',ENABLED,PROPERTY_FALSE); SET_ITEM_PROPERTY('blokplg.bsimpan',ENABLED,PROPERTY_FALSE); END;

  44. Block PL/SQL pada object BKeluar ketika Trigger When-Button-Pressed BEGIN EXIT_FORM; END;

  45. Langkah ke-4: Menyimpan Modul Form Entry Pelanggan Dari menu File  Save As  Pilih Direktori Penyimpanan (misalkan di E:\Oracle ),  Beri nama FrmEntryPlg, dan  Disimpan dengan tipe .FMB. Seperti kotak dialog berikut :

  46. 1 2

  47. Hasil Setelah Disimpan

  48. Langkah ke-5: Mengkompile PL/SQL 1 2

  49. Hasil Setelah Dikompile

  50. Program Setelah Dirunning

More Related