AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Mit EkRtf Report aus Ado erstellen

Mit EkRtf Report aus Ado erstellen

Ein Thema von Harry M. · begonnen am 16. Jan 2019 · letzter Beitrag vom 17. Jan 2019
Antwort Antwort
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#1

AW: Mit EkRtf Report aus Ado erstellen

  Alt 16. Jan 2019, 16:53
Die Idee klingt super, aber leider kein Hauptgewinn. Ich habe das \Scan(rechnungen)\ durch \Scan(ADOQuery1)\ erstezt. Fehlermeldung: Scan Alias not found: ADOQuery1
Ich muss im Template den Tabellennamen übergeben damit RkRtf auch weiß welche Tabelle zu lesen ist wenn mehrere vorhanden sind.
Harry
Gruß Harry
www.H-Soft.info
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#2

AW: Mit EkRtf Report aus Ado erstellen

  Alt 16. Jan 2019, 16:59
Ich muss im Template den Tabellennamen übergeben damit RkRtf auch weiß welche Tabelle zu lesen ist wenn mehrere vorhanden sind.
NEIN, das ist so leider nicht dokumentiert. Wenn du mehrere DataSets benötigst, dann musst du diese auch übergeben:
Delphi-Quellcode:
EkRtf1.ExecuteOpen(
  [ADOQuery1, ADOQuery2, ADOQuery3], // Da, ganz viele
  SW_SHOW);
und im Report diese ([ADOQuery1, ADOQuery2, ADOQuery3] ) DataSet-Namen verwenden
  Mit Zitat antworten Zitat
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#3

AW: Mit EkRtf Report aus Ado erstellen

  Alt 16. Jan 2019, 16:59
Bei mir läuft folgender Code:
Delphi-Quellcode:
  ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
                                ExtractFilePath(Application.ExeName) + 'Datenbank1.mdb;' +
                                'Persist Security Info=False';

  ADOQuery1.SQL.Text := 'SELECT * FROM rechnungen';
  ADOQuery1.ExecSQL;

  EkRTF1.InFile := ExtractFilePath(Application.Exename) + 'Rechnung_Vorlage.rtf';
  EkRTF1.OutFile := ExtractFilePath(Application.Exename) +'Rechnung_Ausgabe.rtf';

  EkRTF1.ExecuteOpen([ADOQuery1], SW_SHOW);
Die Zeile EkRTF1.CreateVar('database_name',dbname); fehlt bei mir nicht, weil ich in meinem Template keinen Marker mit dem Namen "database_name" habe. Im Demo wird hier lediglich die var dbname mit dem Inhalt Nwind.mdb an den den Marker übergeben.

Ich habe nur 1 Datasheet. Und der Report läuft nicht. Weder mit dem Tabellennamen "rechnungen" und auch nicht mit dem Datensheet-Name "AdoQuery1".
Harry
Gruß Harry
www.H-Soft.info

Geändert von Harry M. (16. Jan 2019 um 17:03 Uhr)
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#4

AW: Mit EkRtf Report aus Ado erstellen

  Alt 16. Jan 2019, 17:01
Versuch es doch mal so
Delphi-Quellcode:
ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
                                ExtractFilePath(Application.ExeName) + 'Datenbank1.mdb;' +
                                'Persist Security Info=False';

  ADOQuery1.SQL.Text := 'SELECT * FROM rechnungen';
  ADOQuery1.Open(); // statt ExecSQL

  EkRTF1.InFile := ExtractFilePath(Application.Exename) + 'Rechnung_Vorlage.rtf';
  EkRTF1.OutFile := ExtractFilePath(Application.Exename) +'Rechnung_Ausgabe.rtf';

  EkRTF1.ExecuteOpen([ADOQuery1], SW_SHOW);
  Mit Zitat antworten Zitat
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#5

AW: Mit EkRtf Report aus Ado erstellen

  Alt 16. Jan 2019, 17:15
Ich habe jetzt AdoQuery1.SqlExec; durch  ADOQuery1.Open(); ersetzt, sowie das Template von rechnungen.anzahl usw auf AdoQuery1.anzahl angepasst...

Nu läufts. Vielen Dank für Deine Mühe

PS: Eigendlich auch bisschen logisch, wenn ich so drüber nach denke. Ich wähle die Datenbank ja schon mit SELECT an.
1000 Dank noch mal
Harry
Gruß Harry
www.H-Soft.info

Geändert von Harry M. (16. Jan 2019 um 17:19 Uhr)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#6

AW: Mit EkRtf Report aus Ado erstellen

  Alt 17. Jan 2019, 10:06
Du könntest jetzt noch die ADOQuery1 in QueryRechnung oder so umbenennen, dann weißt du auch in 3 Monaten noch (ohne auf das SQL-Statement zu gucken) was der Inhalt der Query ist.
Ralph
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz