BMC Remedy Konversi Timestamp dan Date di Oracle PL/SQL

Memang sih kalau boleh jujur sudah mulai malas ngeblog hehe. Tapi jika sudah saatnya pasti bakal nulis lagi. Nah kebetulan banget minggu lalu saya sedang troubleshot serta reporting di salah satu kustomer. Dan kebetulan kasusnya unik, yaitu konversi tanggal lewat Oracle Database. Tanggal di BMC Remedy itu memang ngeselin kalau boleh sedikit curhat.

Jelek, culun, dan pokoknya sulit banget untuk dibaca. Ditambah lagi kebanyakan format yang harus dilakukan. Misal timestamp itu harus diubah karena menggunakan Epoch atau Unix Time. Yaitu timestamp dikonversi menjadi nilai integer. Ngeselin kan? Padahal di database sudah terdapat format tanggal atau timestamp yang dapat disesuaikan.

Mungkin maksudnya adalah agar lebih ringan dan sebagainya karena nilai bit integer jauh lebih ringan. Tapi tetap saja tidak praktis. Dan baru saja di kustomer ada permasalahan yang paling ngeselin yaitu konversi tanggal. Untuk timestamp atau datetime di BMC Remedy dapat dilakukan dengan konversi Epoch dengan formula sebagai berikut :

to_date('1970-01-01', 'YYYY-MM-DD') + (kolom_integer/ 86400000);

Nah untuk yang hanya berupa date di BMC Remedy ternyata tidak disimpan dalam bentuk Epoch, lha terus? Khusus untuk date disimpan dalam bentuk Julian Date. Nah jadi khusus untuk tipe data berupa date membutuhkan formula kira-kira sebagai berikut :

to_date(kolom_integer,'J');

Ya begitulah kira-kira yang dapat saya share. Sebagai pengingat dan catatan aja sih, semoga bermanfaat hoho.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s