Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ORWDAL33

ORWDAL33.m

Go to the documentation of this file.
  1. ORWDAL33 ;SLC/DAN - Allergy calls to support windows ;7/27/06 11:03
  1. ;;3.0;ORDER ENTRY/RESULTS REPORTING;**215,260**;Dec 17, 1997;Build 26
  1. ;
  1. CLINUSER(ORY) ;can user mark allergy as entered in error
  1. N DIC,X,PRM,Y,ORLST,ORX,PLIST,VALUE
  1. S DIC=8989.51,DIC(0)="MX",X="OR ALLERGY ENTERED IN ERROR" D ^DIC
  1. I Y=-1 S ORY=0 Q ;Parameter not found so quit
  1. S PRM=+Y
  1. ;Check USER level
  1. S ORY=$$GET^XPAR("USR",PRM) I ORY'="" Q
  1. ;Check USER CLASS
  1. D ENVAL^XPAR(.ORLST,PRM)
  1. I ORLST>0 D
  1. . S ORX="" F S ORX=$O(ORLST(ORX)) Q:ORX="" D
  1. . . Q:ORX'["USR(8930"
  1. . . I $$ISA^USRLM(DUZ,+ORX) S VALUE(+ORX)=ORLST(ORX,1)
  1. . S ORX=0 F S ORX=$O(VALUE(ORX)) Q:'+ORX D REMOVE(ORX)
  1. . S ORX=0 F S ORX=$O(VALUE(ORX)) Q:'+ORX S VALUE=$G(VALUE)!(VALUE(ORX))
  1. S ORY=$G(VALUE)
  1. I ORY'="" Q
  1. ;Check division and system
  1. S ORY=$$GET^XPAR("DIV^SYS",PRM) I ORY'="" Q
  1. S ORY=0 Q
  1. ;
  1. REMOVE(SUB) ;Remove values at higher level classes
  1. N IEN
  1. S IEN=0 F S IEN=$O(^USR(8930,"AD",SUB,IEN)) Q:'+IEN D
  1. .I $D(^USR(8930,"AD",IEN)) D REMOVE(IEN) ;Recursive call
  1. .K VALUE(IEN)
  1. Q