Kalender Tulisan

February 2008
M T W T F S S
« Jan   Mar »
 123
45678910
11121314151617
18192021222324
2526272829  

Tulisan Terbaru

Kategori Tulisan

Komentar Para Blogger

Benang Tulisan

action figure ADF ADF Binding ADF Faces Binding database echii fighting forms 10g Games gundam handphone hobby inggris internet j2ee japanese figure japan resep JDeveloper JSF Kamen Rider komik mecha networking OAS Office One Piece open source personal blog romance school life security shinigami sql wisata alam work life yahoo messenger

« | Main | »

Oracle Form Timer

By deepe | February 14, 2008

Timer??? Bagaimana sih implementasi timer di Oracle Form? Kemudian apa saja fungsinya? Untuk menjawab pertanyaan ini saya membuat aplikasi sederhana yang fungsinya mengupdate jam system, jadi kita akan melihat seolah-olah jam tersebut berdetik terus.

Langkah pertama adalah membuat form seperti berikut ini

Selanjutnya pada form kita buat block dengan nama ‘BTime’. Kemudian didalam block kita tambahkan text item dan display item. Text Item kita beri nama dummy, berfungsi sebagai focus ketika form aktif. Sedangkan Display Item kita beri nama MyTime, berfungsi untuk menampilkan jam yang bergerak terus (dinamis time). Kemudian kita buat program unit type ‘Prosedure’ dengan nama ‘RUN_TIMER’. Isi program unit tersebut sebagai berikut:

PROCEDURE run_timer IS

timer_id TIMER;

timer_interval NUMBER := 1000;

BEGIN

timer_id := CREATE_TIMER(‘simple_time’,timer_interval,REPEAT);

END;

Mari kita bahas satu persatu program unit diatas. Program unit diatas menggunakan 2 buah variable dengan nama timer_id dan timer_interval. Variabel timer_id ber-type TIMER sedangkan timer_interval ber-type NUMBER. Nilai variable timer_interval diberi 1000 sama artinya dengan 1 detik. Program unit ini memanggil fungsi built in CREATE_TIMER untuk membuat sebuah timer. Fungsi CREATE_TIME memiliki 3 parameter yaitu nama timer, waktu timer dijalankan, dan proses timer. Parameter proses timer bernilai sama dengan REPEAT bila timer ini diulang terus menerus, jika tidak maka beri nilai parameter ini dengan nilai NO_REPEAT.

Kemudian mungkin anda bertanya, Dimana saya harus meletakkan program unit tersebut?

Jawaban dari pertanyaan tersebut adalah anda dapat meletakkan program unit ini dimana saja, tetapi untuk contoh kasus ini, saya meletakkan program unit ‘RUN_TIMER’ di trigger level Form dengan nama “WHEN-NEW-FORM-INSTANCE”. Isi trigger tersebut adalah seperti tertulis di bawah ini.

:btime.mytime := to_char(sysdate,’hh24:mi:ss’);

run_timer;

Nah, setelah itu mungkin kalian akan bertanya lagi, Dimana saya harus meletakkan potongan code yang harus dijalankan setelah interval tercapai?

Kali ini kalian harus meletakkan potongan kode tersebut di trigger level form dengan nama “WHEN-TIMER-EXPIRED”. Potongan kode saya yang ada di trigger “WHEN-TIMER_EXPIRED” adalah sebagai berikut:

:btime.mytime := to_char(sysdate,’hh24:mi:ss’);

Setelah semua proses ini dilaksanakan, anda tinggal menjalankan program ini dan hasilnya adalah sebuah jam digital sederhana.

Jika anda tertarik dengan contoh ini, anda dapat mendowloadnya di link ini . Silahkan dikembangkan dan semoga bermanfaat.

Kesimpulan yang utama adalah Timer digunakan untuk mengeksekusi code pada waktu tertentu tergantung dari interval yang ditentukan. Hal-hal yang berhubungan dengan timer adalah CREATE_TIMER, FIND_TIMER, SET_TIMER, WHEN-TIMER-EXPIRED TRIGGER. Untuk lebih jelasnya silahkan cari di helpnya Form Developer 10g.

Topics: Oracle | 4 Comments »

4 Responses to “Oracle Form Timer”

  1. Wiyogo Says:
    June 9th, 2009 at 3:48 am

    klo mau bikin timer untuk execute query di form gimana mas ?

  2. deepe Says:
    June 11th, 2009 at 11:03 pm

    maksudnya setiap berapa detik mengeksekusi query??? kalo maksudnya seperti itu yang tinggal diganti aja baris “:btime.mytime := to_char(sysdate,’hh24:mi:ss’);” dengan perintah untuk mengeksekusi query.

  3. bambang Says:
    July 6th, 2009 at 1:51 am

    @deepe
    tolong baca lagi dengan seksama mas, kan mas dwi njelasinnya juga spt yg sampeyan maksudkan..

    @dwi
    thanks, nice info.

  4. freddokresna Says:
    July 12th, 2009 at 12:30 am

    ooo…. bisa ya pake database oracle untuk bikin form seperti itu… baru tau(newbie)… makasih infonya…

Comments