Type : INTERNAL_CREATION
Data is dynamically generated by querying metadata server objects via system function calls.
| 1 | options |
| 2 | metaserver="<hostname>" |
| 3 | metaport=8561 |
| 4 | metauser="sasadm @saspw" |
| 5 | metapass="<password>" |
| 6 | metarepository=Foundation |
| 7 | metaprotocol=bridge; |
| 1 | DATA work.libinfo; |
| 2 | |
| 3 | /*declare and initialize variables */ |
| 4 | LENGTH |
| 5 | type user schema $ 20 |
| 6 | lib_uri lib_name app_uri app_name schema_uri login_uri dom_uri |
| 7 | dbms_uri dbms_name conn_uri prop_uri datasrc authdomain $ 50 |
| 8 | id $ 17; |
| 9 | keep lib_name app_name user schema dbms_name datasrc authdomain; |
| 10 | call missing(of _character_); |
| 11 | |
| 12 | obj="omsobj:SASLibrary? @IsDBMSLibname = '1'"; |
| 13 | |
| 14 | /* Search Metadata for libraries */ |
| 15 | libcount=metadata_resolve(obj,type,id); |
| 16 | put "INFO: Found " libcount "database libraries."; |
| 17 | |
| 18 | IF libcount > 0 THEN DO n=1 to libcount; |
| 19 | rc=metadata_getnobj(obj,n,lib_uri); |
| 20 | rc=metadata_getattr(lib_uri,"Name",lib_name); |
| 21 | rc=metadata_getnasn(lib_uri,"DefaultLogin",1,login_uri); |
| 22 | rc=metadata_getattr(login_uri,"UserID",user); |
| 23 | rc=metadata_getnasn(lib_uri,"DeployedComponents",1,app_uri); |
| 24 | rc=metadata_getattr(app_uri,"Name",app_name); |
| 25 | rc=metadata_getnasn(lib_uri,"UsingPackages",1,schema_uri); |
| 26 | rc=metadata_getattr(schema_uri,"SchemaName",schema); |
| 27 | rc=metadata_getnasn(schema_uri,"DeployedComponents",1,dbms_uri); |
| 28 | rc=metadata_getattr(dbms_uri,"Name",dbms_name); |
| 29 | rc=metadata_getnasn(dbms_uri,"SourceConnections",1,conn_uri); |
| 30 | rc=metadata_getnasn(conn_uri,"Properties",1,prop_uri); |
| 31 | rc=metadata_getattr(prop_uri,"DefaultValue",datasrc); |
| 32 | rc=metadata_getnasn(conn_uri,"Domain",1,dom_uri); |
| 33 | rc=metadata_getattr(dom_uri,"Name",authdomain); |
| 34 | OUTPUT; /* Push results to table */ |
| 35 | END; |
| 36 | ELSE put "INFO: No libraries to resolve."; |
| 37 | RUN; |