Social Icons

google plustwitterfacebookinstagramlinkedinrss feedcontact me

Jumat, 19 September 2014

Cek Null Atau String Kosong


Untuk kali ini, saya akan memberikan tips yang mungkin anda sudah mengetahuinya, bahkan telah atau selalu melakukannya, namun tidak sedikit juga ada diantara anda yang sudah mengetahuinya, namun tidak selalu melakukannya. Jadi mungkin tips kali ini lebih tepat untuk dikatakan sebagai pengingat untuk anda.

Alasan yang paling utama untuk saya memposting tips ini adalah, karena sering kali saya temukan ada user yang komplain atau kebingungan karena program error atau inputan yang ia masukkan tidak sesuai dengan hasilnya. Seringnya sih ternyata masalah yang timbul dikarenakan hal yang sepele, seperti user lupa menginput data sebuah kolom, namun hal yang sepele ini bisa jadi masalah yang agak besar jika kolom yang user tersebut lupa untuk diinput adalah kolom yang wajib diisi, misalnya karena kolom tersebut adalah merupakan Primary Key dari tablenya.

Nah, kembali lagi ke tips yang akan saya berikan/ingatkan, tips kali ini adalah "Selalu cek untuk null atau string kosong pada kolom yang wajib diisi".

Pertanyaannya adalah, mengapa hal tersebut harus dilakukan ?
Jawabannya simple (seperti yang telah saya uraikan diatas), hal tersebut adalah untuk menghindari error untuk script selanjutnya, apalagi script selanjutnya itu membutuhkan nilai dari kolom tersebut untuk keperluan yang lainnya.

Syntax untuk tips ini adalah menggunakan statement IF, anda bisa gunakan statement IF tunggal ataupun multi line, statement IF tunggal digunakan jika nilai suatu kondisi True tapi tidak ada yang harus dilakukan, sedangkan statement IF multi line digunakan jika nilai suatu kondisi True ada action yang dilakukan, misalnya sebuah pesan peringatan atau action yang lainnya.
Contohnya sebagai berikut (cek null atau string kosong pada singlelineedit yang bernama sle_1):

1. Statement IF tunggal
1a. Hanya cek null atau string kosong pada sle_1
IF IsNull(sle_1.Text) OR Trim(sle_1.Text, True) = "" THEN Return
1b. Nilai data dalam sle_1 itu minimal 5 karakter
IF IsNull(sle_1.Text) OR LenA(Trim(sle_1.Text, True)) < 5 THEN Return

2. Statement IF multi line
2a. Hanya cek null atau string kosong pada sle_1
IF IsNull(sle_1.Text) OR Trim(sle_1.Text, True) = "" THEN
MessageBox("Required", "Data tidak boleh kosong.", Exclamation!)
sle_1.SetFocus()
Return
END IF
2b. Nilai data dalam sle_1 itu minimal 3 karakter
IF IsNull(sle_1.Text) OR LenA(Trim(sle_1.Text, True)) < 3 THEN
MessageBox("Required", "Data tidak boleh kurang dari 3 karakter.", Exclamation!)
sle_1.SetFocus()
Return
END IF

Penjelasan:
  • Trim(sle_1.Text, True) -> Menghilangkan karakter spasi diawal dan diakhir string, True mengindikasikan semua karakter yang dianggap spasi oleh PowerBuilder, misalnya Tab
  • LenA(Trim(sle_1.Text, True)) -> Menghitung jumlah karakter dalam string, dengan terlebih dahulu menghilangkan karakter spasi diawal dan diakhir string
  • Return -> Menghentikan eksekusi script, sehingga script dibawah statement IF ini tidak akan dieksekusi.
  • 1a -> Script tersebut hanya mengecek nilai null atau string kosong, jika True maka tidak akan ada action apa-apa.
  • 1b -> Script tersebut mengecek nilai null atau string dalam sle_1 itu ada berapa karakter, jika True (null atau jumlah karakter yang diinput kurang dari 5) maka tidak akan ada action apa-apa.
  • 2a -> Script tersebut hanya mengecek nilai null atau string kosong, jika True maka akan ditampilkan pesan peringatan "Data tidak boleh kosong."
  • 2b -> Script tersebut mengecek nilai null atau string dalam sle_1 itu ada berapa karakter, jika True (null atau jumlah karakter yang diinput kurang dari 3) maka akan ditampilkan pesan peringatan "Data tidak boleh kurang dari 3 karakter."
  • Jika kondisinya bernilai False (tidak null atau kosong atau jumlah karakternya sesuai dengan yang kita inginkan), maka statement IF ini akan dilewati oleh PowerBuilder, dan langsung mengeksekusi script dibawah statement IF ini.
Untuk contoh samplenya bisa anda download di halaman Sample

Ini hanyalah salah satu tips untuk anda, yang mungkin anda sudah mengetahuinya, simple memang, tapi kalau ada yang simple mengapa harus susah payah membuat yang ribet ?

Akhir kata, semoga sukses untuk semua yang sedang dan akan anda lakukan.

Tidak ada komentar:

Posting Komentar

Silahkan berikan komentar anda.

 

Term Of Service

Untuk mengetahui tentang penggunaan blog ini, silahkan buka halaman Term Of Service atau klik TOS untuk langsung membuka halaman Term Of Service

Privacy Policy

Untuk mengetahui kebijakan privacy dalam blog ini, silahkan buka halaman Privacy Policy atau klik Disini untuk langsung membuka halaman Privacy Policy