Architecting, installing and maintaining your SAS environment

Required ACT's code

Reply
New Contributor
Posts: 2

Required ACT's code

Hi All,

 

We have so many ACT's applied on Folders in SAS Management console. Is there any code to retrive which folder the ACT's applied?

 

Thanks in Advance.

Naga.

Trusted Advisor
Posts: 1,326

Re: Required ACT's code

Posted in reply to NagaKumar

Hello @NagaKumar,

 

I don;t know which version of SAS you have installed, but in any case, there are many options for you:

 

- you can create your own code with the SAS interfaces to Metadata

- you can use pre-built tools as the Metacoda ( @MichelleHomes ) and get many other great additions.

- You can use the APM/ACM reports which can give you a good inventory of your metadata :

  https://platformadmin.com/blogs/paul/tag/sas-apm/

 http://blogs.sas.com/content/sgf/2014/11/26/sas-environment-manager-data-mart-the-heart-of-the-servi...

 

 

PROC Star
Posts: 426

Re: Required ACT's code

Posted in reply to JuanS_OCS

Thanks Juan for mentioning Metacoda Plug-ins.

 

I might also add that the Metacoda ACT Reviewer is one of the plug-ins that is available free-of-charge. As well as interactively showing the objects to which ACTs are applied it can also be used to export an HTML report as documentation for ACTs - how they are defined, where they have been applied, and how they have been protected.

New Contributor
Posts: 2

Re: Required ACT's code

Posted in reply to JuanS_OCS
Hi..


We are using SAS 9.4 M3 version. Thanks for providing the solutions.
Trusted Advisor
Posts: 1,326

Re: Required ACT's code

Posted in reply to NagaKumar

With SAS 9.4 M3 you should have available all the latest updates to the SAS Environment Manager, and its Extended Monitoring (EMI).

Established User red
Established User
Posts: 1

Re: Required ACT's code

Posted in reply to JuanS_OCS

Hi,

Yoy can use the following code that will gives you where ACTs are applied :

data ACT (keep=id name PublicType location _created _modified  );
  length id $20 name PublicType $70  _uri $256  _modified _created $25 location _location $256;
  length created modified 8;
  format created modified datetime.;   
  _nobj=1;
  _n=1;

  call missing(id, _uri, name, _modified, _created, _location, PublicType);

  do while(_n le _nobj);     
     _nobj=metadata_getnobj("omsobj:AccessControlTemplate?@Id contains '.'",_n,_uri);

    _rc=metadata_getattr(_uri,"Id",id);
    _rc=metadata_getattr(_uri,"Name",name);
    _rc=metadata_getattr(_uri,"PublicType",PublicType);
    _rc=metadata_getattr(_uri,"MetadataCreated",_created);
    _rc=metadata_getattr(_uri,"MetadataUpdated",_modified);  
 

    
    _rc=metadata_getnasn(_uri,"Objects",1,_uri);     
    _rc=metadata_getattr(_uri,"Name",location);
    _tree=1;     
    do while (_tree>0);       
      _tree=metadata_getnasn(_uri,"ParentTree",1,_uri);
      if _tree > 0 then do;         
        _rc=metadata_getattr(_uri,"Name",_location);         
        location=catx('/',_location,location);
      end;
    end;
    location = '/'||location;
    output;
    _n=_n+1;
  end;
run;

 

Regrad,

Redouan

Ask a Question
Discussion stats
  • 5 replies
  • 349 views
  • 8 likes
  • 4 in conversation