1 | XQCHK1 ;BP-OAK/BDT - Check security on option; 5/12/03 12:32pm
|
---|
2 | ;;8.0;KERNEL;**303**; Jul 10,1995
|
---|
3 | Q
|
---|
4 | CHCK1 ;check if there is another path to access a specific option
|
---|
5 | N XQK,XQK1,XQK2,XQK3,XQK4,I,J,KFG1,KFG2 S KFG=0,XQK=0
|
---|
6 | Q:'$D(^XUTL("XQO",XQDIC,"^",%XQOP,0))
|
---|
7 | F S XQK=$O(^XUTL("XQO",XQDIC,"^",%XQOP,0,XQK)) Q:XQK="" D
|
---|
8 | .S XQK1=$P($G(^XUTL("XQO",XQDIC,"^",%XQOP,0,XQK)),"^",2)
|
---|
9 | .S XQK3=$P($G(^XUTL("XQO",XQDIC,"^",%XQOP,0,XQK)),"^",5)
|
---|
10 | .I XQK1="",XQK3="" S KFG=1 Q
|
---|
11 | .S KFG1=1,KFG2=1
|
---|
12 | .F I=1:1 S XQK2=$P(XQK1,",",I) Q:XQK2="" D
|
---|
13 | ..I $D(^XUSEC(XQK2,%XQUSR)) S KFG1=KFG1+1
|
---|
14 | .F J=1:1 S XQK4=$P(XQK3,",",J) Q:XQK4="" D
|
---|
15 | ..I '$D(^XUSEC(XQK4,%XQUSR)) S KFG2=KFG2+1
|
---|
16 | .I KFG1=I,KFG2=J S KFG=1
|
---|
17 | Q
|
---|