Oleh: ekoyw | Agustus 24, 2010

Crystal Report : Hitung Total Lembur

Beberapa hari ini, aku mendapat kesulitan ketika akan membuat report untuk menghitung total lembur karyawan di Crystal Report. Data lembur terdiri dari :

  • NIK = Nomor Induk Karyawan
  • Nama_Lengkap = Nama Karyawan
  • Jam Mulai Lembur, dengan tipe Datetime
  • Jam Akhir Lembur, dengan tipe Datetime

Data absensi karyawan dan kegiatannya telah dibuat dengan group by Nama_Lengkap dan akan dimulai dari halaman baru untuk setiap data karyawan.

Untuk total lembur perhari, dengan mudah dapat dihitung dengan menggunakan formula, dengan nama Total Lembur, sebagai berikut :

Time({monthly_personal_report.Akhir_Lembur}-{monthly_personal_report.Mulai_Lembur})

Masalah muncul ketika Total Lembur perhari tersebut akan dijumlahkan per bulan per karyawan. Masalahnya adalah ketika kita akan summarize (dengan cara di report design klik kanan-insert-summary) dan isian Choose the Field to Summarize kita pilih Total Lembur maka tidak ada pilihan SUM pada bagian Calculate this Summary. Penyebabnya adalah tipe data Total Lembur, yang berasal dari pengurangan akhir dan awal lembur, adalah time bukan numeric maupun currency.

Maka berikut langkah – langkah yang aku lakukan :

  1. Buatlah sebuah formula, aku memberi nama formula ini Total Menit, untuk menghitung jumlah menit total lembur. Aku menggunakan formula sebagai berikut : DateDiff (‘n’,{monthly_personal_report.Mulai_Lembur}, {monthly_personal_report.Akhir_Lembur})
    DateDiff akan menghitung beda antara dua tipe data datetime sedangkan ‘n’ akan menghitung hasilnya dalam menit.
  2. Karena formula Total Menit ini sudah merupakan numeric bersatuan menit maka formula ini bisa kita summarize. Aku summarize Total menit ini dengan cara klik kanan di report design – insert – summary. Pilih Total Menit dari  bagian Choose the field to summarize. Kemudian pilih SUM pada Calculate this summary. Dan karena kita akan menampilkan jumlah per group maka pada Summary Location pilih Group yang diinginkan, misalnya Group#1:username.Nama_Lengkap-A. Klik OK jika sudah selesai.
  3. Setelah diklik maka Summarize yang baru kita buat akan tampil di report design. Hapus saja summarize ini dari report design karena formatnya masih berupa angka sekian menit, misalnya 100 atau 150, padahal yang kita inginkan dalam satuan jam, misalnya 01:40 untuk 100 menit atau 02:30 untuk 150 menit.
  4. Untuk merubah ke format hh:mm maka aku membuat formula sebagai berikut :                                                                                     whileprintingrecords;

    numberVar hrs;
    numberVar min;
    stringVar hhmmss;

    hrs := Truncate(Truncate(Sum ({@Total_Menit}, {username.Nama_Lengkap})/60));
    min := Remainder(Sum ({@Total_Menit}, {username.Nama_Lengkap}),60);

    hhmmss := totext(hrs,”00″) + “:” + totext(min,”00″);

    hhmmss

  5. Aku beri nama formula di atas Lembur. Bagian {@Total_Menit}, {username.Nama_Lengkap} merupakan summarize formula Total Menit yang telah kita buat sebelumnya. Caranya dari bagian report fields di Formula kita cari field berikut Group#1 : username.Nama_Lengkap-A:Sum of @Total_Menit.
  6. Sekarang kita tinggal tempatkan formula Lembur, yang baru kita buat di atas, di Group Footer di report-design. Maka setelah kita preview kita akan mendapatkan jumlah jam lembur karyawan dalam format hh:mm.
  7. Selesai…

Responses

  1. makasih Mas atas ilmunya sangat bermanfaat🙂

    • Sama – sama belajar mas. Dapatnya juga dari Mbah Google…😀

  2. mas cara konversi dari string ke currency bagaimana ?

  3. mas kao untuk menghitung perkalian lemburnya gimana ya,, memisahkan dari total lembur berdasarkan hari biasa atau hari libur..
    Terima Kasih

    • Nah… kalo itu kayanya harus nambah prosedure sendiri itu konversi tgl sekian hari apa dan dicocokkan dengan aturan lemburnya.

      • Mas aku bisa minta email mas ? Aku mau belajar lebih banyak tentang maintenance bts, aku beberapa minggu lalu diterima disebuah subcon CME dan menjadi preventive maintenance, aku pertama kali baca artikel karna tertarik dengan keyword “kuli bts” dan setelah dua minggu training aku ngerti mas jika memang pekerjaan ini berat berat ringan hehe. Makasih ya mas sebelumnya.

      • Ini emailnya eko_comp@yahoo.com


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Kategori

%d blogger menyukai ini: