! GlbCheckAdrValid.obas (c) Andre Koppel Software 2013
! Das Programm liest die Liste aller angezeigten Gläubiger,
! die gerade in der Gläubigerverwaltung angezeigt werden
! aus und prüft, ob in den Adressen ungültige Zeichen enthalten
! sind.
DIMOPTION ON ! bereits vorhandene Variablen überschreiben
DIMOPTIONBASE 1 ! Unsere Basis für Vektoren ist 1
DEF POOL 1000000 ! Wir brauchen wohl min. so viel Speicher
INIT VARSPACE ! wir löschen alle Variablen
DIM Matrix(3 ; 3) ; Abmessung(2)
COM InvalidCnt
DISPLAY IS MESSAGE WINDOW
CLRSCR
TRACE TO SCREEN
IsAccent=0
InvalidCnt=0
! WidgetName$=WIDMXGETACTIVE$
! Wir verwenden das Widget der Liste in der Gläubigerverwaltung
WidgetName$="DLG018_Dliste"
! In der zweiten Spalte stehen die Datensatzreferenzen auf die
! Adressen
MAT Matrix = WIDMXREAD WidgetName$ ; "2"
r$=CHOICE$("Accente zulässig?" ; "{ Ja; Nein }" ; "{1}" ; 0)
IsAccent=IVAL(r$)
IF IsAccent<>1 THEN IsAccent=0 ELSE IsAccent=5
MAT Abmessung = GETDIM Matrix
Rows=Abmessung(2)
FOR y=1 TO Rows
v=Matrix(y)
CheckAdr v ; IsAccent
NEXT
IF InvalidCnt
THEN
DISP "Problemfälle: " InvalidCnt "\n"
ELSE
DISP "keine Problemfälle gefunden\n"
END IF
TERMINAL
! Die Prüfprozedur überprüft sämtliche Anzeigekomponenten
! und benennt im Fehlerfalle die Teile, die ungültige Zeichen
! enthalten
PROCEDURE CheckAdr Snr ; IsAccent
DIM Entry$[4000];Invalid$[1000];Pruef$[4096];Valid$[256]
! Wir verwenden die LIST SYSTEM Funktion zum Auslesen
! der Adressen. Die Referenznummer haben wir aus der
! Matrix ausgelesen und als Parameter bekommen.
Entry$=LIST SYSTEM$("adr:"&VAL$(Snr))
Invalid$=""
Valid$=VALID ASCII$(2)&VALID ASCII$(3)&VALID ASCII$(4)
IF IsAccent THEN Valid$=Valid$&VALID ASCII$(IsAccent)
NElements=LIST LEN(Entry$)
FOR OLoop=1 TO NElements
Pruef$=LIST GET$(Entry$ ; OLoop)
IsErr=STRSPN(Pruef$ ; Valid$)
IF IsErr THEN
IF NOT SLEN(Invalid$) THEN Invalid$="#"&VAL$(-Snr)&": "
Invalid$=Invalid$&LIST GET NAME$(Entry$ ; OLoop)
Invalid$=Invalid$&"("&VAL$(IsErr)&") "
END IF
NEXT
IF SLEN(Invalid$) THEN
DISP Invalid$ "\n"
InvalidCnt=InvalidCnt+1
END IF
END PROCEDURE
Das ist interessant
Die umfangreichen Importmöglichkeiten von INVEP ermöglichen es, weitreichende Datenbestande wie zum Beispiel Gläubiger, Drittschuldner u.a. aus Excel-Listen heraus zu importieren.
Insbesondere beim Import von Personendaten - also Adressen - ergibt sich jedoch sehr schnell das Problem, dass Daten mit ggf. ungültigen Zeichen eingelesen werden. INVEP selbst hat mit der Verarbeitung dieser Zeichen keine Probleme. Schwierig kann es jedoch werden, wenn die Daten via ITR- oder TAB-Format an das Gericht übertragen werden müssen, denn verschiedenen Justizsysteme sind schlicht nicht in der Lage, sämtliche denkbaren Sonderzeichen einzulesen und zu verarbeiten. Bei der Justiz-EDV können in solchen Fällen Programmabstürze oder Datenverfälschungen entstehen.
Mit diesem OBAS-Programm kann man eine Sicherheitsüberprüfung der Adressdaten durchführen. Das Programm liest alle in der Gläubigerverwaltung angezeigten Gläubiger ein und prüft sämtliche Teile einer Adresse auf gültige bzw. ungültige Zeichen. Felder, die ungültige Zeichen enthalten, werden in einer Liste angezeigt.
Beispiel in INVEP laden
Sie können dieses Beispielprogramm in den INVEP-OBAS-Interpreter laden, indem Sie im Interpreter über den Button "Neu/laden" die Option OBAS-Web auswählen. Geben Sie als Nummer für das Beispiel die 12 ein.


