Veröffentlicht am :
Administration CREATION_INTERNE

Erweiterte Bibliotheksattribute über Metadaten extrahieren

Dieser Code ist auch verfügbar auf: English Français
Wartet auf Validierung
Attention : Dieser Code erfordert Administratorrechte.
Dieses Programm konfiguriert eine Verbindung zu einem SAS©-Metadatenserver (SAS© 9-Architektur) und verwendet die Metadaten-Schnittstellenfunktionen, um eine Bibliothek (standardmäßig 'Visual Analytics LASR') zu suchen. Anschließend wird über die für diese Bibliothek definierten Erweiterungen iteriert, um eine Tabelle mit den Namen/Werten dieser Attribute zu erstellen. Hinweis: Dieser Code ist spezifisch für die Interoperabilität mit SAS© 9 oder älteren Umgebungen, da natives SAS© Viya diese Art von Metadatenserver nicht verwendet.
Datenanalyse

Type : CREATION_INTERNE


Die Daten werden durch Aufrufe von Metadaten-Systemfunktionen (metadata_resolve, metadata_getnasn) ohne das Lesen externer Tabellen generiert.

1 Codeblock
MACRO VARIABLE
Erklärung :
Definition des Namens der Zielbibliothek.
Kopiert!
1%let LIBNAME='Visual Analytics LASR';
2 Codeblock
OPTIONS
Erklärung :
Konfiguration der Verbindungsparameter zum SAS 9 Metadatenserver (enthält sensible Informationen/Anmeldeinformationen).
Kopiert!
1options
2 metaserver="meta.demo.sas.com"
3 metaport=8561
4 metauser="sasadm @saspw"
5 metapass="password"
6 metarepository=Foundation
7 metaprotocol=bridge;
3 Codeblock
DATA STEP Data
Erklärung :
Data Step, das die Hauptlogik ausführt: Suche nach dem Bibliotheksobjekt über eine Metadaten-XML-Abfrage, Schleife über die gefundenen Objekte, Extrahieren der zugehörigen Erweiterungen und Schreiben in die Ausgabetabelle 'extend'.
Kopiert!
1DATA extend;
2 LENGTH type id lib_uri ext_uri ext_name $ 50 ext_val $ 256;
3 call missing(of _CHARACTER_);
4 
5 obj="omsobj:SASLibrary? @Name=&libname";
6 
7 libcount=metadata_resolve(obj,type,id);
8 IF libcount > 0 THEN DO n=1 to libcount;
9 rc=metadata_getnobj(obj,n,lib_uri);
10 ext_count=metadata_getnasn(lib_uri,"Extensions",1,ext_uri);
11 
12 IF ext_count > 0 THEN DO m=1 to ext_count;
13 rc=metadata_getnasn(lib_uri,"Extensions",m,ext_uri);
14 rc=metadata_getattr(ext_uri,"Name",ext_name);
15 rc=metadata_getattr(ext_uri,"Value",ext_val);
16 OUTPUT;
17 END; ELSE put "NOTE: No Extended Attributes found for library &libname";
18 END;
19 ELSE put "NOTE: No library &libname found.";
20 
21 keep ext_name ext_val;
22RUN;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Urheberrechtsinformationen : Author: Greg Wootton Date: 16MAY2017