/
metacodaIdGroupMembersExtractSample.sas
90 lines (64 loc) · 2.79 KB
/
metacodaIdGroupMembersExtractSample.sas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/*
--------------------------------------------------------------------------------
Sample: metacodaIdGroupMembersExtractSample.sas
Purpose:
Demonstrates the use of the metacodaIdGroupMembersExtract macro.
Authors:
Paul Homes <paul.homes@metacoda.com>
--------------------------------------------------------------------------------
Copyright 2017 Metacoda Pty Ltd
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--------------------------------------------------------------------------------
*/
* This %include is not required if you are using the SASAUTOS autocall facility;
%include '../sasautos/metacodaidgroupmembersextract.sas';
* These metadata options are only required when running the sample outside of a
SAS metadata aware application
;
* options
metaserver=localhost
metaport=8561
metaprotocol=bridge
metarepository="Foundation"
metauser="userid"
metapass="{sas002}pwencodedpassword"
;
options ls=max ps=max;
* -----------------------------------------------------------------------------;
* Sample 1: extract IdentityGroup (group and role) member information, first for
Person (user) members and then nested IdentityGroup (group and role) members
;
%metacodaIdGroupMembersExtract(table=work.idGroupMembersPersons, memberType=Person)
%metacodaIdGroupMembersExtract(table=work.idGroupMembersGroups, memberType=IdentityGroup)
* -----------------------------------------------------------------------------;
* Sample 2: extract IdentityGroup (group and role) member information for both
Person (user) and nested IdentityGroup (group and role) members
;
%metacodaIdGroupMembersExtract(table=work.idGroupMembers)
* -----------------------------------------------------------------------------;
* Sample 3: extract IdentityGroup (group and role) member information for both
Person (user) and nested IdentityGroup (group and role) members as above
but also generate debug info and capture the XML files in /tmp
;
%metacodaIdGroupMembersExtract(
table=work.idGroupMembers,
xmlDir=/tmp,
debug=1
)
proc sort data=work.idGroupMembers;
by name memberName;
run;
title1 "IdentityGroup (group and role) members";
proc contents data=work.idGroupMembers;
run;
proc print data=work.idGroupMembers label width=min;
run;
* -----------------------------------------------------------------------------;