Ramadhan

Alhamdulillah.. besok sudah Ramadhan lagi..

Bedanya.. Ramadhan ini adalah yang pertama kali sejak saya menikah dengan istri saya. Bakalan beda mesti yah. Kalau puasa tahun kemarin saya masih nge-kos dan masih bujang, sekarang alhamdulillah sudah berkeluarga dan istri juga sudah hamil. Wuu..

Bener-bener beda. Kalau tahun kemarin saya musti pulang ke kos sehabis sholat tarawih di mesjid deket rumah pacar saya (yang sekarang jadi istri saya), sekarang tidak perlu lagi. Kalau tahun kemarin harus dibawain ransum buat makan sahur, sekarang ga perlu lagi. Sekarang bisa sahur bareng. Kalau buka sih saat masih pacaran dulu yah sudah biasa buka bareng.. he he he he..

Besok Insya Alloh sudah mulai puasa, nanti malam juga sudah mulai sholat Tarawih. Besok pagi sudah mulai sahur, besok sorenya sudah mulai buka puasa.. 😀

Selalu ada permulaan yah.

Puji syukur kepada-Mu ya Alloh atas semua karunia dan nikmat yang Engkau berikan kepada hamba-Mu ini. Maafkan dosa-dosa hamba-Mu ini ya Alloh..

Saya dan keluarga mohon maaf lahir dan batin untuk semua rekan-rekan semua (Blog-walker, visitor yang datang dari search engine, yahoo messenger, mailing list)..

Kami juga mengucapkan.. Selamat Menunaikan Ibadah Puasa..

Semoga amal ibadah kita diterima oleh Alloh. Amin..

Iklan
Ditulis dalam Daily. 19 Comments »

Little Peanut Picture

This is a USG printout for our Little Peanut. The length of the baby can not be measured because the baby keep on moving and crouch. The baby weight is 290 gram.

Left picture shows how the baby puts thumb in the mouth and the right one shows baby on crouch position. Can you see the backbone?

Little Peanut

My wife has been 19 weeks pregnant and feels comfortable with her pregnancy. Sometimes she can feel when the baby is moving.

Can not wait to see you again Little Peanut. We will see you next month.

We love you.

You complete us..

Oalah..Ternyata Cuma 61 Ribu To..

Cerita ini bermula dari ketidaktahuan saya (karena waktu wawancara kredit memang tidak diberitahu) tentang hitungan pembayaran angsuran KPR BTN.

Saya mengambil KPR untuk rumah bertipe 30/60 di Puncak Solo Residence di daerah Mojosongo. Cukup 10 menit dari kampus UNS kalau lewat “jembatan cinta”. Disebut “jembatan cinta” mungkin karena cuma bisa dilewati satu sepeda motor dan tidak bisa bersamaan dari dua arah, tapi cukup muat kalau dibuat menyeberang berdua sambil pegangan tangan.. hehehehe…

Dalam Akta Kredit disebutkan bahwa jatuh tempo pembayaran adalah setiap tanggal 7 dan tenggang pembayaran adalah sampai akhir bulan yang bersangkutan. Nah, karena jatuhnya akhir bulan, maka untuk bulan September, saya menunda pembayarannya sampai Senin (24/09) pekan depan. Maklum rejeki Insya Alloh baru ada pada hari Sabtu (23/09) besok.

Hari Jumat, pekan kemarin, saya di-SMS staff BTN (yang belakangan saya ketahui bernama Pak Hadi) yang isinya adalah bahwa saldo saya di BTN tidak mencukupi untuk pembayaran angsuran. Dalam hati saya bilang “Ya emang ga cukup, lha duitnya belum saya masukin ke rekening”. Eh.. di hari yang sama, saya ditelpon staff dari BTN (namanya Pak Widodo), yang meminta saya segera membayar angsuran. Saya sampaikan ke beliau bahwa saya akan membayar pada hari Senin (24/09), karena Akta Kredit menunjukkan bahwa tenggang pembayaran adalah sampai akhir bulan. Beliau menerangkan bahwa kalau memang sudah ada uangnya, segera saja dimasukkan, daripada entar keambil buat sana-sini. Beliau juga bilang kalau tugasnya adalah mengingatkan customer agar tidak terkena denda karena keterlambatan pembayaran. Terima kasih Pak.

Nah, kemarin (Senin 18/09) saya ditelpon Pak Hadi dari BTN Solo yang meminta saya untuk segera membayar angsuran rumah. Saya tetap bilang akan saya masukkan ke rekening hari Senin (24/09). Saya tetap berpegang pada akta kredit yang sudah disepakati.
Tetapi karena ingin tahu, saya bertanya kepada beliau:
“Berapa sih Pak yang harus saya bayar?”..
Beliau menjawab:
“Kalau untuk angsuran bulanan adalah Rp 517.200. Karena Pak Arief sudah membayar tagihan bulan September saat Realisasi Kredit, maka bulan ini Pak Arief hanya membayar tagihan bulan Juli, karena Pak Arief Realisasi Kredit masih di Bulan Juli yaitu tanggal 27 Juli”.

Wah tambah bingung lagi saya, bagaimana kok bisa begitu, ternyata setelah diusut penjelasannya seperti ini:

Aturan pembayaran atau penagihan yang dilakukan di BTN adalah “pakai dulu baru bayar”. Jadi untuk pemakaian bulan Agustus dibayar September dan seterusnya..
Sehingga jumlah yang seharusnya saya bayarkan untuk bulan September adalah Rp 512.700. Namun karena ternyata kewajiban untuk September sudah dibayar saat Realisasi Kredit, sedangkan bulan Juli belum dibayar, maka untuk bulan September saya membayar “pemakaian” bulan Juli.

Beliau menambahkan lagi:
“Karena bulan Juli Pak Arief hanya “pakai” beberapa hari karena Pak Arief realisasi kredit tanggal 27 Juli, maka kewajiban yang harus Bapak bayarkan untuk bulan September adalah sebesar 61 Ribu Rupiah, bukan 517.200″

Wah, karena perkiraan saya adalah 517.200, saya langsung saja bilang:
Oalah.. ternyata cuma 61 ribu to Pak, saya kirain 512.700. Ya sudah, besok saya masukkan duitnya ke rekening” 😀

Wuh..lega deh..

Pagi tadi saya mampir ke BTN Kampus UNS dan masukin duit 100 ribu. Setelah saya telpon Pak Hadi, beliau bilang.. kalau sudah saldo sudah cukup.

Alhamdulillah..

Berarti tidak ada lagi kewajiban yang harus saya bayarkan bulan ini..

Kalau begitu.. entar sore.. bisa periksain kandungan istri.. yuhui..

Ditulis dalam Daily. 7 Comments »

How To Convert Null Value to Zero On LEFT JOIN Query

I got stuck on my software development process on how to show items that are not completely ordered to sub-contractor. The SQL query result always shows only items that some are already ordered but not yet complete. I need this to warn the production department as well as marketing department.

This article tells how you can easily convert NULL value using MySQL COALESCE function.

I have order table like this:

SELECT p.code AS product_code, pd.qty AS buyer_qty_order, wd.qty AS qty_ordered_to_sub_con FROM pi_detail pd
INNER JOIN product p ON p.id = pd.product_id
INNER JOIN lpp ON pd.pi_id = lpp.pi_id
WHERE lpp.id = '1'

Buyer Order Quantity
Order Table

Since I have ordered some items to sub contractor, I need to know how many quantity has been ordered.

SELECT p.code AS product_code, pd.qty AS buyer_qty_order,
(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id) AS qty_ordered_to_sub_con FROM pi_detail pd
INNER JOIN product p ON p.id = pd.product_id
INNER JOIN lpp ON pd.pi_id = lpp.pi_id
LEFT JOIN wo_detail wd ON wd.pi_detail_id=pd.id
WHERE lpp.id = '1'
GROUP BY pd.id

Sub Contractor Ordered Quantity

Ordered Item

NULL value on AU-01A means that this item is not yet ordered to sub contractor.

I also need to know the balance.

SELECT p.code AS product_code, pd.qty AS buyer_qty_order,
(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id) AS qty_ordered_to_sub_con,
(pd.qty-(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id)) AS qty_balance FROM pi_detail pd
INNER JOIN product p ON p.id = pd.product_id
INNER JOIN lpp ON pd.pi_id = lpp.pi_id
LEFT JOIN wo_detail wd ON wd.pi_detail_id=pd.id
WHERE lpp.id = '1'
GROUP BY pd.id

Balance
Balance Order

AU-01A has NULL value on both last two columns.

Since I need to eliminate item that is completely ordered to sub contractor, I execute this query and the result is not like what I want. The query only returns items which is ordered but not all.

SELECT p.code AS product_code, pd.qty AS buyer_qty_order,
(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id) AS qty_ordered_to_sub_con,
(pd.qty-(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id)) AS qty_balance FROM pi_detail pd
INNER JOIN product p ON p.id = pd.product_id
INNER JOIN lpp ON pd.pi_id = lpp.pi_id
LEFT JOIN wo_detail wd ON wd.pi_detail_id=pd.id
WHERE lpp.id = '1' AND (SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id) < pd.qty
GROUP BY pd.id

Wrong Result
Wrong Result

The query returns AU-02 only instead of returning both AU-01A and AU-02.

I have no idea about this at the first time, but after look again at my query result, I notice that the condition:

..AND (SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id) < pd.qty ..

is only valid if the result is not returning NULL value, that is why I got the result above.

Reading at MySQL Manual, Null value can be converted to Zero using COALESCE function. Quoting from MySQL Manual:

  • COALESCE(value,...)Returns the first non-NULL value in the list, or NULL if there are no non-NULL values.
    mysql> SELECT COALESCE(NULL,1);
            -> 1
    mysql> SELECT COALESCE(NULL,NULL,NULL);
            -> NULL

    COALESCE() was added in MySQL 3.23.3.

Therefore I use this function in the query:

SELECT p.code AS product_code, pd.qty AS buyer_qty_order,
(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id) AS qty_ordered_to_sub_con,
(pd.qty-(SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id)) AS qty_balance FROM pi_detail pd
INNER JOIN product p ON p.id = pd.product_id
INNER JOIN lpp ON pd.pi_id = lpp.pi_id
LEFT JOIN wo_detail wd ON wd.pi_detail_id=pd.id
WHERE lpp.id = '1'
AND COALESCE((SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id),0) < pd.qty
GROUP BY pd.id

Result Using COALESCE

Result With Null

Now the result is correct, but still has NULL value on the last two columns. Adding COALESCE at the query gives me the result I want.

SELECT p.code AS product_code, pd.qty AS buyer_qty_order,
COALESCE((SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id),0) AS qty_ordered_to_sub_con,
(pd.qty-COALESCE((SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id),0)) AS qty_balance FROM pi_detail pd
INNER JOIN product p ON p.id = pd.product_id
INNER JOIN lpp ON pd.pi_id = lpp.pi_id
LEFT JOIN wo_detail wd ON wd.pi_detail_id=pd.id
WHERE lpp.id = '1'
AND COALESCE((SELECT SUM(wd.qty) FROM wo_detail wd WHERE pd.id=wd.pi_detail_id),0) < pd.qty
GROUP BY pd.id

Correct Result

Result With Zero Value Instead of Null

Finally I can continue my development..

Ups.. here is the screen-shoot for the application.

Screenshoot

Ditulis dalam Daily, Database, IT, PHP, Work. 14 Comments »

Now You Know The Reason Why I Did Not Filter Yahoo Mail

A few weeks ago, one of the office staff asked me to turn on spam protection (that is already on) on company email that hosted at Yahoo to prevent spam, because he did not want to download any email spam to his email client. He said to another staff that the IT Department did not do what he asked. What? It seems that he wanted to blame me for this spam.. mmm..

I tried my best to explain how spam can reach the company mailbox and the effect of using SpamGuard to any important email but his answer made me upset. He asked me to open the email every morning and clean spam emails so he only downloads spam-free emails. I replied him back and said that I did not know which emails are important for him and which are not.

Since explaining about spam did not make him understand, I choosed to keep the spam guard on and set the POP options to make pop mail client to not download any email from Bulk folder. I just wanted to make him know the effect of his request to his email, and today he realize the effects and learns by him self. This is what I expected when I turned the POP SpamGuard option to off. I wanted him to know by him self. By him self also, he asked me to turn on this feature. 😀

POP and Web Access

Based on what I faced above, I learn that if I can not explain or make anyone understand, better for me to make him understand by him self. No need for me to force him. This will make a resistance and of course not worth for both of us. We will upset and feel uncomfortable each other.

Uh.. thanks God.. I think I just make my job easier..

Cheers.. 😀

Ditulis dalam Daily, Work. 2 Comments »

Apa Sih Susahnya Menyalakan Lampu Motor di Malam Hari?

Untuk kesekian kalinya, saya dibuat kesal oleh pengendara motor yang tidak menyalakan lampu di malam hari. Seolah-olah lampu hanya menjadi penerang jalan buat mereka, bukan tanda bagi pengendara lain bahwa ada motor lain yang lewat.

Kemarin sore habis maghrib, saya dan istri saya keluar untuk membeli nasi goreng di warung tempel di belakang kampus UNS. Baru saja keluar dari gang di dekat Asia Motor, karena jalan dari arah timur dan barat sepi, langsung saja saya menyeberang dengan memberi tanda terlebih dulu. Eh.. tahu-tahu dari arah timur, ada motor kenceng dengan lampu tidak dinyalakan (ga tau apakah mati atau memang sengaja) nylonong seenaknya. Untung saya masih bisa mengerem kendaraan, dan ketika lewat tepat di depan saya, langsung saja saya teriakin “Lampune Pak!!!”. Kalau saja orang ini berhenti dan ngajak rame, pasti bakalan saya ladeni. Dari dulu saya nggak suka dengan orang egois kayak gini.

Eh.. ternyata bukan itu saja. Pas lewat di depan gapura Perahu STSI, ada juga pengendara motor (kalau dari potongannya sih kayaknya mahasiswa) yang tidak menyalakan lampu, tahu-tahu langsung nyebrang. Tambah jengkel lagi saya. Tetapi saya tidak ingin merusak suasana romantis (ciee.. :D), terus aja langsung ke warung nasi goreng.. dan ketika mau nyebrang (warungnya ada di kanan jalan).. lagi-lagi.. ada motor yang tidak menyalakan lampu 😦 😦 .. padahal kondisi jalan belakang kampus UNS ke arah Jurug sangat minim penerangannya. Saya semakin tidak ngerti.. mereka itu mikirnya bagaimana. Tiga kali dalam waktu kurang dari 10 menit.. wtf..

Uh.. daripada tambah jengkel.. langsung saja pesan Nasi Goreng dan Nasi Gila.. plus 2 gelas Es Teh 😀
Warung ini sudah jadi langganan sejak saya kuliah. Menu yang dijual adalah Nasi Goreng, Nasi Gaul (Nasi Goreng Sosis), Nasi Gila (Nasi putih dikasih topping sayuran, daging dan sosis), Mie Goreng/Rebus.. banyak deh, pokoknya yang berkaitan dengan nasi dan mie. Harganya berkisar Rp 6.000-10.000, yang mungkin cocok dengan kantong mahasiswa saat ini (jaman saya harga segini sih mahal banget). Satu porsi bisa buat berdua saking banyaknya.

Sembari nungguin saya selesai makan.. baca aja tulisan di bawah ini yah.. hehehehe

Saat saya masih kost di belakang kampus UNS, sering sekali saya menemui mahasiswa yang tidak menyalakan lampu motor pada malam hari saat berkendara di jalan-jalan sekitar kampus. Oke lah kalau mereka ga mau pakai helm. Toh klo nubruk dan kepalanya bocor bukan salah siapa-siapa. Salah mereka sendiri. Tetapi kalau tidak menyalakan lampu motor ketika berkendara di malam hari, kok rasanya jadi malu menyebut mereka mahasiswa. Mikirnya kok pendek banget. Egois. Menyalakan lampu bukan hanya untuk menerangi jalan yang mau dilewati, tetapi juga untuk memberikan tanda kepada pengendara lain bahwa ada motor yang melaju, entah dari sisi berlawanan atau beriringan. Dengan begitu pengendara lain bisa memperhitungkan dan lebih berhati-hati.

Bukan hanya seputar lampu, di gerbang belakang kampus UNS yang dibuat dua jalur, masih saja ada mahasiswa yang nyelonong masuk jalan pintas ke arah masjid Nurul Huda walaupun mesti melawan arah. Saya jadi tambah heran, mereka itu mikirnya seperti apa? Sudah pantaskah dianggap sebagai mahasiswa? Atau mereka hanya menjadi mahasiswa karena tuntutan umur? Mestinya menjadi mahasiswa juga diikuti dengan tingkat kedewasaan dan pola pikir. Mahasiswa mustinya tidak lagi disuapi, tapi bisa mandiri, bisa belajar dari lingkungan dan tentu saja peduli dengan lingkungan.

Percuma teriak-teriak demo anti-korupsi tapi ketika ujian masih nyontek atau kong kali kong..

Huh…

sabar.. sabar..

Ditulis dalam Daily. 10 Comments »

Indonesia Now on Metro TV

“A fresh look at current events and the culture of Indonesia is now available to viewers around the world.

Metro TV has launched a new weekly half-hour English-language program titled “Indonesia Now,” aimed at providing an objective view of the country and region. The show debuted on September 1.”
(http://www.metrotvnews.com/indonesianow)

During my “TV-Channel walking” 😀 when I watched TV last night, I found something new on Metro TV, a program named “Indonesia Now”. This program is in English and inform about Indonesia current issues. The news presenters, Kania Sutisnawinata and Dalton Tanonaka, speaks in really understandable and clear English. Their pronounciation helped me to understand the message and of course I can improve my English listening ability.

If you want to know Indonesia current issues narated in English language, just stay tune on Metro TV every Friday at 7.30 until 08.00 PM. Other English news program can be watched everyday at 07.30 AM, that is Metro This Morning.

Ditulis dalam Daily, English. 4 Comments »