Rabu, 12 September 2012

Delphi: Membuat Data Module Sebagai Database Container

Untuk project yang tidak melibatkan banyak table penempatan dataset/table di form tidak menjadi masalah. Tetapi apabila Anda mengerjakan project yang kompleks dengan banyak tabel, ada baiknya memanfaatkan data module untuk manajemen data yang lebih baik. Database akan terlihat rapih dan memudahkan debugging apabila di masa depan terdapat kesalahan (error).

Berikut langkah-langkah membuat Data Module.

1. Buka Software Delphi Anda: Create Project (Application) seperti terlihat pada gambar:



















2. Simpan unit project dengan nama "pdatamoduleun.pas". File-Save Project As.

















3. Simpan project dengan nama "pdatamodule.dpr"



















4. Buat data module: File-New-Data Module



















5. Simpan unit data module dengan nama "dmun.pas" (atau cukup dmun karena delphi secara otomatis menambahkan extension .pas pada setiap file unit).

















6. Berinama form data module dengan nama "dm". Lihat object inspector (biasanya terletak di bagian kiri layar) seperti terlihat pada gambar di bawah:

























Yups, data module sekarang sudah siap untuk digunakan. Tulisan mendatang saya akan mengupas bagaimana menggunakan data module untuk penempatan database nya.

Jumat, 17 Agustus 2012

Delphi: Procedure Aktivasi Form (Untuk performa starting project yang lebih cepat)

Untuk kawan-kawan netter yang sering membuat project di Delphi yang (kebetulan) banyak melibatkan form ada baiknya menggunakan procedure untuk mengaktifkan atau menonaktifkan sebuah form. Mengapa demikian? Dalam modus default, project pada Delphi secara otomatis meng-create form. Mungkin untuk yang hanya melibatkan satu atau lima form tidak akan masalah pada performa project yang dibuat ketika running, tetapi akan menjadi masalah ketika project berisi puluhan hingga ratusan form. Nah, ada baiknya untuk mengantisipasi slow running pada saat starting mungkin fungsi berikut bisa dipertimbangkan.

Langkah-langkahnya:
1. Buat sebuah project misal: projectfungsiform.
Create-New Application



















2. Berilah nama form dengan utamafrm kemudian buat sebuah button dan isikan caption dengan "buat dan aktifasi form" spt terlihat di gambar



 3. Buatlah unit yang nantinya akan berisi fungsi untuk mengaktifkan form. Berinama unit: "fungsi_form".


















4. Isikan kode berikut pada unit fungsi_form

unit fungsi_form;

interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

procedure aktifkanform(namaform:Tform;classform:TComponentClass);

implementation

procedure aktifkanform(namaform:Tform;classform:TComponentClass);
begin
  if namaform=nil then
  begin
    Application.CreateForm(classform,namaform);
    namaform.ShowModal;
  end else
  begin
    namaform.ShowModal;
  end;
end;


end.

 

5. Buat form tambahan (yang nantinya akan diaktifkan melalui procedure aktifkanform) dan berinama form tersebut subfrm.
 

6. Lihat opsi pada project option (Project-options) akan terlihat gambar berikut:
subfrm dlm posisi auto-create







tampak pada kolom Autocreate Forms ada nama subfrm. Pada opsi default otomatis di create pada saat project di running yang seperti dijelaskan di atas akan membuat project berjalan relatif lambat. Lakukan perubahan agar tidak auto create dengan cara memindahkan dengan klik tombol dengan tanda ">" sehingga tampak seperti gambar di bawah ini:


subfrm dlm posisi non-autocreate/manual create


















7. Setelah subfrm dibuat manual create maka berikutnya tempatkan procedure aktifkan form pada tombol  button1 pada form utamafrm untuk men-trigger.

berikut kode yang disisipkan pada saat click tombol button1

procedure Tutamafrm.Button1Click(Sender: TObject);
begin
  aktifkanform(subfrm,TSubfrm);
end;

Catatan: subfrm adalah nama form yang diaktifkan dan TSubform adalah class form (class pada delphi diawali dengan huruf "T")

8. Compile project dengan menekan tombol CTRL+F9.
9. Jalankan project dengan menekan tombol F9.

Semoga bermanfaat.

Kamis, 16 Agustus 2012

Delphi dan Zeos

Programmer dan Delphi
Bagi seorang programmer sejati, kenikmatan itu berarti menulis baris demi baris kode, meng-compile, melihat hasil, debugging, tambah baris syntax di sana hapus baris syntax di sini, compile ulang, (kadang) garuk-garuk kepala, (sering) lupa mandi....terus dan terus.....
Programmer sejati juga tidak mengharamkan bahasa pemrograman yang satu dan menghalalkan lainnya, programmer sejati...semua bahasa pemrograman dilahap! (kenyataannya semua bahasa pemrograman itu perkara baris kode). Tapi, untuk urusan pilihan nah...programmer juga manusia yang lebih menyukai satu daripada lainnya. Sah-sah saja sih, ada yang fanatik juga boleh2 saja. Fanatisme dalam pemrograman itu resikonya gak sebesar fanatisme golongan.  Biasanya seorang programmer memiliki senjata pamungkas yang bisa dipakai setiap saat dibutuhkan, paling tidak untuk urusan kapitalisme alias urusan perut.
Yang terlahir di Era Orde Baru mesti akrab dengan pemrograman berbasis windows. Wajar, karena di era ini internet baru sampai Australia dan belum di gotong sama Pak Onno W Purbo dkk masuk ke negeri tercinta ini. Salah satu yang patut diperhitungkan pada masa itu adalah Borland Delphi (saat ini berubah menjadi Embarcadero Delphi). Melanjutkan kegemilangan bahasa pemrograman Pascal (versi DOS) dia hadir dalam versi visual.

Database Connection
Delphi, seperti halnya bahasa pemrograman secara umum adalah compiler yang bisa digunakan untuk menghasilkan karya sesuai dengan tingkat kebutuhan dan kemampuan programmer. Artinya, ia seperti sebuah pisau yang kegunaannya bermacam-macam sesuai dengan kehendak si pemakai. Salah satu fungsi delphi yang sering (selalu) saya gunakan adalah sebagai compiler untuk menghasilkan software-software berbasis data. Misal: software toko (Point of Sales), pengelolaan data rumah sakit (SIMRS) atau Software Accounting. Ketika berbicara Delphi untuk pemrograman basis data maka ada dua komponen penting yang harus dipahami yakni: database server dan database connection.


Database Connection dengan Zeos
Alkisah, dalam perbincangan ringan di siang terik di sebuah toko komputer dengan seorang programmer, saya menemukan bahwa ada sebuah database connection yang memberikan alternatif yang menjanjikan kesederhanaan (paling tidak itu kata teman programmer yang baru saya temui dan sayangnya saya lupa namanya-akh..yang penting buat programmer bukanlah nama tapi baris kode wkwkwk), karena sebelum bertemu dengan si teman tadi, bergulat dengan ADO Connection -nya Microsoft. Entah karena saya newbie atau ADO-nya memang setipe dengan abg yang labil. alhasil, jadinya malah stress! Sering terjadi inkonsistensi data, lock unlock issue di recordset de-el-el, terutama pada query yang kompleks. Nah, saya coba download Zeos di sini dan otak-atik. Ternyata, memang benar-benar lebih asyik, lebih straight forward gak basa-basi. Dan belakangan malah meluncur dengan lancar di lingkungan linux. Wah, uenak tennannn sekali nulis kode langsung jalan di Windows en linux. So, buat teman-teman yang belum mencicipi, monggo dicoba Zeos-nya.

Rabu, 15 Agustus 2012

Yang (bingung) Mau Merancang Database

Dalam dunia pemrograman dari dahulu hingga tulisan ini saya buat, rekayasa database adalah salah satu unsur penting. Selain syntax pemrograman yang harus dikuasai, sangatlah perlu seorang programmer mengerti bagaimana merancang database. Apalagi untuk programmer di Indonesia, yang telah malang melintang di dunia jual beli software custom, kelihaian dalam perancangan database mempengaruhi waktu pengerjaan secara signifikan oleh karena kejadian tambal sulam dalam membuat software akan terminimalisir.
Nah, untuk yang pemula dalam perancangan database ataupun Anda yang sudah mahir tapi perlu tambahan referensi, silahkan mampir ke situs koleksi rancangan database di sini. Repository database nya benar-benar lengkap dari mulai bengkel, sekolah, rumah sakit sampai pabrik. Hampir semua (rancangan database yang pernah saya buat) ada di sana. Pertanyaan yang kemudian timbul adalah...kenapa saya baru nemuin ya?

Mulai (lagi)...

Bismilllah....
Untuk kesekian kalinya saya mencoba lagi menulis. Entah sudah berapa blog saya buat, tapi hanya sebatas 1 (satu) artikel dan selanjutnya lupa... Banyak pembenaran perihal kemalasan saya tapi yang jelas intinya dalam satu dua tahun belakangan saya agak misliead dan misdirection dengan rencana-rencana saya sendiri jadi hilir mudik bingung bak setrikaan.
Saya teringat kalimat salah satu pembicara di salah satu seminar yang saya ikuti, bahwasanya hidup itu perkara mencari dan menemukan. Ya, mencari apa yang dimau dan berusaha menemukan yang sesuai kemauan tersebut. Perihal yang ditemukan itu sesuai seratus persen (yang mungkin agak mustahil) ataupun limapuluhpersen nya tidak menjadi soal.
Mudah-mudahan dengan blog ini saya bisa menemukan apa yang saya (selalu) cari dan menjadi semacam pengingat (track keeper) supaya melencengnya tidak jauh-jauh amat...siapa tahu blog ini juga bisa sedikit memberikan track buat kawan-kawan netter yang lagi misdirection? Semoga....

Wassalam