نقل قول: EMS Advance Export
نقل قول:
نوشته شده توسط
khoshblagh
با سلام خدمت دوستان
احتراما نیاز به انتقال اطلاعات از درون دی بی گیرید EHLib به فایل DBF دارم .(مسئله انتقال اطلاعات حقوق کارکنان به سایت تامین اجتماعی) .
تا حالا از BDE استفاده میکردم. اما این کامپوننت منسوخ شده و برای ویندوز بالاتر از ویندوز 7 نتوانستم نصب نمایم. کامپوننت EMS Advance Export معرفی شده توسط حناب آقای هادی صالحی نصب نمودم، ولی هیچ گونه مثال برای آن پیدا نشد. در صورت امکان نمونه ای جهت انتقال به فایل dbf ارسال نمائید. من از ویندوز 10 و دلفی ریو استفاده مینمایم. پیشاپیش از زحمتی که در این راه متحمل میشوید سپاسگزاری مینمایم. :قلب:
function TransferDataToDBF(const SourceDB: string; const DestinationDBF: string): Boolean;
var
SourceConnection: TADOConnection;
SourceQuery: TADOQuery;
DBFFile: TDBF;
I: Integer;
begin
Result := False;
SourceConnection := TADOConnection.Create(nil);
SourceQuery := TADOQuery.Create(nil);
DBFFile := TDBF.Create(nil);
try
SourceConnection.ConnectionString := SourceDB;
SourceConnection.Open;
SourceQuery.Connection := SourceConnection;
SourceQuery.SQL.Text := 'SELECT * FROM YourTable';
SourceQuery.Open;
DBFFile.FileName := DestinationDBF;
DBFFile.Open;
for I := 0 to SourceQuery.RecordCount - 1 do
begin
DBFFile.Append;
for var Field in SourceQuery.Fields do
begin
DBFFile.FieldByName(Field.FieldName).AsVariant := Field.Value;
end;
DBFFile.Post;
SourceQuery.Next;
end;
Result := True;
finally
DBFFile.Close;
SourceQuery.Close;
SourceConnection.Close;
DBFFile.Free;
SourceQuery.Free;
SourceConnection.Free;
end;
end;
نقل قول: EMS Advance Export
با سلام خدمت استاد ارجمند و سایر دوستان
کد فوق العاده جالبی است که نیاز به کامپنوننت را منتفی میکند. متشکرم:تشویق: