RM (Berichtsmaschine) ist ein leistungsstarkes Delphi -Berichtskontrollpaket. Verwenden Sie es, um sehr komplexe Berichte zu erstellen. Die einfachste Verwendung wird unten erklärt:
Stellen Sie zwei Datenbanksteuerelemente in das Formular ein: Adoconnection und Adoquery, um die Verbindung von Adoconnection einzurichten. Loginprompt = false. Die Verbindung von Adoquery weist auf Adoconnection hin. Adoquerys SQL legt Datenanfragenanweisungen fest.
Setzen Sie zwei RM -Berichtskontrollen auf das Formular: RMDBDATASET und RMREPORT. Der Datensatz von rmdbdataset zeigt auf Adoquery. Der Datensatz von RMReport zeigt auf den RMDBDataset.
(Wenn Sie möchten, dass die endgültige generierte Anwendung Bericht entworfen hat, müssen Sie auch die Steuerung von RMDesigner festlegen und keine Attribute festlegen.)
Doppelklicken Sie auf die RMReport-Steuerung, um die Berichtsvorlage zu entwerfen.
Für Berichte, die im Allgemeinen mit den Regeln verglichen werden, müssen Sie der Vorlage nur vier Bandobjekte hinzufügen, nämlich: 1), Seitenkopf: normalerweise zum Anzeigen von Berichtsnamen, Zeit usw. 2), Hauptelement -Header: Normalerweise verwendet Spaltenname anzeigen. 3) Hauptelementdaten: Wird zum Anzeigen von Daten verwendet. 4) Seite Fußnote: Wird verwendet, um die Seitennummer, das Datum usw. anzuzeigen.
Die entworfene Vorlage kann in DFM oder in einer unabhängigen Vorlagendatei mit der Erweiterung RMF gespeichert werden und wird zur Laufzeit aufgerufen. Hier sind ein paar Code -Snippets:
procedure TBrowseForm.Button5Click(Sender: TObject);varRMReport:TRMReport;beginif ADOQuery1.IsEmpty thenExit;tryRMReport := TRMReport.Create(Self);RMReport.LoadFromFile('Match.rmf');RMReport.PrepareReport;RMReport.ShowReport; finallyRMReport .Frei; Ende; Ende;
procedure tform1.button1click (Absender: Tobject);
// Berichtsvorlage TFFIRE1.Button2Click (Absender: Tobject);
Für die meisten Regeln berichten, dass das oben genannte Wissen ausreicht. Dies ist jedoch nur der einfachste Weg, um RM zu verwenden, und es ist weit davon entfernt, die Kraft von RM -Funktionen zu reflektieren.
RM hat zwei attraktive Funktionen, die ich momentan am meisten brauche:
1) Die Daten können aus der Datenbank oder von irgendwo anders stammen, z. B. in Dateien, im Speicher usw. 2) Es ist nicht erforderlich, Vorlagen vorzubereiten.
Obwohl RM leistungsfähig ist, fühlt es sich nicht kompliziert an.
1. Was sind Ihre guten Lösungen für einen Bericht, für den zwei Seiten eines Stücks Papier erforderlich sind? Sie können beim Drucken ungerade oder sogar Seiten eingeben. 2. Wie kann ich eine feste Anzahl von Zeilen in einer Seite drucken? Klicken Sie auf den Bericht, um die Konstruktionsberichtschnittstelle einzugeben? Rmreport1.modifyPrepared: = false4. Übergeben Sie die Parameter an den Bericht, wie Sie eine Trmmoview durchführen? Rmreport1.findObject ('memo1'). 6. Wie können wir keinen doppelten Inhalt drucken? Suppres = True7. RMREPORT SET.MODIFYPREVIEW = FALSE8. .Bottomframe. Vissible: = Falsch im Skript -Memo1.Frametyp: = 15; Die Seite und es ist in Ordnung, in der OnbeforePrint von Seite1 zu drucken. Eine Tabelle für jede 3 Zeilen zum Festlegen der Spalte für die Hauptelementdaten: linesperpage = 3if gibt es eine Möglichkeit für drei Personen zu einer Zeile: Stellen : Anfänger: = 1; Ende; Ja, die Spalte der Hauptelementdaten festlegen: Sichtbarer = False Statistics Box: CalcNovisible = True12 kann nur einen einzelnen Datensatz falten, der die Länge überschreitet? Ja, das Textfeld: Stretched = True; // Lesen Sie den Bericht rmreport1.ShowReport; 2. Ob die Gruppenheader die Seiten in jeder Gruppe ändern. 1.RMREPORT1.SPAGE [0] .Changepaper () 2.RMReport1.Seiten [0] .FindObject (Gruppenheader -Spaltenname) .Prop ['Newpage']: = false; 15. Rmreport1.showprintdialog: = false; rmreport1.prinTeport; 16. Sie müssen den Zoom in den Seiteneinstellungen oder in den Seiteneinstellungen nicht auswählen. Richedit1.lines.savetostream (tempstream); tempstream.position: = 0; Legen Sie die Templatedir19 von TRMDesigner fest. (Rmreport1.findObject ('band1') als TRMBandView) .Dataset: = 'rmdbdataset1'; 20. Linke Entfernung: currport.pages [0] .pgmargins.left: = rund (rmconververtTopixels (mm*10, rmsumm)) 22.rmvariables ['Brand']: = true; rmvariables ['Produktname']: = 'Computer' ; Hauptartikel -Datenspaltenlinie = 1024. ? ? Verwenden Sie am besten die Spalte Spalte, ein Statistikbox darauf einstellen und dann CACKTYPE 25 festlegen. Wenn Berichte dynamisch generiert werden, wie Sie den Seitenrand von RM festlegen? 40); RmCompositeReport1.Reports.Add (RMREPORT2); Ja, A3 -Inhalt [Memo1.CalcValue + Memo2.CalcValue] 29. und druckt nur einmal.30. [';
Rmvariables ['A2'
Meldungsmaschinenentwicklung Benutzerhandbuch-Bericht erstellen 2010-02-10 13:08
Erstellen Sie einen Bericht:
Das Erstellen eines Berichts besteht aus den folgenden Schritten:
1. Wählen Sie Daten aus: Wählen Sie die im Bericht verwendete Datenquelle aus
2. Entwurfsbericht Vorlagen: Verwenden Sie den Bereich (sogenannte Band), um verschiedene Teile des Berichts zu verteilen, um den Berichtsstil zu bestimmen.
3. Verarbeitung: Verwenden Sie die integrierte Skriptsprache des Berichts oder verarbeiten Sie die Daten, Berichtsvorlagen usw. im Bericht in Delphi.
16. Bericht generieren: Generieren Sie den Abschlussbericht basierend auf der Berichtsvorlage + Datenquelle.
Wählen Sie eine Datenquelle aus:
Die für die meisten Berichte erforderlichen Daten stammen aus der Datenbank. TTABLE- und TQUERY -Komponenten können als Datenquellen für Berichte dienen. Im Allgemeinen kann jede Unterklasse, die aus der Tdataset -Komponente geerbt wurde, verwenden. Der in jedem Bericht verwendete Tdataset muss über einen entsprechenden TRMDBDATASET verfügen.
Zusätzlich zu Tdataset können ReportMachine -Seiten jede Datenquelle (Arrays, Dateien, Zeichennetze usw.) verwenden. In diesem Fall muss das Programm den Zugriff von Nichtdatenquellen selbst steuern. Sie können TrMuserDataset verwenden, um Daten einfach auf Berichte zu übertragen.
Entwurfsberichtsvorlage:
Die Berichtsvorlage selbst beschreibt, wie der richtige Bericht angezeigt wird. Jede Berichtsvorlage besteht aus mehreren Regionen, die Bericht über Band aufrufen. Es gibt zwei Arten von Bändern: Festgebietsbänder (z. B. Berichtstitel, Seitenheader, Seitenfußnoten usw.) und Bänder, die zur Anzeige aller Datensätze im Datensatz (z. B. die Spalte der Hauptelementdaten) verwendet werden. Das Datenband muss mit der Datenquelle verbunden sein, und der Inhalt ist ein Datensatz in der Datenquelle.
ReportMachine bietet eine visuelle Umgebung für die Berichterstattung (Report Designer, die Ihrem Endbenutzer auch zur Verfügung gestellt werden kann, um Ihren Endbenutzer zu erleichtern, die Berichtsvorlagen selbst zu ändern), um Berichte zu erstellen. Berichtsdesigner ist leistungsfähig, einfach und einfach zu bedienen. Die Berichts -Designer -Schnittstelle besteht aus einer schwimmenden Symbolleiste, die ihre Position frei ändern kann.
bewältigen:
Beim Generieren eines Berichts müssen Sie die Eingabedaten (z. B. Formatierung) verarbeiten, und die Berichtsvorlage muss geändert werden (z. B. ein Textfeld in der Berichtsvorlage muss die Schriftart ändern).
Durch die Implementierung dieser Verarbeitung können Sie Code in der Ereignisverarbeitung von TRMREPORT in Delphi schreiben. Aus diesem Grund ist die integrierte Skriptsprache in ReportMachinet, die integrierte Skriptsprache von Reportmachine, dem Objektpascal sehr ähnlich und leistungsfähig. Schreiben Sie den Ereignisverarbeitungscode in dieser Skriptsprache, mit der Sie eine komplexe Verarbeitung erstellen können, ohne Code in Delphi zu schreiben. Es kann Berichte von Ihren Projekten trennen.
Beispiel für das Skript: Beispiel:
Einheitsbericht;
Schnittstelle
Verfahrensmemo1onBeforePrint (Absender: Tobject);
Prozedurememo1onBeforePrint (Absender: Tobject);
Verfahren Haupt;
Ende;
Ende.
Erstellen Sie einen Bericht:
Das Generieren eines Berichts ist ein Prozess, in dem Reportmachine die Datenquelle gemäß der Berichtsvorlage verarbeitet, um den Abschlussbericht zu generieren, und kann nach dem Klicken auf die Schaltfläche "Vorschau" eine Vorschau anstellen. In Reportmachine erstellte Berichte sind eine Sammlung von Objekten, die den in jeder Seite enthaltenen Inhalt nach dem Verarbeiten des Berichts beschreiben. Auf diese Weise können Sie die generierte Berichtsseite ändern, indem Sie die gewünschte Seite im Designer aufrufen. Zusätzlich kann auch die Reaktion der Mausklick auf das Objekt im Vorschau -Fenster beschrieben werden. Dies erleichtert es Ihnen, Ihre Arbeiten zu organisieren (Klicken auf ein Berichtsobjekt kann einen detaillierteren neuen Bericht erstellen).
Das Vorschau-Fenster von ReportMachine ähnelt Microsoft Word: Mehrere Seiten können in einem Fenster angezeigt werden und können bei Bedarf mit einer Maus gezogen werden.