Die Informationen zu den Bereitstellungsverzeichnissen (Name und Pfad) werden direkt im Skript über einen DATA-Schritt und eine 'datalines'-Anweisung erstellt.
1 Codeblock
OPTIONS
Erklärung : Dieser Block konfiguriert die Systemoptionen zur Herstellung einer Verbindung zum SAS-Metadatenserver. Er spezifiziert den Host, den Port, die Benutzeranmeldeinformationen, das Repository (Foundation) und das Verbindungsprotokoll (BRIDGE).
Erklärung : Definiert eine Makrovariable 'appcontext' für den Kontextnamen. Anschließend erstellt ein DATA-Schritt die Tabelle 'depdirs' im Speicher. Diese Tabelle enthält zwei Spalten, 'Name' und 'Path', die über die 'datalines'-Anweisung mit der Liste der zu erstellenden Bereitstellungsverzeichnisse gefüllt werden.
Kopiert!
/* Define the context to attach the deployment directories. */
%let appcontext = SASApp;
/* Create a dataset with each deployment directory name and path. */
data depdirs;
length Name Path $ 255;
input Name Path;
datalines;
DeploymentDir1 /tmp/depdir1
DeploymentDir2 /tmp/depdir2
;;
run;
1
/* Define the context to attach the deployment directories. */
2
%let appcontext = SASApp;
3
4
/* Create a dataset with each deployment directory name and path. */
5
DATA depdirs;
6
LENGTH Name Path $ 255;
7
INPUT Name Path;
8
DATALINES;
9
DeploymentDir1 /tmp/depdir1
10
DeploymentDir2 /tmp/depdir2
11
;;
12
RUN;
3 Codeblock
DATA STEP
Erklärung : Dieser DATA _null_ Schritt (der keine Ausgabetabelle erzeugt) verwaltet die Hauptlogik. Er beginnt mit der Auflösung des URI des Anwendungskontextes über 'metadata_resolve'. Wird der Kontext gefunden, liest er die Tabelle 'depdirs' zeilenweise ein. Für jede Zeile verwendet er 'metadata_newobj', um ein neues 'Directory'-Objekt zu erstellen, und 'metadata_setattr', um dessen Attribute, insbesondere den Pfad ('DirectoryName'), zu definieren.
Kopiert!
data _null_;
/* Initialize variables. */
length type id appuri diruri $ 255;
call missing (of _character_);
/* Define query for context. */
appobj = "omsobj:ServerContext? @Name='&appcontext'";
/* Check for the existence of the context. */
rc=metadata_resolve(appobj,type,id);
/* If the context doesn't exist, throw an error and end the program. */
if rc ne 1 then do;
put "ERROR: A single context named &appcontext not found.";
stop;
end;
/* Read in the data set of deployment directories. */
set depdirs;
/* For each one, create the directory object as a child of the context */
/* defined above. */
rc=metadata_newobj("Directory",diruri,Name,"Foundation",appobj,"DataPackages");
/* Add the attribute defining the path. */
rc=metadata_setattr(diruri,"DirectoryName",Path);
/* Add some required attributes. */
rc=metadata_setattr(diruri,"UsageVersion","0");
rc=metadata_setattr(diruri,"IsRelative","0");
run;
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.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.