1 | RAHLTCPU ; HIRMFO/GJC - Rad/Nuc Med HL7 TCP/IP Bridge utilities;10/10/07
|
---|
2 | ;;5.0;Radiology/Nuclear Medicine;**84**;Mar 16, 1998;Build 13
|
---|
3 | ;
|
---|
4 | LOCKX(RAERR,UNLOCK) ;lock/unlock the Rad/Nuc Med Patient record at one of two levels:
|
---|
5 | ;If part of a printset (RAY3(25)=2) lock at the "DT" level
|
---|
6 | ;Else lock at the "P" or case level
|
---|
7 | ;Input: RADFN, RADTI, & RACNI are all assumed to be defined.
|
---|
8 | ; UNLOCK: if defined the function unlocks the encounter at the appropriate level
|
---|
9 | ;Returns: RAERR (lock attempt only) if $D(RAERR)#2 lock failed, else lock successful
|
---|
10 | N RANODE,RAY3 S RAY3=$G(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0)),RAY3(25)=$P(RAY3,U,25)
|
---|
11 | S RANODE=$S(RAY3(25)=2:$NA(^RADPT(RADFN,"DT",RADTI)),1:$NA(^RADPT(RADFN,"DT",RADTI,"P",RACNI)))
|
---|
12 | I $G(UNLOCK)=1 L -@RANODE Q
|
---|
13 | L +@RANODE:DILOCKTM E S RAERR=$S(RAY3(25)=2:"Encounter",1:"Accession")_" locked within VistA"
|
---|
14 | Q
|
---|
15 | ;
|
---|
16 | LOCKR(RAERR,UNLOCK) ;lock/unlock the report associated with an exam record/
|
---|
17 | ;Input: RADFN, RADTI, & RACNI are all assumed to be defined.
|
---|
18 | ; UNLOCK: if defined the function unlocks the report lock
|
---|
19 | ;Returns: RAERR (lock attempt only) if $D(RAERR)#2 lock failed, else lock successful
|
---|
20 | N RANODE,RAY3 S RAY3=$G(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0)),RAY3(17)=$P(RAY3,U,17)
|
---|
21 | Q:RAY3(17)="" S RANODE=$NA(^RARPT(RAY3(17)))
|
---|
22 | I $G(UNLOCK)=1 L -@RANODE Q
|
---|
23 | L +@RANODE:DILOCKTM E S RAERR="The report has been locked within VistA"
|
---|
24 | Q
|
---|
25 | ;
|
---|