Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Verileri Word'e aktarmak
#1
Merhaba;


Genelde databaseden verileri excele aktarırdım durum gereği word aktarmam gerekti.
Bir kaç gündür bu konuda araştırma yapıyorum saçma sapan kaynakların içinden naçizane bilgime göre bir şeyler yaptım.
Bu konuda ileride birilerine ihtiyaç olabilir diye, ayrıca paylaşmak istedim.



procedure TForm1.BtnWordClick(Sender: TObject);
var
  Word: OleVariant;
begin
  try
    Word := CreateOleObject('Word.Application');
  except
    Exit;
  end;
  FDQ := TFDQuery.Create(Nil);
  try
    begin
      FDQ.Connection := FDConnection;
      FDQ.Active := False;
      FDQ.Close;
      FDQ.SQL.Clear;
      FDQ.SQL.Add('Select * From USERS');
      FDQ.Prepared := True;
      FDQ.Open;
      if Not FDQ.IsEmpty then
      begin
        Word.Visible := True;
        Word.Documents.Add;
        Word.Caption := 'BG';
        Word.Selection.PageSetup.Orientation := 0; // Yatay mı? dikey mı?
        Word.Selection.PageSetup.LeftMargin := 10; // Sol kenar
        Word.Selection.PageSetup.RightMargin := 10; // Sağ kenar
        Word.Selection.PageSetup.TopMargin := 20; // Üst kenar
        Word.Selection.Font.Name := 'Arial';
        Word.Selection.Font.Size := 12;
        Word.Selection.Font.Bold := True;
        Word.Selection.TypeText(FDQ.FieldByName('USERNAME').AsString);
        Word.Selection.TypeParagraph;
        Word.Selection.TypeParagraph;
        Word.Selection.Font.Name := 'Arial';
        Word.Selection.Font.Size := 11;
        Word.Selection.Font.Bold := False;
        Word.Selection.TypeText(FDQ.FieldByName('USERPASS').AsString);
      end;
    end;
  finally
    // Word.Quit;
    // Word := Unassigned;
    FDQ.Free;
  end;
end;
Cevapla
#2
Merhaba,
Paylaşım için teşekkür ederiz.
Not: Konu FMX ile ilgili olmadığı için Genel Programlama bölümüne taşınmıştır.
Cevapla
#3
(20-11-2019, Saat: 15:59)BGNew Adlı Kullanıcıdan Alıntı: Merhaba;


Genelde databaseden verileri excele aktarırdım durum gereği word aktarmam gerekti.
Bir kaç gündür bu konuda araştırma yapıyorum saçma sapan kaynakların içinden naçizane bilgime göre bir şeyler yaptım.
Bu konuda ileride birilerine ihtiyaç olabilir diye, ayrıca paylaşmak istedim.



procedure TForm1.BtnWordClick(Sender: TObject);
var
  Word: OleVariant;
begin
  try
    Word := CreateOleObject('Word.Application');
  except
    Exit;
  end;
  FDQ := TFDQuery.Create(Nil);
  try
    begin
      FDQ.Connection := FDConnection;
      FDQ.Active := False;
      FDQ.Close;
      FDQ.SQL.Clear;
      FDQ.SQL.Add('Select * From USERS');
      FDQ.Prepared := True;
      FDQ.Open;
      if Not FDQ.IsEmpty then
      begin
        Word.Visible := True;
        Word.Documents.Add;
        Word.Caption := 'BG';
        Word.Selection.PageSetup.Orientation := 0; // Yatay mı? dikey mı?
        Word.Selection.PageSetup.LeftMargin := 10; // Sol kenar
        Word.Selection.PageSetup.RightMargin := 10; // Sağ kenar
        Word.Selection.PageSetup.TopMargin := 20; // Üst kenar
        Word.Selection.Font.Name := 'Arial';
        Word.Selection.Font.Size := 12;
        Word.Selection.Font.Bold := True;
        Word.Selection.TypeText(FDQ.FieldByName('USERNAME').AsString);
        Word.Selection.TypeParagraph;
        Word.Selection.TypeParagraph;
        Word.Selection.Font.Name := 'Arial';
        Word.Selection.Font.Size := 11;
        Word.Selection.Font.Bold := False;
        Word.Selection.TypeText(FDQ.FieldByName('USERPASS').AsString);
      end;
    end;
  finally
    // Word.Quit;
    // Word := Unassigned;
    FDQ.Free;
  end;
end;
Elinize sağlık.
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla
#4
(20-11-2019, Saat: 16:07)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
Paylaşım için teşekkür ederiz.
Not: Konu FMX ile ilgili olmadığı için Genel Programlama bölümüne taşınmıştır.

Haklısınız, Bilgilendirme için teşekkür ederim.
Cevapla
#5
Paylaşım için teşekkürler BGNew.
Sizden ricam konu başlığı belirlerken biraz daha açıklayıcı olmasına dikkat eder misiniz
There's no place like 127.0.0.1
WWW
Cevapla
#6
(20-11-2019, Saat: 17:38)SimaWB Adlı Kullanıcıdan Alıntı: Paylaşım için teşekkürler BGNew.
Sizden ricam konu başlığı belirlerken biraz daha açıklayıcı olmasına dikkat eder misiniz

Daha dikkatli olurum   Smile
Cevapla
#7
Teşekkürler katkınız için.
Cevapla
#8
Teşekkürler paylaşım için.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  farkli tablolardan verileri dataset e toplama sadikacar60 12 1.825 23-03-2023, Saat: 18:34
Son Yorum: sadikacar60
  DBGrid1'deki Verileri Tabloya Aktarma OZCANK 11 4.920 28-09-2022, Saat: 15:49
Son Yorum: OZCANK
  FDMemtable İçeriğindeki Verileri Veritabanına Kaydetme bünyamin68 1 798 22-07-2022, Saat: 21:18
Son Yorum: mcuyan
  CSV Dosyasını DBGrid1 Aktarmak OZCANK 14 3.482 04-06-2022, Saat: 04:16
Son Yorum: OZCANK
  [ÇÖZÜLDÜ] n.. kadar Listviewdaki verileri kayıt shooterman 7 2.180 22-04-2021, Saat: 16:42
Son Yorum: shooterman



Konuyu Okuyanlar: 1 Ziyaretçi