Erklärung : Hauptschleife, die Metadaten für jeden Stored Process abfragt, Informationen extrahiert und den Ordnerpfad über eine 'do while'-Schleife auf dem übergeordneten Baum rekonstruiert.
Kopiert!
data work.stp_paths;
length type $ 13 id $ 17 stp_uri $ 38 tree_uri partree_uri $ 29 path $ 200 folder_name stp_name $ 100 stp_create stp_update $ 18;
call missing(type,id,stp_uri,tree_uri,partree_uri,path,folder_name,stp_name,stp_create,stp_update);
obj="omsobj:ClassifierMap? @PublicType='StoredProcess'";
stp_count=metadata_resolve(obj,type,id);
if stp_count > 0 then do n=1 to stp_count;
rc=metadata_getnobj(obj,n,stp_uri);
rc=metadata_getattr(stp_uri,"Name",stp_name);
rc=metadata_getattr(stp_uri,"MetadataCreated",stp_create);
rc=metadata_getattr(stp_uri,"MetadataUpdated",stp_update);
stp_create_num=input(stp_create,DATETIME18.);
stp_update_num=input(stp_update,DATETIME18.);
rc=metadata_getnasn(stp_uri,"Trees",1,tree_uri);
rc=metadata_getattr(tree_uri,"Name",folder_name);
path=catx("\",folder_name);
parent_rc=metadata_getnasn(tree_uri,"ParentTree",1,partree_uri);
do while (parent_rc > 0);
rc=metadata_getattr(partree_uri,"Name",folder_name);
path=catx("\",folder_name,path);
parent_rc=metadata_getnasn(partree_uri,"ParentTree",1,partree_uri);
end;
output;
end;
else put "No stored processes defined in Metadata.";
format stp_create_num stp_update_num datetime18.;
run;
else put "No stored processes defined in Metadata.";
29
FORMAT stp_create_num stp_update_num datetime18.;
30
RUN;
3 Codeblock
PROC SQL Data
Erklärung : Erstellung der finalen Tabelle 'stp_paths_sorted' durch Sortierung der Ergebnisse nach Aktualisierungsdatum und Pfad.
Kopiert!
PROC SQL;
CREATE TABLE work.stp_paths_sorted AS
SELECT path,stp_name,stp_create_num,stp_update_num
FROM work.stp_paths ORDER BY stp_update_num ,path;
quit;
FROM work.stp_paths ORDER BY stp_update_num ,path;
5
QUIT;
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.
« In einer gewachsenen SAS 9-Umgebung sind Stored Processes (STP) das Herzstück vieler Geschäftsprozesse. Da sie oft tief in der Ordnerstruktur der Metadaten verborgen sind, ist eine automatisierte Bestandsaufnahme für die Governance unerlässlich. Dieses Skript nutzt einen rekursiven Ansatz, um abstrakte Metadaten-URIs in eine lesbare, operative Pfadstruktur zu transformieren.
Dieses Skript ist der ideale Ausgangspunkt für Migrationsprojekte (z. B. nach SAS Viya). Wenn Sie diese Ergebnisse mit den Server-Logfiles kombinieren, können Sie genau bestimmen, welche Stored Processes tatsächlich noch genutzt werden und welche sicher archiviert werden können. »
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.