Salah satu yang membuat kita “kerasan” menggunakan delphi karena didukung beragam paket VCL (komponen) bawaan maupun tambahan yang dibuat oleh pihak ketiga.
Saat ini ada ratusan bahkan ribuan komponen bagus yang dibuat untuk delphi baik yang gratis maupun berbayar.
Semakin hari semakin banyak saja komponen bagus yang membuat kita “ngiler” untuk memasang di delphi kita.
Dengan semakin banyak komponen yang kita pasang konsekuensinya lambat laun akan membuat loading delphi menjadi berat karena membutuhkan lebih banyak resource.
Untuk meringgankan beban delphi, salah satu jalan yang kita tempuh adalah dengan mengurangi sebagian paket komponen, diinstall sebagian aja yang saat ini dibutuhkan.
Namun cara ini agak merepotkan bila mana kita sedang mengerjakan banyak proyek yang menggunakan macam2 komponen berbeda.
Saat mengerjakan proyek A, install paket A,B,C.
Saat mengerjakan proyek B, install paket A,B,E,F.
Saat mengerjakan proyek C, install pake layout model lama.
Ada solusi untuk masalah diatas yaitu memanggil IDE delphi dengan menggunakan konfigurasi yang berbeda (kita bisa membuat 2 atau lebih shortcut untuk ini).
Caranya kita copy shortcut yang ada menjadi beberapa sesuai kebutuhan lalu kita edit parameternya.
misalnya ..
Shortcut asli pada Delphi XE
“C:\Program Files\Embarcadero\RAD Studio\8.0\bin\bds.exe” -pDelphi
kita buat beberapa shortcut misalnya ..
“C:\Program Files\Embarcadero\RAD Studio\8.0\bin\bds.exe” -pDelphi -rPaketA
“C:\Program Files\Embarcadero\RAD Studio\8.0\bin\bds.exe” -pDelphi -rPaketB
“C:\Program Files\Embarcadero\RAD Studio\8.0\bin\bds.exe” -pDelphi -rPaketC
selanjutnya kita panggil masing2 shortcut dan lakukan kustomisasi, misalnya paket apa aja yg diinstall, layoutnya gimana dan setting lainnya.
Dengan membuat berberapa konfigurasi seperti diatas maka loading IDE delphi akan lebih cepat dan ringan karena tidak semua paket dimuat ke memory dan kita tidak perlu bolak/balik bongkar pasang paket.
Semoga bermanfaat
Pada Aplikasi yang menggunakan database berbasis Client Server, banyak hal yang menyebabkan gagalnya koneksi, antara lain server mati dan gangguan jaringan.
Biasanya untuk mengantisipasi hal tersebut kita menggunakan jurus try .. except .. end seperti contoh dibawah ini :
try
IBDatabase1.Open;
except
ShowMessage('Koneksi gagal');
end;
tetapi salah satu kekurangan cara tersebut adalah menampilkan pesan kesalahan terlalu lama, bahkan hingga aplikasi client menjadi not responding.
hal ini tidak baik mengingat kecepatan merupakan salah satu hal terpenting dalam koneksi client server.
Menyikapi hal tersebut diatas, semoga library kecil yang kami buat ini dapat membantu menjadi sebuah solusi yang dapat melakukan pemeriksaan kesiapan server dengan lebih cepat sebelum kita benar-benar melakukan koneksi ke database.
Library ini lumayan kecil (cuman sekitar 19KB) dan mendukung untuk pemeriksaan server Interbase, Firebird, MySQL, PostgreSQL, SQLServer dan Oracle.
Library beserta unit deklarasinya dapat di download secara gratis di ..
https://app.box.com/s/hy0g5mhghpry6z6ljnbs
Isi unit cek_remote_unit ..
unit cek_remote_unit;
(*
Cek Remote Utilities
Unit untuk mengecek database Client Server
mendukung Interbase, Firebird, MySQL, PostgreSQL, SQLServer, Oracle
ditulis oleh : Imam Chalimi Muslim, Maret 2013
http://www.facebook.com/imam.chalimi
http://www.facebook.com/groups/delphi.interbase
catatan:
Unit ini membutuhkan file cek_remote.dll
copykan file cek_remote.dll satu folder dengan aplikasinya
atau copykan ke c:\windows\system32
Revisi terakhir 7 Maret 2013
 *)
interface
uses
Windows;
type
TServerPort = (spInterbase, spMySQL, spPostgreSQL, spSQLServer,
spIB3051, spIB3052, spIB3053, spOracle);
function CekRemoteServer(IPAdress:string='127.0.0.1';ServerPort:TServerPort=spInterbase):Boolean; stdcall;
external 'cek_remote.dll';
function CekRemoteInterbase(IPAdress:string='127.0.0.1'):Boolean; stdcall;
external 'cek_remote.dll';
function CekRemoteMySQL(IPAdress:string='127.0.0.1'):Boolean; stdcall;
external 'cek_remote.dll';
function CekRemotePostgreSQL(IPAdress:string='127.0.0.1'):Boolean; stdcall;
external 'cek_remote.dll';
function CekRemoteSQLServer(IPAdress:string='127.0.0.1'):Boolean; stdcall;
external 'cek_remote.dll';
function CekRemoteOracle(IPAdress:string='127.0.0.1'):Boolean; stdcall;
external 'cek_remote.dll';
implementation
end.
Contoh penggunaan …
procedure TForm1.Button1Click(Sender: TObject);
begin
if not CekRemoteInterbase('192.168.0.1') then
begin
ShowMessage('Koneksi gagal');
Exit;
end;
try
IBDatabase1.Open;
except
ShowMessage('Database tidak dapat dibuka');
end;
end;
fungsi-fungsi yang tersedia ..
CekRemoteServer … contoh CekRemoteServer(‘192.168.0.1’,spInterbase);
CekRemoteInterbase … contoh CekRemoteInterbase(‘192.168.0.1’);
CekRemoteMySQL … contoh CekRemoteSQLServer(‘192.168.0.1’);
CekRemotePostgreSQL … contoh CekRemoteSQLServer(‘192.168.0.1’);
CekRemoteSQLServer … contoh CekRemoteSQLServer(‘192.168.0.1’);
CekRemoteOracle … contoh CekRemoteOracle(‘192.168.0.1’);
selain itu juga dapat digunakan untuk memeriksa port interbase non standard 3051-3053.
Semoga bermanfaat