CashFlow Application part.1

Oke, kali ini otak lagi rada bener, lagi pengen nulis yang rada bener juga. Pernah ga sih lo pada kesulitan manage duit yang ada di rekening lo? Gaji yang otomatis masuk ke rekening tiba2 kok abis dan kita ga tau jejaknya karena kita ga punya kebiasaan nyatet pengeluaran kita. Gw sering banget mengalami hal ini. Awal – awal make excel, tapi kok rada males yah. Ya udah karena gw hidup ga jauh2 dari programming, kenapa ga gw bikin program kecil ajah yang bisa membantu gw mengatasi hal ini.

Ide awalnya, gw pengen punya buku tabungan real time. Jadi tampilan akhir dari aplikasi ini akan menampilkan saldo di tiap rekening gw dan menunjukkan transaksi apa aja yg gw lakukan untuk tiap rekening. Misal, di rekening A gw pernah ada transaksi Gajian, bayar internet, bayar listrik, makan2 di Semanggi. Maka aplikasi ini akan menampilkan transaksi2 tersebut sekaligus saldonya. Untuk kebutuhan ini gw harus bikin sebuah database yang menyimpan data – data transaksi, sebuah aplikasi untuk input data transaksi, dan sebuah GUI yang bisa menunjukkan saldo rekening secara real time dan juga transaksi apa saja yang telah dilakukan pada bulan tersebut.

Secara garis besar diagramnya akan seperti di bawah ini :

 

 

 

Karena aplikasi ini sekaligus menjadi ajang gw belajar, maka gw akan membuatnya dengan menggunakan teknologi yang berbeda – beda, biar banyak yg dipelajari. Aplikasi input data transaksi menggunakan windows form dengan teknologi C# .Net. Untuk database menggunakan Microsoft SQL Server 2005 dan untuk melihat report menggunakan Reporting Services yang ada di SQL Server. Mengapa harus produk Microsoft?  Yaah, software2 itulah yang terinstal di laptop gw. Simple..

So yang harus lo siapkan untuk membuat aplikasi ini adalah :

  • Sebuah computer (ya iyalah)
  • SQL server 2005, minimal standard edition, dan terinstal reporting services
  • Visual studio 2005

Setelah semua siap, kita mulai dari langkah pertama, yaitu database. Untuk aplikasi2 yang berhubungan dengan integrasi data, artinya data tersebut harus benar dan akurat, design database harus optimal. Jika database sudah bagus, maka aplikasi2 yang dibangun di atasnya akan lebih mudah karena data2 yang akan digunakan sudah benar.

Pertama – tama yang dibutuhkan oleh aplikasi ini adalah sebuah table untuk menyimpan data transaksi, kita namakan table tersebut LedgerTrans . Selanjutnya adalah sebuah table yang berisi account kita di bank yang kita namakan table Account. Dua table ini adalah table terpenting. Selanjutnya, karena kita akan melihat data2 di report dalam bulan tertentu, kita membuat table yang menyimpan informasi Id bulan, nama bulan, dan tahun. Table ini kita namakan Calendar. Ketika memasukkan data transaksi, kita harus mengetahui data transaksi tersebut berupa pemasukan atau pengeluaran. Oleh karena itu, kita buat satu table bernama TransType. Dua table terakhir adalah table tambahan yang akan memudahkan kita membangun aplikasi input form & report. Untuk lebih lengkapnya bisa dilihat gambar di bawah ini :

 
 

Hmm.. simple kan databasenya.. Oke bersambung sampai sini dulu, selanjutnya akan gw jelaskan pembuatan form untuk input data transaksi. Cheers..

Untuk yang males nyoba2 bikin, nih file utk databasenya :

http://gudangupload.com/filelink.php?filecode=b4b045fd36a794a9b4774ad90656d7c1 (untuk create DB)

http://gudangupload.com/filelink.php?filecode=9017b344fd6a31340e0664112e7214ae (create table)

Posted: March 19, 2008 Comments (0)

Deleting Log file di SQL Server 2005

Mencoba memasukkan hal2 yang rada penting biar dikata rada berkelas ni blog.. hueheheheh..

Barusan menghadapi hal yang unik, gw punya database di MSSQL Server 2005 yang bisa dibilang kecil lah, tapi yang bikin aneh, log file dari database tersebut gede banget. Untuk ilustrasi, database gw gedenya cuman 50 mega, nah itu log file gedenya ampe segiga.. Udah dapat dipastikan donk kalo banyak yang ga terpake di log file tersebut..

Untuk yang belom tau, ketika kita bikin database di SQL server, maka akan terbentuk dua jenis file, file tersebut adalah dabaseku.mdf dan databaseku_log.ldf. Akhiran ‘_log’ sebenarnya tidak wajib, hanya untuk memperlihatkan perbedaan saja. Nah file dengan ekstensi ".mdf" inilah tempat data kita, sedangkan file dengan ekstensi ".ldf" adalah tempat bersemayamnya backup, transaksi2 yang belum di commit dll.. nah file ini yang bsia berkembang menjadi besar banget kalo kita ga memanagenya..

Microsoft tidak mengajurkan mendelete langsung file log tersebut, terlebih lagi untuk database produksi, karena bisa jadi transaksi yang belum dicommit akan hilang dan tidak terlacak jejaknya, atau yang lebih parah lagi, database tersbut tidak bisa digunakan kembali.. Untuk mengurangi kemungkinan tersebut, maka kita bisa menggunakan command SHRINKFILE yang ada di MS SQL SERVER. Querynya sebagai berikut

USE databaseku;
GO

ALTER DATABASE databaseku
SET RECOVERY SIMPLE
GO 

DBCC SHRINKFILE (databaseku_log, 1)
GO 

ALTER DATABASE databaseku
SET RECOVERY FULL
GO

Query di atas akan "menyusutkan" file log kita menjadi satu megabytes, bila diinginkan ukuran lain angka "1" bisa diganti sesuai kebutuhan. Selamat mencoba..

 

nb: bila database elo emang setting recoverynya udah simple, maka sintaks yang alter database bisa diapus, baik yang pertama maupun yang kedua. Untuk ngecek mode recovery apa yang ada di database elo, klik kanan di database elo pada Management Studio -> properties -> Options nah liat dah tuh di bagian recovery model..

Posted: January 10, 2008 Comments (6)