Showing posts with label Delphi Tips. Show all posts
Showing posts with label Delphi Tips. Show all posts

Menyisipkan Judul Report didalam Statement SQL

Wednesday, August 6, 2008
Inti dari tutorial ini adalah menunjukan bagaimana caranya menyisipkan string reguler didalam statement SQL. String reguler disini maksudnya adalah string yang bukan nilai dari sebuah table di dalam Database. Contoh :

SELECT 'Daftar Produk (Seluruh)' AS Judul, ProductID,ProductName
FROM Products

Judul ProductID ProductName
------------- ----------- ----------------------------------------
Daftar Produk 17 Alice Mutton
Daftar Produk 3 Aniseed Syrup
Daftar Produk 40 Boston Crab Meat
Daftar Produk 60 Camembert Pierrot
Daftar Produk 18 Carnarvon Tigers
Daftar Produk 1 Chai
. . . .
. . . .

77 rows selected

Statement SQL diatas akan menambahkan kolom JUDUL yang berisi nilai yang sama pada output query nya. nilai-nilai yang ada dibawah kolom JUDUL bukan merupakan nilai-nilai yang ada di table PRODUCTS, melainkan string biasa yang kita sertakan dalam Statement SQL nya. dibawah ini saya akan memperlihatkan contoh bagaimana metode ini dipakai untuk menyisipkan judul laporan yang berbeda kedalam SQL Statement menggunakan hanya satu komponen FastReport di Delphi.

Cara ini biasa saya gunakan untuk menghasilkan judul report berdasarkan parameter yang saya inputkan. misalnya saya akan menampilkan laporan daftar produk per supplier dan ingin agar judul report sesuai dengan nama supplier yang ingin saya cetak misalnya judul report nya ingin seperti ini : 'Daftar Produk Supplier : PT. ABC', 'Daftar Produk Supplier : PT. XYZ' dst dengan catatan struktur kolom dari report tersebut sama. Jadi parameternya saya sisipkan kedalam SQL Statement yang digunakan untuk pengambilan datanya. Sebagai contoh dibawah ini saya perlihatkan bagaimana caranya menyisipkan judul untuk report kedalam sebuah SQL statement menggunakan komponen FastReport dan ADOQuery di Delphi.

procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('SELECT ');
adoquery1.SQL.Add('''Daftar Produk Supplier : ''+a.CompanyName as Judul,');
adoquery1.SQL.Add('B.ProductID,A.CompanyName,b.ProductName,');
adoquery1.SQL.Add('b.QuantityPerUnit,b.UnitPrice,b.UnitsInStock ');
adoquery1.SQL.Add('FROM suppliers a, Products b ');
adoquery1.SQL.Add('where a.SupplierID=b.SupplierID ');
adoquery1.SQL.Add('AND a.CompanyName = :CN');
adoquery1.Parameters[0].Value := combobox1.Text;
adoquery1.Prepared := true;
adoquery1.Open;

//kalau data ada
if adoquery1.RecordCount > 0 then
frxReport1.ShowReport();

end;


kamu bisa lihat didalam Statement SQL diatas saya sisipkan string 'Daftar Produk Supplier :' yang digabung dengan nilai CompanyName dari table Suppliers yang kemudian dialiaskan sebagai kolom/field Judul yang nantinya field/kolom Judul ini akan saya tempatkan di report sebagai judul report. agar lebih jelas kamu bisa lihat gambar dibawah ini :

Report Design
Report Design

Application Runtime
Application Runtime


Report Runtime
Report Runtime

Dengan metode ini kamu bisa memberikan judul report yang lebih detail tanpa harus memboroskan pemakaian komponen untuk mencetak berbagai report yang mempunyai struktur kolom yang sama.

Download Source Code Aplikasi ini disini.

Combobox dengan Dua Kolom (Field)

Friday, July 25, 2008

Menampilkan nilai dari dua field atau lebih dalam satu combobox.


di dalam artikel ini saya akan sharing tips ringan pemrograman Delphi untuk menampilkan nilai dari dua kolom/field dari sebuah table di database menggunakan komponen DBLookupComboBox. disini saya akan menggunakan sebuah database yang dibuat dengan Microsoft Access.



Buat Project baru dan tambahkan sebuah komponen ADOConnection, ADOTable, dan sebuah DataSource ke dalam form. Hubungkan komponen ADOConnection di atas dengan table di database yang kamu pilih. Setelah koneksi dengan Database Microsoft Access sukses, langkah selanjutnya adalah menghubungkan komponen ADOTable ke komponen ADOConnection dan hubungkan juga komponen DataSource ke ADOTable.



Tambahkan komponen DBLookupComboBox (Tab DataControls) ke dalam form. set properties ListSource ke komponen DataSource dan KeyField ke salah satu field dari table yang kamu pakai. Untuk menampilkan dua field atau lebih dalam DBLookupComboBox kamu ketik manual nama-nama field yang ingin kamu tampilkan dalam komponen DBLookupComboBox - setiap field dipisahkan dengan titik koma (;) misalnya : productid;descriptions.




Application Design Time






DBLookupComboBox Properties








Application Run Time


Recent Comments

Tags Cloud

Blogumulus by Roy Tanck and Amanda Fazani