Delphi Can

Orjinalini görmek için tıklayınız: Delphi XE'de XLS işlemleri
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
MErhaba arkadaşlar. Linkedin'de gezinirken Embarcadero'nun bir wbinar'ına denk geldim.

Sizlerle paylaşmak istedim. Xls dosyalarını tabloda yada bir nesnede gösterimini yapmanın FireDac ile yöntemini basitce anlatmış. Hiç denememiştim bu yöntemi ama baya bi runtable'a benziyor.

bu linkden erişebilirsiniz.. XLS Connector:

https://community.idera.com/developer-to...ectthedata
(20-06-2019, Saat: 19:37)mcuyan Adlı Kullanıcıdan Alıntı: [ -> ]MErhaba arkadaşlar. Linkedin'de gezinirken Embarcadero'nun bir wbinar'ına denk geldim.

Sizlerle paylaşmak istedim. Xls dosyalarını tabloda yada bir nesnede gösterimini yapmanın FireDac ile yöntemini basitce anlatmış. Hiç denememiştim bu yöntemi ama baya bi runtable'a benziyor.

bu linkden erişebilirsiniz.. XLS Connector:

https://community.idera.com/developer-to...ectthedata

Merhabalar,

Paylaşımınız için teşekkürler.

Bu harici bir bileşen ile FireDAC arasında yapılan bir bağlantı.
Bağlantıyı FireDAC direkt olarak yapamıyor malesef. Blush

https://www.cdata.com/
https://www.cdata.com/firedac/
https://www.cdata.com/drivers/excel/firedac/

Firmanın buna benzer geliştirdiği bir çok bileşende mevcut.
İş süreçlerini basitleştirecek gerçekten çok iyi bileşenler mevcut.

Kolay gelsin.
İyi günler. İşin aslı bir kaç haftadır bunu paylaşmak niyetim vardı ama örnek için vakit ayıramamıştım. Tıpkı ADO'nun JET sürücülerini kullandığı gibi FireDAC kütüphanesi de aynı modüller üzerinden excel dosyalarına bağlantı yapabilmektedir. Basit bir .dfm örneği ise ... 

object FDPhysMSAccessDriverLink: TFDPhysMSAccessDriverLink
  DriverID = 'fdrvExcel'
  Database = 'c:\yol\dosya.xls'
  ODBCDriver = 'Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)'
  ODBCAdvanced = 'HDR=No;IMEX=1'
end

object fdExcel: TFDConnection
 Params.Strings = (
   'DriverID=fdrvExcel')
 LoginPrompt = False
end

object fdqExcel: TFDQuery
 Connection = fdExcel
 SQL.Strings = (
   'SELECT * FROM [$Tablo1]')
end

... şeklinde olacaktır.

Not: Office 2003 (.xls) dosyaları için gerekmese de office 2007 (.xlsx) dosyaları için güncel sürücüler..:
x86 ..: indir
x64 ..: indir

Ek bilgi olarak ise ADOConnection ile JET sürücüleri üzerinden bağlantı yapabilmek için aşağıdaki "ConnectionString"ler kullanılabilir.
jet 4.0 ile xls  => Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\yol\dosya.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1"
ace 12 ile xls  => Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\yol\dosya.xls;Extended Properties="Excel 8.0;HDR=YES;IMEX=1"
ace 12 ile xlsx =>Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\yol\dosya.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES;IMEX=1"


İyi çalışmalar.