VT'ındaki verilerinizi tek satır kod ile HTML'e dönüştürmek.

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

VT'ındaki verilerinizi tek satır kod ile HTML'e dönüştürmek.

Mesaj gönderen fduman »

Bu yazımda Delphi'deki güçlü araçlardan biri olan DatasetTableProducer bileşeninden bahsedeceğim.

Bu bileşeni Delphi 7'de, "Internet" paletinde bulabilirsiniz. Enterprise sürüm olma şartı var mıydı hatırlamıyorum. :D

Bu bileşen ile herhangi bir dataset'e çektiğimiz veriyi, HTML olarak dışarıya export edebiliriz. Hem de tablo olarak. Ayrıca istediğimiz başlık (header) ve bitiş (footer) HTML'lerini de dahil edebildiğimiz gibi, kolon renklerini, başlık biçimini ve çizgi kalınlıkları gibi birçok şeyi ayarlama şansımız da var.

Hazırladığım örnek uygulamada ClientDataset kullandım. Hepsi TDataset'ten türediği için, isterseniz Interbase, DBExpress, ADO table ve query'lerinde de kullanabilirsiniz.

Öncelikle tablonuzu açın ve içine veri almasını (fetch) sağlayın. Sonra form'a bir DatasetTableProducer yerleştirin. Dataset property'si ile kendi datasetinize bağlayın.

MaxRows property'sine dikkat! Öntanımlı olarak 20 gelen bu property, satır bazında sayfada en fazla gösterilecek veriyi belirler. Mesela bunu 5 yaparsanız, sadece 5 satırlık veriyi HTML'e çevirecektir.Ayrıca çevirme işlemi, dataset imlecinin konumlu olduğu yerden başlar. Mesela imleç 7. satırda ise 7. satırdan sona kadar HTML'e dönüştürür. Bu yüzden tablonuzun hepsini dönüştürmek istiyorsanız, önce Dataset imlecini başa alın. Nasıl mı? :D First ile...

DatasetTableProducer üzerine çift tıklayarak property editor'unu açın. Burada tablonuzdaki alanları göreceksiniz.Bu bölümde HTML dosyasının nasıl görüneceğine müdahale ediyoruz. Şu alan sağa yanaşık olsun, şu kolonun rengi kırmızı olsun, çizgi kalınlığı şu olsun gibi.

Alanların HTML'de görüneceği başlıklarını değiştirebilir, arka rengi belirliyebilirsiniz, hatta HTML biliyorsanız alanların Custom property'lerine çeşitli TD tag'lar da yazabilirsiniz.

HTML, DatasetTableProducer'in Content property'sini okuduğunuz anda hazırlanır ve string değer olarak döner. Yani:

Dosya:= DatasetTableProducer.Content;

komutu ile string tipindeki "Dosya" değerine, datasetimizin HTML tablo halini attık.

Örnek uygulamayı yöneticimize gönderiyorum. Bileşende bahsedemediğim birçok şey var. İlginizi çekerse bunları da kurcalayın.

İyi çalışmalar.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

ilgili dosyayı siteye kopyaladım.

http://www.delphiturkiye.com/dsplus/m.p ... oducer.zip

Teşekkürler.
Cevapla