1. Home
  2. MapEdit AppBuilder
  3. AppBuilder – Datenprüfung

AppBuilder – Datenprüfung

Die Datenprüfung setzt das MapEdit Datenmodell voraus !

Es können mehrere Datenprüfungen aufgesetzt werden. Jede Datenprüfung benötigt im AppBuilder eine „Einrichtungsdatenbankverbindung“ diese nur zum Aufsetzen und Testen von SQL’s benötigt wird. Eine Datenprüfung kann sowohl im Client als auch im AppBuilder ausgeführt werden. Eine einmal konfigurierte Datenbankprüfung kann auf beliebigen Datenbanken ausgeführt werden sofern die SQLs die man aufgesetzt hat auch mit der jeweiligen Datenbank kompatibel sind.

Anlegen einer Datenprüfung

Sie finden die Datenprüfung im MapEdit AppBuilder unter Repository –> „Datenbanken“. Und wählen dort den Menüpunkt „Neu“

und vergeben Sie einen Namen für die Datenprüfung.

Konfiguration einer Datenprüfung

Jede Datenprüfung braucht im AppBuilder eine „Einrichtungs Datenbankverbindung“. Diese wird allerdings nur zum Aufsetzen und Testen der SQLs benötigt. Die eigentliche Datenverbindung (für den Client) wird im „Ribbon Designer“ im entsprechenden „Kommando“ definiert.

Die Prüfung kann im Client oder im AppBuilder mit „Datenprüfung ausführen“ auf einer beliebigen Datenbank ausgeführt werden. Das Ergebnis der Prüfung wird in die Tabelle ME_DATACHECKER_RESULT geschrieben, über „Ergebnis anzeigen“ werden die Elemente aus dieser Tabelle aufgelistet.

Das funktioniert aber nur wenn die SQL’s die aufgesetzt wurden mit der jeweiligen Datenbank kompatibel sind. d.h. die Tabellen, die in den SQLs verwendet wurden muss es geben.
Werden Datenbank Type spezifische Befehle verwendet, z.B. einen Befehl, den es nur in PostgreSQL gibt und diesen dann Oracle benutzt, wird das einen Fehler erzeugen!

Prüfung anlegen

Falls Prüfungen gruppiert werden sollen, können in der Datenprüfung optional beliebig verschachtelte Gruppen/Untergruppen angelegt werden.

Achtung: Der SQL, der eingegeben wird, ist nicht 1:1 von Topobase übertragbar! Es darf nur ein SQL angegeben werden nicht mehrere.

Rückgabewerte des Prüf – SQL’s:

Das SQL muss in MapEdit zwingend folgendes Format haben:

  • Zuerst den fixen Wert {PARAMETER}
  • Danach den Namen der Tabelle als Textwert in Anführungszeichen zu der nachfolgende FIDs gehören.
  • Danach die FID des/der Objekte.

Es darf außer diesen Feldern keine anderen Rückgabe Felder im select Ausdruck des SQLs geben!
Wollen Sie group by Ausdrücke verwenden, müssen diese in einen Unter-Select verpackt werden.

Beispiel

Dies Prüfung liefert alle Datensätze zurück in der das Attribut „identificator“ NULL ist. Mit der Option „benutzen“ können Prüfungen deaktiviert werden. Alle Einträge, in denen „benutzen“ ausgeschaltet ist werden beim Ausführen der Prüfung nicht angezeigt/verwendet.

Es können auch REPEAT ~ FOR ~ Schleifen verwendet werden:

REPEAT
 select {PARAMETER}, '$table_name', fid from $table_name where length=0
 FOR
 select table_name from ME_ALL_FEATURECLASSES where CONTENT_TYPE='LineString'

Diese Prüfung liefert alle Objekte, aller Linien Featureklassen, zurück in denen das Attribut „length“ gleich 0 ist.

Zusätzliche Prüfinformationen

Der Tabellenname, zu welchem die FID gehört, muss in Anführungszeichen angegeben werden. Ansonsten ist im Resultat nicht ersichtlich zu welcher Tabelle die FID gehört. Dies ist notwendig, da es im MapEdit Datenmodell keine TB_UFID Tabelle gibt, in der ersichtlich ist zu welcher Tabelle eine FID gehört.

Die Ergebnisse der SQLs werden in der Tabelle „me_datachecker_result“ gespeichert. Vor jedem ausführen wird diese Tabelle geleert.

Beim Ausführen macht das Programm aus dem SQL-Befehl, der angegeben wurde, einen „INSERT INTO me_datachecker_result (Felder) as select PRÜF SQL “ Befehl.

Der Ausdruck „{PARAMETER}“ wird vom Programm zur Laufzeit durch eine eindeutige ID, DATUM, Prüfungsname etc etc ersetzt.

Wenn im AppBuilder „Datenprüfung ausführen“ ausgeführt wird, öffnet sich nach dem Ausführen ein SQL-Abfrage Fenster in dem die Tabelle „me_datachecker_result“ abgefragt wird. Hier werden dann alle Fehler gelistet.

Wenn die Prüfung im Client ausgeführt wird und Fehler vorhanden sind, öffnet sich das Formular „me_datachecker_result“. Das geht im AppBuilder nicht, deswegen dort die Variante mit dem SQL-Abfrage Fenster.

In dem Formular „me_datachecker_result“ wird hinter dem FID Feld automatisch ein Highlight Knopf erzeugt. Mit diesem kann das Objekt in der Grafik angezeigt werden. Des Weiteren gibt es einen „FID Reference Knopf“, dieser öffnet das Formular des Features und filtert nach diesem.

Ribbon konfigurieren

Die Konfigurierte Datenprüfung muss nun einem Ribbon hinzugefügt werden. Ein Ribbon ist meist schon vorhanden, fügen Sie diesem das Kommando „Datenprüfung“ hinzu.

In dem Kommando müssen nun die Datenprüfung und die Datenbankverbindung definiert werden.

Vergewissern Sie sich anschließend, dass das Ribbon dem gewünschten Projekt zugewiesen ist.

Prüfung ausführen

Die Datenprüfung wird nun in Professional bei den Ribbons mit aufgelistet. Und beim Ausführen der Datenprüfung können die auszuführenden Prüfungen gewählt werden.

Anschließend wird das Ergebnis der Prüfung im Formular aufgelistet.

Ergebnis der Datenüberprüfung
Updated on Oktober 29, 2021