Search This Blog

Rancangan Database Aplikasi Payroll (Penggajian)

Tabel data dalam aplikasi payroll terdiri dari 3 macam, yaitu tabel data master, tabel data transaksi dan tabel data pendukung. Tabel data master terdiri dari 4 tabel, tabel data transaksi terdiri dari 4 tabel dan tabel pendukung terdiri dari 2 tabel.

A. TABEL MASTER

Tabel data master digunakan untuk menyimpan data master. Data master adalah data yang relatif tidak berubah atau jarang berubah. Biasanya tabel data master hanya memiliki satu field kunci atau Primary Key. Misalnya field kunci tabel Karyawan adalah Nomor_Induk.

1. Tabel Karyawan

Tabel karyawan adalah tabel untuk menyimpan data pribadi karyawan. Yang menjadi field kunci pada tabel Karyawan adalah field NIK (Nomor Induk Karyawan). Field kunci adalah field yang unik yang tidak boleh ada nilai yang sama dalam tabel ini.

Nama Field Tipe Data Lebar Data
NOMOR_INDUK (PK) Text 10
NAMA Text 50
TEMPAT_LAHIR Text 20
TANGGAL_LAHIR Date/Time
JENIS_KELAMIN Text 1
AGAMA Text 20
STATUS_PERNIKAHAN Text 1
JUMLAH_ANAK Integer
ALAMAT Text 200
NOMOR_TELEPON Text 50
PENDIDIKAN_TERAKHIR Text 50
KODE_JABATAN Text 5
KODE_CABANG Text 5
KODE_DEPARTEMEN Text 5
GAJI_POKOK Decimal
TANGGAL_DIANGKAT Date/Time
TANGGAL_KELUAR Date/Time
NAMA_BANK Text 50
NOMOR_REKENING Text 25
REKENING_ATAS_NAMA Text 100


2. Tabel Jabatan

Tabel Jabatan adalah tabel untuk menyimpan data Jabatan. Yang menjadi field kunci pada tabel Jabatan adalah field KODE_JABATAN. Tabel Jabatan direlasikan dengan tabel Karyawan melalui field KODE_JABATAN. Setiap satu data karyawan mempunyai jabatan tertentu dan mengambil data nama jabatan dari tabel Jabatan.

Nama Field Tipe Data Lebar data
KODE_JABATAN (PK) Text 5
NAMA_JABATAN Text 50
TUNJANGAN_JABATANDecimal
LEVEL_JABATANInteger


3. Tabel Departemen

Tabel Departemen adalah tabel untuk menyimpan data Departemen. Yang menjadi field kunci pada tabel Departemen adalah field KODE_DEPARTEMEN. Tabel Departemen direlasikan dengan tabel Karyawan melalui field KODE_DEPARTEMEN. Setiap data karyawan direlasikan ke satu departemen.

Nama Field Tipe Data Lebar data
KODE_DEPARTEMEN  (PK) Text 5
NAMA_DEPARTEMENText50


4. Tabel Cabang

Tabel Cabang adalah tabel untuk menyimpan data Cabang. Yang menjadi field kunci pada tabel Cabang adalah field KODE_CABANG. Tabel Cabang direlasikan dengan tabel Karyawan melalui field KODE_CABANG. Setiap satu data karyawan mempunyai nama cabang tertentu dan mengambil data nama cabang dari tabel Cabang.

Nama Field Tipe Data Lebar data
KODE_CABANG (PK) Text 5
NAMA_CABANG Text 50
UANG_MAKANDecimal


5. Tabel History Kenaikan Gaji

Tabel History Kenaikan Gaji adalah tabel untuk menyimpan data history kenaikan gaji karyawan. Dalam tabel ini disimpan data gaji pokok lama, persentase kenaikan gaji dan gaji pokok baru. Tabel ini berelasi dengan tabel Karyawan melalui field NOMOR_INDUK.

Nama FieldTipe DataLebar data
ID_DATA (PK)Long Integer
NOMOR_INDUKText10
BULANInteger
TAHUNInteger
GAJI_POKOK_LAMADecimal
PERSENTASE_KENAIKANDecimal
GAJI_POKOK_BARUDecimal


B. TABEL TRANSAKSI

Tabel transaksi adalah tabel-tabel yang menyimpan data transaksi gaji bulanan. Tabel ini kelak menjadi tabel history bagi masing-masing karyawan. Biasanya pada akhir tahun data transaksi gaji perbulan diakumulasi untuk perhitungan total pajak penghasilan yang disetahunkan. Jika pada akhir periode tahunan terdapat kurang bayar maka harus disesuaikan pembayaran pajak pada akhir tahun berupa penambahan potongan pajak. Jika lebih bayar maka harus di minta kelebihan bayarnya ke kantor pajak.

1. Tabel Lembur

Tabel Lembur adalah tabel untuk menyimpan data jam lembur karyawan. Perhitungan lembur karyawan tergantung kebijakan dari masing-masing perusahaan. Misalnya jika karyawan lembur pada hari libur perhitungan jam lemburnya menjadi 2 kali dari jam kerja pada hari kerja. Jadi karyawan yang bekerja pada hari minggu selama 8 jam dianggap bekerja lembur selama 16 jam.

Nama FieldTipe DataLebar data
NOMOR_INDUK (PK)Text10
BULAN (PK)Integer
TAHUN (PK)Integer
JUMLAH_JAM_LEMBURDecimal


2. Tabel Cuti

Tabel Cuti adalah tabel untuk menyimpan data jumlah hari cuti karyawan atau karyawan tidak masuk kerja dalam satu bulan. Jumlah hari cuti digunakan untuk menghitung jumlah uang makan yang akan diterima karyawan.

Nama FieldTipe DataLebar data
NOMOR_INDUK (PK)Text10
BULAN (PK)Integer
TAHUN (PK)Integer
JUMLAH_CUTIInteger


3. Tabel Potongan_Lain_Lain

Tabel Potongan_Lain_Lain adalah tabel untuk menyimpan data jumlah potongan gaji karyawan, misalnya potongan cicilan pinjaman ke perusahaan atau potongan kredit perumahan..

Nama FieldTipe DataLebar data
NOMOR_INDUK (PK)Text10
BULAN (PK)Integer
TAHUN (PK)Integer
JUMLAHDecimal
KETERANGANText255


4. Tabel Gaji

Tabel Gaji adalah tabel untuk menyimpan data gaji karyawan setiap bulan.

Nama FieldTipe DataLebar Data
NOMOR_INDUK (PK)Text10
BULAN (PK)Integer
TAHUN (PK)Integer
GAJI_POKOKDecimal
TUNJANGAN_JABATANDecimal
TUNJANGAN_KELUARGADecimal
UANG_MAKANDecimal
UANG_LEMBURDecimal
PERSEN_POT_PPHDecimal
PTKPDecimal
PERSEN_POT_JAMSOSTEKDecimal
POT_LAIN_LAINDecimal
JABATANText50
CABANGText50
DEPARTEMENText50
NAMA_BANK Text 50
NOMOR_REKENING Text 25
REKENING_ATAS_NAMA Text 100

Note: (PK) = Primary Key


C. TABEL PENDUNKUNG


1. Tabel Options

Tabel Options dalam aplikasi Payroll ini adalah untuk menyimpan data variabel-variabel yang suatu saat dapat berubah-ubah sesuai peraturan dari pemerintah. Data-data yang disimpan pada tabel ini antara lain:
  1. Besaran nilai potongan pajak penghasilan dalam persen.
  2. Besaran nilai potongan JAMSOSTEK dalam persen.
  3. Besaran nilai penghasilan tidak kena pajak (PTKP).
  4. Besaran nilai tunjangan istri.
  5. Besaran nilai tunjangan anak.
Nama FieldTipe DataLebar data
ID (PK)Autonumber
PERSEN_PPHDecimal
PTKPDecimal
PERSEN_JAMSOSTEKDecimal
TUNJANGAN_ISTRIDecimal
TUNJANGAN_ANAKDecimal


2. Tabel Standar Hari Kerja

Tabel standar hari kerja adalah tabel untuk menampung data hari kerja perbulan. User harus melengkapi standard hari kerja sebelum melakukan proses perhitungan gaji. Fungsi tabel ini adalah untuk menghitung jumlah uang makan yang akan diterima oleh karyawan.
Perhitungan uang makan adalah jumlah standar hari kerja dikurangi jumlah cuti karyawan pada tabel cuti.

Nama FieldTipe DataLebar data
BULAN (PK)Integer
TAHUN (PK)Integer
JUMLAH_HARI_KERJAInteger


D. RELASI TABEL

Berikut adalah relasi tabel antara tabel data pada database payroll:


Keterangan:
  1. Relasi tabel Karyawan ke tabel Lembur : relasi satu ke banyak
  2. Relasi tabel Jabatan ke tabel Karyawan: relasi satu ke banyak
  3. Relasi tabel Cabang ke Karyawan: relasi satu ke banyak
  4. Relasi tabel Departemen ke Karyawan: relasi satu ke banyak
  5. Relasi tabel Karyawan ke tabel Cuti: relasi satu ke banyak
  6. Relasi tabel Karyawan ke tabel Potongan_Lain_Lain: relasi satu ke banyak
  7. Relasi tabel Karyawan ke tabel History_Kenaikan_Gaji: relasi satu ke banyak
  8. Relasi tabel Karyawan ke tabel Gaji: relasi satu ke banyak
- Last Update: 3 June 2013 -

3 comments:

Inspiration 7 said...

Mantap gan infonya bermanfaat buat divisi HRD (Penggajian)

Anonymous said...

Izin sedot gan, oya ane mau tanya itu cara ngerelasiinya gmna ya gan, punya agan ko dalam satu tabel ada 3 (PK), bisa seperti itu ya gan ?
Tolong pencerahanya, soalnya pas saya coba relasiin dari Karyawan ke Cuti / lembur tipe relasinya One to One terus...biar jadi One to Many bagaimana ya gan ?

Anonymous said...

Terima kasih untuk ilmunya pak...

ada yg versi 64bit?

karna ga bisa dibuka..