Kapitelübersicht
2. TECHNISCHE QUALIFIZIERUNG
2.1 BESTIMMUNG ALLER ZUR EINSPEICHERUNG NOETIGEN SCHLUESSELINHALTE
2.2 LEERE MENGE - BEHANDLUNG BEIM ANFORDERUNGSJOIN
2. TECHNISCHE QUALIFIZIERUNG
Kapitelübersicht
Inhaltsverzeichnis
2.1 BESTIMMUNG ALLER ZUR EINSPEICHERUNG
NOETIGEN SCHLUESSELINHALTE
Kapitelübersicht
Inhaltsverzeichnis
Ein zu erfassender Wert sei in der wertspezifischen Basis nach n
Schluesseln ausgepraegt: (S1, S2, ...,Sn).
Die Erfassanforderung fordert daraus m Schluessel an
(m kleiner oder gleich n):
(S1, ...,Sm) Teilmenge aus (S1, ...,Sn).
1. Fall: m = n
Alle Schluessel der wertspezifischen Basis sind in
der Erfassanforderung angefordert. Eine eingegebene
Zahl liefert also ein bezueglich der Basis vollstaendiges
n-Tupel an Schluesselinhalten.
Dies erlaubt direkte Einspeicherung der Eingabe.
Eine Referenzanforderung ist fuer die Werterfassung
prinzipiell nicht noetig.
2. Fall: m < n und
( Referenzanforderung liefert
die fehlenden Schluessel
(S(m+1), ...,Sn) )
Nach Ausfuehrung der Referenzanforderung sind wieder alle
zur Einspeicherung noetigen Schluesselinhalte vorhanden.
3. Fall: m < n und
( Keine Referenzanforderung oder
Referenzanforderung liefert
nicht vollstaendig die noetigen Schluessel:
S1 , ...,S(m+k) mit m <= m+k < n. )
Die Schluesselinhalte zu den fehlenden Schluesseln
S(m+k+1), ...,Sn muessen ergaenzt werden. In Abhaengig-
keit von der Installationsvariable KEVINH_EIND_ERGAENZ
(--> vgl. HANDBUCH INSTALLATION)
wird wie folgt verfahren:
3.1 KEVINH_EIND_ERGAENZ = 'N'
Die noch fehlenden Schluessel werden auf die
Dummyauspraegung '?!' (KEVINH FF) gebucht
(Fragezeichen ==>?!<== Ausrufezeichen).
3.2 KEVINH_EIND_ERGAENZ = 'J'
Es wird untersucht, ob die bekannten
Schluesselinhalte der Schluessel
S1, ...,S(m+k) ausreichen, um einen
eindeutigen Summensatz in der
wertspezifischen Basis zu qualifizieren.
Gelingt dies, so wird die Eingabe diesem
Summensatz zugeordnet.
Andernfalls wird die Eingabe abgewiesen.
2.2 LEERE MENGE - BEHANDLUNG BEIM ANFORDERUNGSJOIN
Kapitelübersicht
Inhaltsverzeichnis
Beim Anforderungsjoin der Ergebnistabelle der Erfassanforderung zu
der Referenzanforderung kann es vorkommen, dass kein Treffer
erzielt wird.
Ueber den Parameter &&REF_LM der Erfassanforderung wird gesteuert,
wie mit der eingegebenen Zahl dann verfahren werden soll.
Er kann einer der vier folgenden Inhalte haben:
FEHLER => Fehlermeldung bei Leerer Menge, Abbruch.
LOESCHEN => Eingegebene Zahl wird nicht verbucht.
WERT => Eingegebene Zahl wird wie eingegeben verbucht.
NULLEN => Erfassformel wird angewendet, wobei die Operanden
aus der Referenzanforderung auf Null gesetzt werden.
Werden keine Zahlen verbucht (z.B. bei 'LOESCHEN'), so erfolgt
eine Fehlermeldung ( ASS4568 , ASS4569 ).
'FEHLER' ist Voreinstellung.
Im Fall 'WERT' oder 'NULLEN' gilt folgendes:
Aus Referenzanforderung zu ergaenzende Schluessel-
inhalte werden in Abhaengigkeit von KEVINH-EIND-
ERGAENZ entweder eindeutig ergaenzt oder auf die
Dummyauspraegung '?!' gebucht
(Fragezeichen ==>?!<== Ausrufezeichen).
Beispiel: Gegeben sei ein Arbeitsgebiet mit den Schluesseln
'GEBIET' und 'BEZIRK'.
Erfasst werden die Neuanzahlen auf Gebietsebene:
##ERFASSFORMEL = NEUANZAHL_PLAN (0102)
Die Referenzanforderung soll die eingegebenen Zahlen
auf Bezirksebene herunterbrechen:
#$ERFASSFORMEL = IF
GESAMT (BEZIRK,NEUANZAHL (0101)) = 0
THEN
##ERFASSFORMEL + 44 + NEUANZAHL (0101)
ELSE
##ERFASSFORMEL * NEUANZAHL (0101)
/ GESAMT (BEZIRK,NEUANZAHL (0101))
Dabei soll die Referenzanforderung Zeilen fuer
die Gebiet 01 und 02, nicht aber fuer das Gebiet 03,
liefern, weil dort im Januar 2001 Neuanzahl = 0 ist.
ergibt Verteilung
ERFASSANFORDERUNG --> REFERENZANFORDERUNG --> durch
#$ERFASSFORMEL
fuer
GEBIET GEBIET NEUANZAHL NEUANZAHL_PLAN
##ERFASSFO. BEZIRK 0101 0102
-----+------------ ---------+---------- ------------------
01 100 01 10 60 --> 100*60/80 = 75
01 11 20 --> 100*20/80 = 25
02 keine
Eingabe
03 55
Im Gebiet 01 wird die erfasste Zahl '100' entsprechend der
NEUANZAHL 0101 in der Referenzanforderung auf die Bezirke
verteilt.
Was passiert mit der fuer Gebiet '03' vorgegebenen '55' ?
In Abhaengigkeit von &&REF_LM wird wie folgt verfahren.
FEHLER => Fehlermeldung und Abbruch.
LOESCHEN => Eingegebene Zahl '55' wird ignoriert.
WERT => Eingegebene Zahl wird wie eingegeben verbucht.
KEVINH-EIND-ERGAENZ = 'N' --> Dummyauspraegung '?!'
(Fragez.Ausrufezeichen)
beim Schluessel BEZIRK
wird mit '55' gebucht.
KEVINH-EIND-ERGAENZ = 'J' --> Es wird untersucht, ob
zum Gebiet 03 genau ein
Summensatz existiert.
Falls dies zutrifft,
wird NEUANZAHL_PLAN
im Jan.2002 dahin mit
'55' gebucht.
Andernfalls: Fehler.
NULLEN => Erfassformel wird angewendet, wobei die Operanden
aus der Referenzanforderung auf Null gesetzt werden:
55 + 44 + 0 = 99
(THEN-Fall von #$ERFASSFORMEL)
KEVINH-EIND-ERGAENZ = 'N' --> Dummyauspraegung '?!'
(Fragez.Ausrufezeichen)
beim Schluessel BEZIRK
wird mit '99' gebucht.
KEVINH-EIND-ERGAENZ = 'J' --> Es wird untersucht, ob
zum Gebiet 03 genau ein
Summensatz existiert.
Falls dies zutrifft,
wird NEUANZAHL_PLAN
im Jan.2002 dahin mit
'99' gebucht.
Andernfalls: Fehler.
Vorheriges Kapitel: 1. EINFUEHRUNG
Nächstes Kapitel: 3. ERFASSANFORDERUNG