Testen von Konflikten, Fehlern und Suchreihenfolgen mit mehreren Formatbibliotheken - WeAreCAS
sessionPropaddFmtLib
Testen von Konflikten, Fehlern und Suchreihenfolgen mit mehreren Formatbibliotheken
Scénario de test & Cas d'usage
Geschäftskontext
Ein Data-Governance-Team muss die Regeln für die Formatverwaltung definieren. Es muss verstehen, wie das System auf Konflikte reagiert, wenn mehrere Formatbibliotheken mit überlappenden Definitionen geladen werden. Außerdem sollen Fehlerbedingungen getestet werden, z. B. das Laden aus einem nicht existierenden Pfad. Dieses Szenario testet die `fmtSearch`-Logik und die Fehlerbehandlung.
Datenaufbereitung
Erstellt eine Tabelle mit Sensordaten ('sensordaten') und zwei konkurrierende Formatbibliotheken ('basis_formate', 'override_formate') mit unterschiedlichen Definitionen für denselben Code.
Kopiert!
proc format;
value StatusBasis 1='OK' 2='WARNUNG' 9='UNBEKANNT';
value StatusOverride 2='KRITISCH' 3='FEHLER';
run;
data casuser.sensordaten;
input StatusCode;
datalines;
1
2
3
9
;
run;
proc casutil;
save casdata='work.formats' outcaslib='casuser' casout='basis_formate' options={format='StatusBasis'} replace;
save casdata='work.formats' outcaslib='casuser' casout='override_formate' options={format='StatusOverride'} replace;
quit;
1
PROCFORMAT;
2
value StatusBasis 1='OK'2='WARNUNG'9='UNBEKANNT';
3
value StatusOverride 2='KRITISCH'3='FEHLER';
4
RUN;
5
6
DATA casuser.sensordaten;
7
INPUT StatusCode;
8
DATALINES;
9
1
10
2
11
3
12
9
13
;
14
RUN;
15
16
PROC casutil;
17
save casdata='work.formats' outcaslib='casuser' casout='basis_formate' options={FORMAT='StatusBasis'} replace;
18
save casdata='work.formats' outcaslib='casuser' casout='override_formate' options={FORMAT='StatusOverride'} replace;
19
QUIT;
Étapes de réalisation
1
Laden der Basis-Formatbibliothek. Diese wird standardmäßig an die Suchliste angehängt ('APPEND').
Die Frequenzergebnisse für Schritt 3 zeigen, dass der StatusCode 2 als 'KRITISCH' interpretiert wird, was beweist, dass die mit `fmtSearch='INSERT'` geladene Bibliothek Vorrang hat. Der Code 1 wird als 'OK' und 9 als 'UNBEKANNT' aus der Basisbibliothek formatiert. Schritt 4 erzeugt einen erwarteten Fehler im SAS-Protokoll, der anzeigt, dass der Pfad nicht gefunden wurde. Dies bestätigt die korrekte Funktionsweise der Suchhierarchie und der Fehlerbehandlung.