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
Application 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.
3 comments:
Bisa minta tolong publishkan artikel cara pembuatan program backup registry menggunakan delphi,
Terima kasih sebelumnya...
haii kak aku minta source tutorial ini dunkk leas kirim ke email ku pranata_mahta@yahoo.co.id
http://www.rumahdietnutrisi.com
Post a Comment