20.07.2013 Aufrufe

Thema - bei der LISt Gesellschaft für Verkehrswesen und ...

Thema - bei der LISt Gesellschaft für Verkehrswesen und ...

Thema - bei der LISt Gesellschaft für Verkehrswesen und ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

5. Teilweiser Aufbau einer prototypischen GDI<br />

beendet. An<strong>der</strong>enfalls wird die gewünschte Fehlermeldung über mangelnde<br />

Schreibrechte ausgegeben <strong>und</strong> die Datenmanipulation abgebrochen.<br />

Der zu diesem Zweck eingesetzte Trigger ist in Abbildung 13 dargestellt.<br />

CREATE TRIGGER Datentabelle_BefU<br />

BEFORE UPDATE ON Datentabelle FOR EACH ROW<br />

DECLARE<br />

anz integer;<br />

BEGIN<br />

SELECT COUNT(d."Daten_ID") INTO anz<br />

FROM Nutzer n, Nutzer_Daten d<br />

WHERE d."Daten_ID"=:old.gid AND d."Nutzer_ID"=n."ID" AND n."Name"=<br />

(SELECT user FROM dual);<br />

If (:old.s_id :new.s_id or anz=0)<br />

THEN<br />

RAISE_APPLICATION_ERROR (-20102,'KEINE SCHREIBRECHTE');<br />

END IF;<br />

END;<br />

Abbildung 13: Before Update Trigger <strong>der</strong> Datentabelle<br />

Nach Implementierung <strong>der</strong> Trigger ist <strong>der</strong> zeilenweise Schreibschutz einsatzbereit. Zum<br />

Abschluss wurde die optional zur visuellen Darstellung benötigte Tabelle Mapinfostyles<br />

erstellt. Sie enthält zwei Datensätze mit je zwei Attributen. Zum einen die Farbe <strong>der</strong><br />

darzustellenden Datensätze – grün insofern Schreibrechte vorliegen – rot <strong>bei</strong><br />

Nichtvorliegen, zum an<strong>der</strong>en eine Textinformation über aktuell vorliegende<br />

Schreibrechte –ja bzw. nein.<br />

Zum Zugriff auf die gewünschten Daten muss eine Datenbankverbindung hergestellt<br />

<strong>und</strong> <strong>der</strong> beschriebene View geöffnet werden.<br />

In Abbildung 14 ist ein Beispiel eines Kartenausschnitts in MapInfo zu sehen. Im<br />

vorliegenden Fall sind Kompensationsflächen dargestellt, wo<strong>bei</strong> <strong>der</strong> aktuelle Nutzer <strong>für</strong><br />

rote Flächen Lese- <strong>und</strong> <strong>für</strong> grüne Flächen Schreibrechte besitzt.<br />

39

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!