Oracle Reports Tutorial
Oracle Reports Tutorial
Arturo T.
Oracle Reports ist ein leistungsstarkes Werkzeug, das darauf abzielt, Berichte zu entwerfen und zu erstellen.
Ermöglicht die Erstellung von Berichten in Dateien wie jsp (Java Server Pages), rdf, xml, rtf und anderen, aber wobei
die am häufigsten verwendeten, die zuvor genannt wurden. Ebenso ermöglicht es, das Ergebnis der Berichte zu senden an
Textdateien, PDF, HTML, XML, RTF, durch Trennzeichen formatierte Textdateien und andere, was deren Lesbarkeit ermöglicht und
Veröffentlichung in verschiedenen Formaten.
Ähnlich wie Oracle Forms enthält dieses Tool einen Objektbrowser, von dem aus man ...
auf jedes der Elemente zuzugreifen, die die Definition eines Berichts bilden.
In Abbildung 1 sind die Elemente zu sehen, die einen Bericht ausmachen. Das Datenmodell ist ein Bereich
wo der Inhalt des Berichts hauptsächlich definiert wird; das heißt, die Definition von Abfragen, Berechnungen,
Funktionen, die die Daten für den jeweiligen Bericht zurückgeben werden.
Papierlayout ist ein Bereich, in dem hauptsächlich der visuelle Teil des Berichts definiert wird; das heißt, es
definen los tipos de letra, tamaños, ubicación de las columnas, colores, espacios, encabezados, y en
Allgemein, alles was mit der Präsentation des Berichts zu tun hat.
Der Parameterbildschirm ist ein Bereich, in dem die Eingabe der Parameter angepasst werden kann.
Bericht. Zum Beispiel, wenn es einen Bericht über die von einem Unternehmen verkauften Elemente gibt, könnten sie
geben Sie als Parameter das Startdatum und das Enddatum an, für die Sie diese Informationen erhalten möchten.
Disparadores von Berichten, ist ein Block, in dem Aktionen definiert werden, die hauptsächlich davor ausgelöst werden.
dass der Bericht generiert wird oder nach dessen Ausführung, abhängig von den Richtlinien der
Geschäft.
Programmeinheiten und Bibliotheken, die ähnlich wie Oracle Forms verbunden sind, sind ein Bereich, in dem man
Definieren Sie in der ersten, Verfahren, Funktionen, Pakete, die aus dem Modell verwendet werden können.
Daten, und im zweiten Links zu Bibliotheken oder Bibliotheken PLL, wo sich die Funktionen befinden,
Verfahren oder Pakete.
Wie bereits zuvor angegeben, ist dieser Bereich für die Definition der Daten verantwortlich, die angezeigt werden sollen.
der Bericht. Zu diesem Zweck müssen die Abfragen an die verschiedenen Quellen (Tabellen, Ansichten,
gespeicherte Prozeduren, XML-Dateien, OLAP-Module), die Zusammenfassungen definieren und die
zusätzliche Funktionen, die im Bericht erforderlich sein könnten.
Erlaubt es, Summierungsoperationen wie Zählung, Summe, Durchschnitt, Maximalwert, Wert zu definieren.
Minimum, Varianz, Standardabweichung, unter anderem, dessen resultierende Spalte in das eingefügt werden kann
Bericht. Für dasselbe Beispiel des Verkaufsberichts könnte es notwendig sein, am Ende jedes Tages die
gesamtverkaufswert und am Ende des ausgewählten Bereichs der gesamtverkaufswert und der durchschnittswert; dazu
Dieses Werkzeug könnte verwendet werden.
Erlaubt die Einbeziehung von PL/SQL-Blöcken zur Definition zusätzlicher Prozeduren und Funktionen.
die für die Berechnung spezifischer Operationen erforderlich sein können. Der zurückgegebene Wert von dieser
Die Spalte kann auch im Bericht angezeigt werden. Zurück zum Beispiel der Verkäufe, nehmen wir an, dass
Es muss verglichen werden, ob der täglich verkaufte Gesamtbetrag einen Wert X übersteigt, in welchem Fall das Unternehmen nicht sollte
„sich Sorgen machen“; aber wenn die Verkäufe diesen Wert X nicht überschreiten, dann passiert oh was?!
Dazu kann der Bericht eine Spalte enthalten, die den Gesamtwert mit dem Wert X vergleicht und ob der Gesamtwert
>=X dann gebe "keine Probleme" zurück, aber wenn valortotal < X dann gebe "an diesem Tag ging es uns nicht gut" zurück
Sehr gut. Klar, dies ist ein Beispiel für ein Spielzeug, das einen minimalen Umfang dessen zeigt, was es könnte.
sich mit Formelspalten vertraut machen.
Wenn Sie mehr über PL/SQL erfahren möchten, können Sie auf das zurückgreifenHandbuch für PL/SQL
Das SQL-Abfragewerkzeug
Ermöglicht die Bearbeitung von SQL-Abfragen, entweder über den Abfrage-Builder oder durch direktes Bearbeiten des
SQL-Code (diese letzte Option gefällt mir besser, da sie es ermöglicht, sich direkt der Sprache zu bedienen)
Abfrage, für weitere Details zu SQL sieheHandbuch für SQL)
Wir werden ein Beispiel in dem Tool machen, um die vorherigen drei Werkzeuge zu zeigen:
3. Nun, es wird gewünscht, einen Bericht zu erstellen, der für jeden Schüler die belegten Fächer zeigt mit seiner
entsprechende Bewertung
4. Wir führen das Tool Oracle Reports aus und erstellen einen neuen Bericht.
Im Fenster Datenmodell wählen wir die Option SQL-Abfrage aus und platzieren sie über die
Bearbeitungsblatt (dafür genügt es, auf das Werkzeug zu klicken und dann auf den Hintergrund des Blattes zu klicken)
Ein Fenster erscheint, das die Abfrage anfordert, die wir ausführen möchten. Hier haben wir die Möglichkeit, die
Zwei Optionen: den Query Builder verwenden oder uns persönlich darauf einlassen, die SQL-Abfrage zu schreiben. Für das Beispiel
Wir werden den Query Builder verwenden.
Um auf den Abfrage-Builder zugreifen zu können, ist es notwendig, sich als Benutzer der Oracle-Datenbank zu authentifizieren, daher ...
Sie müssen den Benutzernamen, das Passwort und die Verbindungszeichenfolge registrieren.
Sobald die Verbindung validiert ist, wird eine Liste der Objekte angezeigt, über die der Benutzer verfügt (Tabellen,
Ansichten, Synonyme, Momentaufnahmen), aus denen die Objekte für die Abfrage ausgewählt werden müssen. In
In unserem Fall werden die Tabellen Schüler, Fach und Einschreibung ausgewählt.
Mit dem Vorherigen werden die Definitionen der ausgewählten Tabellen im Abfrage-Builder-Bildschirm angezeigt.
Für unser Beispiel wählen wir die Felder aus, wie in der folgenden Abbildung gezeigt, die sind
Grundsätzlich die Felder, die wir im Bericht anzeigen möchten: aus der Tabelle Schüler die Felder id, name und
Nachname; von der Anmeldung, die Felder id_materia und Note, und aus der Tabelle Materie möchten wir die anzeigen
Name des Fachs.
Mach dir keine Sorgen um die Beziehungen, das Werkzeug erstellt sie automatisch basierend auf den Schlüsseln.
Fremdschlüssel, die für jede Tabelle definiert sind.
Dann auf Akzeptieren klicken, jetzt haben wir die SQL-Abfrage bereit! (Natürlich, wenn wir die Details der Sprache kennen)
SQL können wir die Anweisung direkt schreiben, ohne den Abfragetools aufrufen zu müssen.
Und erneut akzeptieren, um das generierte Datenmodell zu sehen. Die folgende Abbildung zeigt die Gruppe von
Daten, die durch die gerade definierte Abfrage generiert wurden. Das Konzept der Gruppe ist wichtig, da
definiere die Art und Weise, wie die Daten später angezeigt werden. In diesem Fall haben wir nur ein
Gruppe bestehend aus der ID des Schülers, dem Vorname und Nachname des Schülers, der ID des Fachs und dem Namen
de der besuchten Fächer und der Note. Wenn der Schüler 10 Fächer belegt hat, sind einige dieser Daten wie ID, Name
Der Nachname des Schülers wird 10 Mal wiederholt.
Hier wäre es notwendig, eine Möglichkeit zu implementieren, um den Bericht in Form von Master - Detail zu sehen.
Um diese Gruppe in zwei Gruppen zu teilen, genügt es, die Felder auszuwählen, die zum Detail gehören und
sie aus der Gruppe herausnehmen (oder aus der Gruppe entfernen), sodass wir etwas Ähnliches hätten:
Lass uns jetzt eine Zusammenfassungs-Spalte hinzufügen, die uns den Durchschnitt der Bewertungen zeigt.
von jedem Schüler erhalten. Dazu wählen wir das Werkzeug Zusammenfassungs-Spalte aus und platzieren es
Innerhalb der ersten Gruppe (der Gruppe des Schülers) und wir fügen eine Zusammenfassungs-Spalte außerhalb der Gruppen hinzu.
(CS_2), was uns etwas so lässt:
Wir werden erklären, was wir möchten, indem wir zwei Zusammenfassungszeilen CS_1 und CS_2 einfügen, man kann sehen, dass
CS_1 ist eine Zusammenfassung auf Gruppenebene G_Nombre und was wir mit CS_2 wollen, ist eine Zusammenfassung zu haben.
Gesamtniveau des gesamten Berichts. Das heißt, wir wollen eine Zusammenfassung des Notendurchschnitts pro Schüler und einen
Zusammenfassung des Gesamtdurchschnitts.
Jetzt wählen wir das Feld CS_1 aus und öffnen das Eigenschaftenfenster (Rechtsklick auf
Maus - Option Eigenschafteninspektor) und wir setzen die Werte wie in der folgenden Abbildung angegeben:
Wie zu erkennen ist, ermöglicht die Eigenschaft Funktion die Auswahl aus einer Liste von Operationen (Zählung,
Summe, Höchstwert, …).
Die Ursprungseigenschaft gibt das Feld an, das in der Zusammenfassung berücksichtigt wird.
Die Eigenschaft 'Zurücksetzen auf' gibt in diesem Fall an, dass für jeden Schüler die definierte Operation ausgeführt wird.
Zusammenfassend wird der Durchschnittswert des Notenfeldes für jeden Schüler ermittelt.
Jetzt wählen wir das Feld CS_2 aus, öffnen erneut die Eigenschaftenpalette und setzen die
nächste Werte
In dieser Konfiguration geben wir an, dass die Zusammenfassung auf der Ebene des gesamten Berichts erfolgen soll, und
Wir werden die Durchschnittswerte der Schüler mitteln.
Fertig. Jetzt müssen wir nur noch den visuellen Teil unseres Berichts erstellen. Dazu wählen wir die
Option Programm/Ausführen Papierlayout. Dieser Assistent hilft dabei, den visuellen Teil des
Bericht und die betreffenden Daten.
Einer der Schritte innerhalb dieses Assistenten ist die Definition des zu erstellenden Berichtsstils. Für neutral
Beispiel, wir werden die Option "Gruppieren oben" markieren. Durch Klicken auf "Weiter" wird die Datenquelle bearbeitet (die
welche wir bereits definiert haben), dann die Registerkarte Daten, in der die Felder ausgewählt werden, die angezeigt werden sollen
Im Bericht. Wir möchten nicht immer, dass alle Felder in der SELECT-Klausel angezeigt werden. Das
Gruppen sind bereits definiert. Schließlich, wenn Sie den Bericht mit einer Vorlage erstellen möchten, kann diese sein
ausgewählt, oder wenn man hingegen keine Vorlage verwenden möchte, besteht auch die Möglichkeit auszuwählen
diese Entscheidung.
Fertig, sobald der Assistent abgeschlossen ist, würde unser Bericht so aussehen:
Sehr gut, jetzt besteht die Arbeit nur darin, unseren Bericht schön zu gestalten. Vom Objektbrowser aus,
Betreten Sie den Bereich zur Papierentsorgung und personalisieren Sie dort den Bericht hinsichtlich Schriftart, Farben, Standort.
(Diese erste Lieferung erstreckt sich nicht auf die Erklärung des Bereichs der Papiers disposition. Diese wird später gemacht werden)
voran in einer weiteren Lieferung)
Das Datenverbindungstool
Ermöglicht das Verknüpfen von Feldern zwischen verschiedenen Abfragen. Wenn es 3 Abfragen a, b und c gibt und zwischen a und b eine Beziehung besteht.
Link, und zwischen a und c gibt es einen weiteren Link, zuerst wird die Abfrage a ausgeführt, dann die Abfrage b und dann die
Abfrage c, verknüpft über das definierte Feld. Ein Beispiel, das diese Idee veranschaulicht, wäre: Es gibt mehrere
Tabellen, die den Lebenslauf einer Person modellieren, eine Tabelle PERSONA speichert die persönlichen Daten.
(idPersona, Name, Nachname, Geburtsdatum,..), eine andere Tabelle ESTUDIOS speichert die Studien, die er hat
jede Person (deren Felder idPersona, tipoEstudio, TituloObtenido, Duracion sein könnten,)
Eine andere Tabelle ERFAHRUNG speichert die Geschichte der Arbeitsplätze jeder Person (die Felder für diese Tabelle
es könnten idPersona, empresaLaboró, duracion, cargo, sein.), eine andere Tabelle PRODUCCIÓN speichert die schriftlichen Dokumente.
arbeiten, forschungen, die von jeder person durchgeführt werden.
Vorausgesetzt, dass der Lebenslauf jeder Person ausgedruckt werden muss, können 4 Abfragen definiert werden, um
jede der vorherigen Tabellen und dann Verbindungen über das Feld idPersona herstellen, um die Abfragen
Filtern Sie die Daten für jeden der Datensätze in der Tabelle Person. Für dieses Beispiel ist die Struktur des
Bericht wäre:
Persönliche Daten:
…
…
Durchgeführte Studien:
…
Berufserfahrung:
…
….
Produktion
…
In der Praxis würde das obige Beispiel mit den folgenden Schritten entwickelt werden:
2. Führen Sie das Tool Oracle Reports aus, erstellen Sie einen neuen Bericht.
Jetzt, unter Verwendung des Linkwerkzeugs, werden wir die Felder der 3 Abfragen über das Feld idpersona verbinden.
Das Verfahren ist sehr einfach; es genügt, das Datenlink-Tool zu verwenden (indem
Klicken Sie darauf), dann die Felder der Abfragen verbinden, indem Sie mit der Maus vom Feld der
Abfrage Ursprung bis zum Zielabfragefeld, über das wir den Link setzen möchten. Für dieses
Fall vom Feld idPersona bis zum Feld IdPersona1 und ein anderer vom Feld IdPersona bis zum
Feld IdPersona2. Das Datenmodell würde jetzt so aussehen:
Fertig, jetzt wird die Anordnung des Papiers ausgeführt (Stil: oben gruppieren, Gruppen: Personengruppe
transversal/desc
alle auswählen, Vorlage: keine), und mit ein paar zusätzlichen Etiketten hätte man schließlich das
nächster Bericht:
Wie zu sehen ist, ermöglicht diese Datenbindungsfunktion, das Ergebnis mehrerer zu verlinken.
Abfragen nach einem oder mehreren Feldern, wobei in jedem Ergebnisblock die entsprechenden Datensätze angezeigt werden.
verbundenen Feld zugeordnet. Angenommen, dass es für eine Person X keine Einträge in der Tabelle gibt.
Stellenangebote, der Stellenblock würde für diese Person X nicht angezeigt.
Das JDBC-Abfragewerkzeug
Ermöglicht die Definition von SQL-Abfragen, die über Datenquellen unter Verwendung des Treibers ausgeführt werden.
jdbc; daher können diese Quellen sowohl Oracle, DB2, Access, MySQL, SQL Server usw. sein.
Am wichtigsten ist diese Option, die Verbindungszeichenfolge zur zu verwendenden Datenquelle zu definieren. In
Zusammenfassend lässt sich sagen, dass diese Option sehr empfehlenswert ist, wenn Daten integriert werden sollen, die nicht vorhanden sind.
unserer Oracle-Datenbank, die jedoch ebenso wichtig für unser Geschäft sind.
Lass uns die folgende Übung machen, um die Funktionsweise von JDBC-Abfragen zu sehen:
1. Wir werden eine Datenbank in Microsoft Access mit dem Namen [Link] erstellen.
Wir erstellen eine Tabelle namens tarifa mit den folgenden Feldern cod_tarifa (Datentyp numerisch), valor (Typ
de dato numérico
2. Dann erstellen wir eine ODBC-Datenquelle (für Windows-Systeme, in die Systemsteuerung eingeben)
Aufruf miodbc_tarifa, der die Quelle der Datei [Link] hat, die wir gerade im Punkt erstellt haben.
anterior.
3. Wir führen das Tool Oracle Reports aus, erstellen einen neuen Bericht und wählen aus dem Objektmodell
wir nehmen das JDBC-Abfragewerkzeug und platzieren es im Bearbeitungsblatt. Nachdem dies getan ist, erscheint
ein Dialogfeld, das die auszuführende SQL-Abfrage und die zu verwendende Verbindung anfordert. Im Feld für
Wir werden eine Anfrage schreiben
Um die Verbindung herzustellen, klicken wir auf die Schaltfläche 'Verbinden', die ein weiteres Dialogfeld anzeigt.
um die Verbindungsparameter zu unserem ODBC festzulegen.
Wir wählen den Typ jdbc-odbc als Treiber und schreiben im Datenbankfeld den Namen.
zugewiesen an ODBC miodbc_tarifa
Fertig, jetzt klicken Sie auf Verbinden und dann auf Akzeptieren. Wenn es keine Syntaxprobleme in der SQL-Abfrage gibt und
definieren Sie angemessen den Typ des Controllers und den Namen der Datenbank, sollte erscheinen auf dem
Datenmodell das folgende Modell:
4. Jetzt müssen wir nur noch den visuellen Teil oder die Papieranordnung erstellen. Dazu gehen Sie zur Option
Programm/führen Sie die Papieranordnung aus, die Sie durch diesen Prozess führen wird.
Erlaubt das Lesen einer Datendatei im txt-, log-Format, durch Kommas getrennt oder mit fester Feldlänge, und
sie im Bericht zu zeigen. Es ist zu beachten, dass diese Option nur in sehr
insbesondere da der Zugriff auf Dateien eine rechnerisch aufwendige Aufgabe ist, was sich auf die...
Antwortzeit, die direkt mit der Größe der Datendatei verbunden ist.
1. Angenommen, es liegt folgende Datendatei [Link](Sie können es herunterladen und auf eine
Ordner auf Ihrem PC
2. Führen Sie das Tool Oracle Reports aus und erstellen Sie einen neuen Bericht. Im Datenmodell,
Wählen Sie das Textabfragewerkzeug aus und platzieren Sie es dann im Bearbeitungsblatt des Modells. Der folgende
Ein Dialogfeld wird angezeigt, um den Dateinamen, den wir hochladen werden, und den Dateityp festzulegen.
(Apache-Serverprotokoll, txt-Datei, die durch Kommas oder durch Tabulatoren getrennt ist)
Für diesen Fall haben wir eine txt-Datei ausgewählt, die durch Tabulatoren getrennt ist, und wir geben den vollständigen Pfad an.
Datendatei. Am Ende klicken wir auf OK, um fortzufahren.
Jetzt fehlt nur noch die Erstellung der Papieranordnung. Dazu verfahren Sie genauso wie im vorherigen Beispiel.