| 1 | TIUPRF ; SLC/JMH - API's for Patient Record Flags ; 7/29/05
 | 
|---|
| 2 |  ;;1.0;TEXT INTEGRATION UTILITIES;**184**;Jun 20, 1997
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | ISPRFDOC(TIUDA) ;Function (called by PIMS) returns 1 if docmt is PRF,
 | 
|---|
| 5 |  ;otherwise 0
 | 
|---|
| 6 |  N TIUTTL
 | 
|---|
| 7 |  S TIUTTL=+$G(^TIU(8925,TIUDA,0))
 | 
|---|
| 8 |  I 'TIUTTL Q 0
 | 
|---|
| 9 |  Q $$ISPFTTL^TIUPRFL(TIUTTL)
 | 
|---|
| 10 |  ;
 | 
|---|
| 11 | GETTTL(TIUDA) ; API called by PIMS to retrieve the name of a
 | 
|---|
| 12 |  ;TIU Document
 | 
|---|
| 13 |  ; Input   TIUDA: The TIU DOCUMENT TITLE IEN
 | 
|---|
| 14 |  ; Output TIUTTL: The TIU DOCUMENT TITLE Name
 | 
|---|
| 15 |  N TIUTTL,TIUNODE
 | 
|---|
| 16 |  S TIUNODE=$G(^TIU(8925.1,TIUDA,0))
 | 
|---|
| 17 |  I $G(TIUNODE)="" Q -1
 | 
|---|
| 18 |  S TIUTTL=$P(TIUNODE,U,1)
 | 
|---|
| 19 |  I $G(TIUTTL)="" Q -2
 | 
|---|
| 20 |  Q TIUTTL
 | 
|---|
| 21 | CHKDOC(TIUDA) ; API called by PIMS to check the existence of a TIU
 | 
|---|
| 22 |  ;   Document before linking, deleting,...
 | 
|---|
| 23 |  ; Input   TIUDA: The TIU DOCUMENT IEN
 | 
|---|
| 24 |  ; Output TIURET: Return value 
 | 
|---|
| 25 |  ;              (0 if Document does not exist, 1 if it does exist)
 | 
|---|
| 26 |  N TIURET
 | 
|---|
| 27 |  S TIURET=$D(^TIU(8925,TIUDA,0))
 | 
|---|
| 28 |  I +TIURET S TIURET=1
 | 
|---|
| 29 |  I 'TIURET S TIURET=0
 | 
|---|
| 30 |  Q TIURET
 | 
|---|
| 31 |  ;
 | 
|---|
| 32 | GETLIST(PRFCAT,TARGET) ; API called by PIMS to retrieve a list of active
 | 
|---|
| 33 |  ;   Category I and/or Category II Progress Note Titles
 | 
|---|
| 34 |  ; Input  PRFCAT: PRF Category Flag [1,2 or 3]
 | 
|---|
| 35 |  ;    1:Category I
 | 
|---|
| 36 |  ;    2:Category II
 | 
|---|
| 37 |  ;    3:Both Category I and II
 | 
|---|
| 38 |  ; Input  TARGET: The array name to place the list of 
 | 
|---|
| 39 |  ;                  Titles and IENs
 | 
|---|
| 40 |  ; Output TIURET: Return value to pass back any error
 | 
|---|
| 41 |  ;                  codes if necessary
 | 
|---|
| 42 |  ;                 @TARGET@(CATEGORY,D0)=TITLE IEN^TITLE NAME
 | 
|---|
| 43 |  ;                If nothing to return in list, TIUCNT=0 and TARGET array is empty
 | 
|---|
| 44 |  N TIUCAT1,TIUCAT2,TIURET,TIUCNT,TIUNODE1,TIUNODE2,TIUDA
 | 
|---|
| 45 |  S TIUCNT=0
 | 
|---|
| 46 |  K @TARGET
 | 
|---|
| 47 |  I '$D(PRFCAT)!('$D(TARGET)) Q "-1^MISSING INPUT"
 | 
|---|
| 48 |  I PRFCAT=3!(PRFCAT=1) D
 | 
|---|
| 49 |  . S TIUNODE1=0
 | 
|---|
| 50 |  . S TIUCAT1=+$$DDEFIEN^TIUFLF7("PATIENT RECORD FLAG CAT I","DC")
 | 
|---|
| 51 |  . F  S TIUNODE1=$O(^TIU(8925.1,TIUCAT1,10,TIUNODE1)) Q:'TIUNODE1  D
 | 
|---|
| 52 |  . . S TIUDA=$P(^TIU(8925.1,TIUCAT1,10,TIUNODE1,0),U)
 | 
|---|
| 53 |  . . I $P(^TIU(8925.1,TIUDA,0),U,7)=11!($P(^TIU(8925.1,TIUDA,0),U,7)=10) D
 | 
|---|
| 54 |  . . . S TIUCNT=TIUCNT+1
 | 
|---|
| 55 |  . . . S @TARGET@("CAT I",TIUCNT)=TIUDA_"^"_$$GETTTL(TIUDA)
 | 
|---|
| 56 |  I PRFCAT=3!(PRFCAT=2) D
 | 
|---|
| 57 |  . S TIUNODE2=0
 | 
|---|
| 58 |  . S TIUCAT2=+$$DDEFIEN^TIUFLF7("PATIENT RECORD FLAG CAT II","DC")
 | 
|---|
| 59 |  . F  S TIUNODE2=$O(^TIU(8925.1,TIUCAT2,10,TIUNODE2)) Q:'TIUNODE2  D
 | 
|---|
| 60 |  . . S TIUDA=$P(^TIU(8925.1,TIUCAT2,10,TIUNODE2,0),U)
 | 
|---|
| 61 |  . . I $P(^TIU(8925.1,TIUDA,0),U,7)=11!($P(^TIU(8925.1,TIUDA,0),U,7)=10) D
 | 
|---|
| 62 |  . . . S TIUCNT=TIUCNT+1
 | 
|---|
| 63 |  . . . S @TARGET@("CAT II",TIUCNT)=TIUDA_"^"_$$GETTTL(TIUDA)
 | 
|---|
| 64 |  Q TIUCNT
 | 
|---|