Secara umum, ketika seorang pengguna melakukan tindakan berupa input data pada sebuah aplikasi, maka hasil dari tindakan tersebut bisa langsung ditampilkan dalam bentuk report.
Nah, yang terjadi sebenarnya adalah bahwa input data yang dilakukan oleh pengguna tadi masuk ke sebuah halaman database terlebih dahulu. Database inilah yang kemudian diolah menjadi berbentuk laporan.
Karena itulah penting sekali untuk membangun sebuah database dengan tepat, yaitu database yang bisa ditransfer menjadi laporan yang diperlukan.
Maka, jika ada suatu aplikasi yang seharusnya bisa menampilkan laporan tertentu tapi tidak bisa dilakukannya, maka bisa dipastikan database yang dipunyai adalah database yang kurang tepat.
Lalu bagaimana membangun sebuah database yang baik?
Berdasarkan pengalaman pribadi penulis, setidaknya 9 aturan berikut harus terpenuhi:
-
Disusun secara vertikal.
Artinya setiap ada penambahan data atau transaksi baru harus ditambahkan pada baris paling bawah, bukan menyamping atau menambahkan kolom baru.
-
Nama kolom harus unik.
Ini berarti tidak boleh ada header kolom dengan nama yang identik. Kalaupun harus memberi dengan nama yang sama, maka tetap harus diberi karakter atau kata sebagai pembeda. Misalnya “Date” dengan “#Date”, “Jumlah (Rp)” dengan “Jumlah (Pcs)”, “Name1” dan “Name2”, dlsb.
-
Satu baris, satu data transaksi.
Jika terdapat transaksi yang sama dengan item yang berbeda, maka penulisan harus dilakukan berulang pada baris berikutnya. Misalnya customer1 membeli produk A dan produk B, maka kita bisa menulisnya sebagai berikut:
Customer1 | Produk A | 1 pcs
Customer1 | Produk B | 1 pcs
-
Tidak boleh ada baris atau kolom yang di-merge.
Ini adalah aturan umum, saya kira.
-
Data sesuai dengan nama kolom.
Jika kolom tersebut adalah kolom nama barang, maka tidak boleh diisi dengan selain nama barang. Tidak masalah jika urutan kolom atau baris teracak – selama isinya sesuai – kita bisa mengaturnya pada saat pembuatan laporan.
-
Detail oriented.
Semakin rinci sebuah database, semakin baik. Daripada kita hanya punya satu kolom untuk “Tanggal’, akan lebih baik jika kita juga punya kolom lain untuk “Tahun”, “Bulan” dan “Minggu”.
-
Konsistensi data.
Sangat terlarang untuk memberikan penyebutan berbeda untuk satu item yang sama. Contoh, tadinya kita menulis “PT METRO”, kemudian pada kesempatan yang lain kita menulisnya “PT. METRO” (dengan tambahan titik) atau “METRO, PT” -padahal ini adalah entitas yang sama- maka hal ini tidak diperbolehkan.
Kita bisa menggunakan sistem pengkodean untuk meminimalisir kesalahan seperti ini.
-
Format text tanpa formula.
Sebuah tabel database idealnya berformat text. Tidak boleh ada rumus atau formula apapun di dalamnya. Ini juga berlaku untuk nama kolom.
Solusi untuk hal ini adalah kita bisa menggunakan visual basic (Macro Excel) untuk memindahkan data input yang berisi formula menjadi data text pada database.
-
Format as Table.
Anda akan menemukan pengaturan ini jika anda bekerja dengan Excel. Dan meski hal ini sifatnya opsional, tapi kita bisa memiliki beberapa beberapa keuntungan daripada menggunakan tabel standar.
Catatan:
Sebagai informasi, saya selalu menggunakan format as tabel ini pada setiap template excel yang saya buat.
