![]() |
Fastreport druckt Stringliste nicht
Moin,
habe hier einen Fastreport und will damit eine Stringliste drucken. Relevanter Sourcecode :
Delphi-Quellcode:
Das ist mehr oder weniger aus der Demo PrintStringlist abgekupfert. StringDS ist dabei ein TfrxUserDataset. slZeilen ist die Stringliste und die zeigt mir ein Memo auch gefüllt an. Das GetValue soll ja wohl die Werte übergeben, aber da landet das Programm nie und dementsprechend ist der Report leer. Wo ist da ein Fehler oder wo muss noch was eingestellt werden ?
procedure TfrmFrDruck.btnDruckenClick(Sender: TObject);
begin Memo1.Lines := slZeilen; StringDS.RangeEnd := reCount; StringDS.RangeEndCount := slZeilen.Count; frDruck.ShowReport; end; procedure TfrmFrDruck.StringDSGetValue(const VarName: string; var Value: Variant); begin // if CompareText(VarName, 'element') = 0 then Value := slZeilen[StringDS.RecNo]; end; Und dann noch das CompareText. Wozu das ? Wo kommt 'element her' ? Wo reCount herkommt ist auch nicht klar. Sorry, aber die Fastreport-Demos sind unter aller Sau. Da erzählt man jedem Anfänger, dass der Quelltext zu kommentieren ist. Die Herrschaften von Fastreport haben das aber nicht mal in ihren Demos nötig. 8-) |
AW: Fastreport fruckt Stringliste nicht
Hallo,
na als erstes ändert sich ja dein "[StringDS.RecNo]" ja nie. Wodurch auch? Die Methode StringDSGetValue ruft nur festkodierte Parameter auf. Beispiel, im Report hat ein Textfeld den Inhalt "[TestParam]". So würde dann folgender Methodenaufruf aussehen:
Delphi-Quellcode:
Um eine dynamische Anzahl von Zeilen im Report darzustellen, wäre die Arbeit mit einem Dataset einfacher und tendenziell wartbarer.
if CompareText(VarName, 'TestParam') = 0 then
Value := slZeilen[2]; //fester Aufruf zum ItemIndex EDIT: Ach es gibt ja wirklich eine druckbares StingSet. Hast Du auch im Report den DataSet im MasterData auch auf das StringDS gesetzt? |
AW: Fastreport fruckt Stringliste nicht
Hi Hansa,
Zitat:
Zitat:
Zitat:
|
AW: Fastreport fruckt Stringliste nicht
'Das da kann man kaum lesen. ' Das betrifft jetzt borncrush.
|
AW: Fastreport fruckt Stringliste nicht
StringDS dem Report als Dataset zuzuweisen nützt nichts. Und das mit der RecNo ist vorerst irrelevant. Denn das StringDSGetvalue wird ja erst gar nicht erreicht. Vorerst also auch egal, was da drinsteht.
Zitat:
|
AW: Fastreport fruckt Stringliste nicht
Hansa, ist das ein Demoprojekt? Dann stell es doch mal rein.
Normal solltest Du eine Variable definieren (im Reportdesigner: Report - Variables) und dann im frxMemo diese Variable einfach zuweisen (doppelklick rein und dann halt über den Editor auswählen, so wie Du ein Datenfeld auswählst - diesmal halt nur eine Variable) |
AW: Fastreport fruckt Stringliste nicht
Liste der Anhänge anzeigen (Anzahl: 1)
Keine Demo, eher Test. Trotzdem Zwischenfazit : mit D7 und dem vielgeschmähten Quickreport wäre das das da schon längst fertig. Und der vielgerühmte Fastreport ist alles andere als gut. Schlecht zu durchblicken, miese Demos, mittelmässige und halbfertige Dokumentation.
|
AW: Fastreport fruckt Stringliste nicht
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Anbei die Korrektur: 1. Du musst das UserDataset in den Report aufnehmen und dem Masterband zuweisen (wie ein "normales" Dataset) 2. Du willst ein Feld drucken, also das im UserDataset definieren und keine sieben Felder 3. alle Methoden des UserDataset implementieren: CheckEOF, Prior, .... 4. Dem FrxMemo das Feld zuweisen... und dann klappts auch mit dem drucken... |
AW: Fastreport fruckt Stringliste nicht
Meistens besteht ein VCL-Projekt sowohl aus Pascal-Quelltext als auch DFM-Informationen. Das sollte Hansa eigentlich wissen.
Ich halte es auch für einen Schildbürgerstreich, die Usability von zwei Frameworks derart zu beurteilen, das man das eine Framework zum ersten Mal benutzt, das zweite aber offenbar aus dem FF beherrscht. Und dann noch nicht einmal ein Demoprojekt abkupfern kann. :lol: Also ich weiß nicht, vielleicht ist das nicht ganz so seriös... :stupid: Also ich hab 99% der FastReport-Demos ziemlich schnell kapiert (oder ich rede mir das jetzt schön, wäre auch denkbar ;-)). Nur die Skriptengine ist zwar saugut, aber ziemlich unvollständig dokumentiert, da muss man einfach rumprobieren. |
AW: Fastreport fruckt Stringliste nicht
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:37 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