![]() |
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:
|
AW: Fastreport fruckt Stringliste nicht
Zitat:
|
AW: Fastreport fruckt Stringliste nicht
Hat er doch. Aber er hat vielleicht das Silbertablett vergessen.
|
AW: Fastreport fruckt Stringliste nicht
Bitte, wo ? Da steht keinerlei Antwort auf die Fragestellung. Wer behauptet 99% der Demos direkt vertanden zu haben, für den dürfte das Problemchen ein leichtes sein. Einfach dann mal PAS und DFM anhängen, so wie ich. Für dieses Jahr ist aber jetzt Schluss. :mrgreen: Guten Rutsch an Alle. Nächstes Jahr gehts weiter. Also eventuell in mind. 2 Stunden. :shock:
|
AW: Fastreport fruckt Stringliste nicht
|
AW: Fastreport fruckt Stringliste nicht
Zitat:
|
AW: Fastreport fruckt Stringliste nicht
Liste der Anhänge anzeigen (Anzahl: 1)
@Lemmy : Dein Programm geht. Meins aber immer noch nicht. 8-) Ich habe aber alles erst mal angepasst. Trotzdem gibt es einen Unterschied in der DFM :
Delphi-Quellcode:
Bei mir fehlt das und ich sehe nichts, wo man das einstellen könnte. Allerdings : wenn ich das von Hand in die DFM schreibe, dann gehts immer noch nicht.
Datasets = <
item DataSet = StringDS DataSetName = 'frxUserDataSet1' end> Variables = <> Style = <> |
AW: Fastreport druckt Stringliste nicht
Du musst das Dataset dem Report bekannt machen und dem Band zuweisen
|
AW: Fastreport druckt Stringliste nicht
und dazu noch das Dataset NICHT der entsprechenden Eigenschaft von TfrxReport zuweisen (also da wieder raus löschen) und wirklich nur dem Band in deinem Report zuweisen
|
AW: Fastreport druckt Stringliste nicht
Nichts anderes war im ersten Antwort-Post enthalten. Wie auch immer (auch wenn ich jetzt die ganzen Frustkommentare in anderen Threads verstehe und emotional nachvollziehen kann).
Du hast codemäßig alles vorbereitet, scheinbar fehlt IM REPORT(!) im MasterData-Bereich den Datenquellenzuordnung. Nun aber :-) Alles Gute Achso: Um die Jungs zu schützen, ich kam hervorragend mit dem Demos klar und konnte mir das lesen von Dokus fast sparen. Beschreibungen sind relativ. Selbst die BEschreibung hier im Forum war nicht ausreichend. Das ist auch ok. Jeder brauch anderer Formulierungen/Visualisierungen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:52 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