Einleitung Zur Nutzung von eigenen Datenquellen in ... - SVWS-NRW
Einleitung Zur Nutzung von eigenen Datenquellen in ... - SVWS-NRW
Einleitung Zur Nutzung von eigenen Datenquellen in ... - SVWS-NRW
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Schild – <strong>NRW</strong> Eigene <strong>Datenquellen</strong> für die Report<strong>in</strong>g<br />
29.10.2012<br />
-Seite 1-<br />
<strong>E<strong>in</strong>leitung</strong><br />
<strong>Zur</strong> <strong>Nutzung</strong> <strong>von</strong> <strong>eigenen</strong> <strong>Datenquellen</strong> <strong>in</strong> der Reportverwaltung <strong>von</strong> Schild-<strong>NRW</strong><br />
wurde e<strong>in</strong> Verfahren e<strong>in</strong>geführt, das es dem Nutzer ermöglicht, spezielle, für e<strong>in</strong>en<br />
Report benötigte <strong>Datenquellen</strong> dynamisch zu erstellen und diese dann auch an<br />
andere Schild-Installationen weiterzugeben, ohne dass die <strong>Datenquellen</strong> im Report<br />
immer wieder neu angelegt werden müssen.<br />
Außerdem besteht mit dieser Lösung e<strong>in</strong>e Möglichkeit, auch für Schild-Zentral eigene<br />
<strong>Datenquellen</strong> zu nutzen. Die jeweiligen <strong>Datenquellen</strong>-Dateien müssen dann nur nach<br />
e<strong>in</strong>er Sicherheitsüberprüfung <strong>von</strong> den jeweiligen IT-Adm<strong>in</strong>istratoren <strong>in</strong> die Schild-<br />
Umgebung kopiert werden.<br />
E<strong>in</strong>richtung<br />
Erstellen Sie zunächst e<strong>in</strong> Verzeichnis<br />
„Schild-Pipel<strong>in</strong>es“ <strong>in</strong> Ihrem Schild-<strong>NRW</strong>-<br />
Installationsordner.<br />
In diesen Ordner werden die <strong>Datenquellen</strong>-<br />
Dateien gespeichert.<br />
Es handelt sich dabei um e<strong>in</strong>fache<br />
Textdateien mit der Dateiendung *.SPD.<br />
Aufbau der <strong>Datenquellen</strong>-Dateien (SPD)<br />
[Queries]<br />
Hier werden alle neu zu<br />
def<strong>in</strong>ierenden Abfragen mit dem<br />
Namenszusatz __qry*** aufgelistet.<br />
[Query__qryNamederAbfrage]<br />
Da dieser Name programm<strong>in</strong>tern<br />
e<strong>in</strong>deutig se<strong>in</strong> muss, gilt die<br />
Konvention, dass __qry*** im<br />
Programmcode nicht benutzt wird,<br />
so dass ke<strong>in</strong>e Namenskollisionen<br />
entstehen können, wenn dieses<br />
Präfix genutzt wird.<br />
Der InitCommand-Befehl<br />
<strong>in</strong>itialisiert die Abfrage und setzt die<br />
Namen der zur Verfügung<br />
stehenden Felder im<br />
Reportexplorer fest.<br />
© Frank Pfotenhauer 2012
Schild – <strong>NRW</strong> Eigene <strong>Datenquellen</strong> für die Report<strong>in</strong>g<br />
29.10.2012<br />
-Seite 2-<br />
Die Befehle Command1 und folgende setzen den SQL-Abfrage-Str<strong>in</strong>g auf die<br />
Datenbank zusammen. Die Zusammensetzung aus Command1 + Command2 usw.<br />
wurde aus Übersichtsgründen erstellt. Der Befehl kann also auch <strong>in</strong> e<strong>in</strong>en e<strong>in</strong>zigen<br />
Command1-Befehl gesetzt werden.<br />
Mit dem Platzhalter $Schulnr$ kann die Schulnummer der DB abgefragt werden.<br />
(Wichtig für Schild-Zentral.)<br />
Mit dem Befehl Mastersource=Schueler.Datasource kann e<strong>in</strong>e übergeordnete<br />
Datenquelle angegeben werden. Dies ist über den Abfrageassistenten im Report-<br />
Designer nicht so e<strong>in</strong>fach möglich. Der <strong>Datenquellen</strong>name (hier Schueler) muss <strong>in</strong><br />
der Report<strong>in</strong>g bereits existieren. Also entweder als feste Datenquelle oder <strong>in</strong> e<strong>in</strong>er<br />
SPD-Datei, die vorher schon abgearbeitet wurde. Dies kann über die alphabetische<br />
Sortierung der SPD-Date<strong>in</strong>amen geregelt werden.<br />
Die Übergabe des Mastersource-Parameters erfolgt über den Befehl<br />
A.Schueler_ID=:ID, wobei über den Doppelpunkt<br />
:NamedesFeldes<strong>in</strong>derMasterSource die Koppelung geregelt wird.<br />
[Datasource__qryNamederAbfrage]<br />
Hier wird die Datenquelle mit dem Befehl Name=__dsNamederAbfrage erzeugt.<br />
[Pipel<strong>in</strong>e__qryNamederAbfrage]<br />
Über Name=__pplnNamederQuelle wird dann die<br />
eigentliche Datenpipel<strong>in</strong>e erzeugt.<br />
Die Befehle Opendatasource, CloseDatasource<br />
und SkipWhenNoRecords entnehmen Sie bitte den<br />
Beispieldateien.<br />
Username=xxNamederDatenQuelle stellt den eigentlichen Namen bereit, den der<br />
User später im Reportdesigner zu sehen bekommt.<br />
Die Zeilen geführt <strong>von</strong> e<strong>in</strong>em Semikolon werden als Kommentarzeilen <strong>in</strong>terpretiert.<br />
Die <strong>Datenquellen</strong>dateien (SPD) und die zugehörigen Formulare können dann<br />
geme<strong>in</strong>sam verteilt werden.<br />
Bitte beachten Sie, dass bei der Verteilung der SPD-Dateien e<strong>in</strong> Schreibzugriff auf<br />
das Schild-<strong>NRW</strong>-Installationsverzeichnis benötigt wird.<br />
In der beiliegenden ZIP-Datei s<strong>in</strong>d zwei Beispiele für solche dynamisch erstellte<br />
<strong>Datenquellen</strong> enthalten.<br />
© Frank Pfotenhauer 2012