| 1 | TIUSRVLC ; SLC/JER - Server functions for lists ;06/19/97 16:22
 | 
|---|
| 2 |  ;;1.0;TEXT INTEGRATION UTILITIES;;Jun 20, 1997
 | 
|---|
| 3 | NOTES(TIUY,DFN,EARLY,LATE,ROOTFLAG) ; Gets list of Notes
 | 
|---|
| 4 |  I $S(+$G(DFN)'>0:1,'$D(^DPT(+$G(DFN),0)):1,1:0) Q
 | 
|---|
| 5 |  D LIST(.TIUY,3,DFN,$G(EARLY),$G(LATE),$G(ROOTFLAG))
 | 
|---|
| 6 |  Q
 | 
|---|
| 7 | SUMMARY(TIUY,DFN,EARLY,LATE,ROOTFLAG) ; Gets list of Summaries
 | 
|---|
| 8 |  I $S(+$G(DFN)'>0:1,'$D(^DPT(+$G(DFN),0)):1,1:0) Q
 | 
|---|
| 9 |  D LIST(.TIUY,244,DFN,$G(EARLY),$G(LATE),$G(ROOTFLAG))
 | 
|---|
| 10 |  Q
 | 
|---|
| 11 | CONSULT(TIUY,DFN,EARLY,LATE,ROOTFLAG) ; Gets list of Consults
 | 
|---|
| 12 |  I $S(+$G(DFN)'>0:1,'$D(^DPT(+$G(DFN),0)):1,1:0) Q
 | 
|---|
| 13 |  D LIST(.TIUY,243,STATUS,QSTR,$G(EARLY),$G(LATE),$G(ROOTFLAG))
 | 
|---|
| 14 |  Q
 | 
|---|
| 15 | LIST(TIUY,CLASS,DFN,EARLY,LATE,ROOTFLAG) ; Build List
 | 
|---|
| 16 |  N TIUCNT,TIUDT,TIUI,TIUJ,TIUK,TIUP,TIUQ,TIUREC,TIUPRM0,TIUPRM1
 | 
|---|
| 17 |  N TIUPRM3,TIUT,TIUTP,XREF,TIUS,TIUCONT,TIUSTAT,TIUTYPE
 | 
|---|
| 18 |  K ^TMP("TIULIST",$J),^TMP("TIUI",$J)
 | 
|---|
| 19 |  I '$D(TIUPRM0) D SETPARM^TIULE
 | 
|---|
| 20 |  S EARLY=9999999-+$G(EARLY)
 | 
|---|
| 21 |  S (TIUI,LATE)=9999999-$S(+$G(LATE):+$G(LATE),1:3333333)
 | 
|---|
| 22 |  F  S TIUI=$O(^TIU(8925,"APTCL",DFN,CLASS,TIUI)) Q:+TIUI'>0!(+TIUI>EARLY)  D GATHER(DFN,CLASS,TIUI,ROOTFLAG)
 | 
|---|
| 23 |  I +$O(^TMP("TIULIST",$J,0)) S TIUY=$NA(^TMP("TIULIST",$J)),(TIUI,TIUK)=0
 | 
|---|
| 24 |  Q
 | 
|---|
| 25 | GATHER(DFN,CLASS,TIUI,ROOTFLAG) ; Find/sort records for the list
 | 
|---|
| 26 |  N TIUDA
 | 
|---|
| 27 |  I '$D(TIUDPRM0) D SETPARM^TIULE
 | 
|---|
| 28 |  S TIUDA=0
 | 
|---|
| 29 |  F  S TIUDA=$O(^TIU(8925,"APTCL",DFN,CLASS,TIUI,TIUDA)) Q:+TIUDA'>0  D
 | 
|---|
| 30 |  . I ($P(TIUPRM0,U,6)="S"),(+$$CANDO^TIULP(TIUDA,"VIEW")'>0) Q
 | 
|---|
| 31 |  . D ADDELMNT(TIUDA,.TIUCNT,ROOTFLAG)
 | 
|---|
| 32 |  Q
 | 
|---|
| 33 | ADDELMNT(DA,TIUCNT,ROOTFLAG) ; Add each element to the list
 | 
|---|
| 34 |  N DOC,LOC,PT,AUT,EDT,TIUPT,TIULST4,TIUREC,TIUR0,TIUR12,TIUR13
 | 
|---|
| 35 |  N STATUS,EDTCNT,LOCTYP,TIUADT,TIUDDT,TIUSUBJ
 | 
|---|
| 36 |  S TIUR0=$G(^TIU(8925,+DA,0)),TIUR12=$G(^TIU(8925,+DA,12))
 | 
|---|
| 37 |  S TIUR13=$G(^TIU(8925,+DA,13)),TIUPT=$G(^DPT(+$P(TIUR0,U,2),0))
 | 
|---|
| 38 |  S TIUSUBJ=$G(^TIU(8925,+DA,17))
 | 
|---|
| 39 |  I '+$P(TIUR0,U,7) D
 | 
|---|
| 40 |  . S $P(TIUR0,U,7)=+$G(^AUPNVSIT(+$P(TIUR0,U,3),0))
 | 
|---|
| 41 |  . I '+$P(TIUR0,U,7) S $P(TIUR0,U,7)=""
 | 
|---|
| 42 |  S DOC=$$PNAME^TIULC1(+TIUR0)
 | 
|---|
| 43 |  I DOC="Addendum" S DOC=DOC_" to "_$$PNAME^TIULC1(+$G(^TIU(8925,+$P(TIUR0,U,6),0)))
 | 
|---|
| 44 |  I +$$HASADDEN^TIULC1(+DA) S DOC="+ "_DOC
 | 
|---|
| 45 |  I +$$URGENCY^TIURM(+DA)=1 S DOC=$S(DOC["+":"*",1:"* ")_DOC
 | 
|---|
| 46 |  S STATUS=$$LOWER^TIULS($P($G(^TIU(8925.6,+$P(TIUR0,U,5),0)),U))
 | 
|---|
| 47 |  S LOC=$G(^SC(+$P(TIUR12,U,5),0)),LOCTYP=$P(LOC,U,3),LOC=$P(LOC,U)
 | 
|---|
| 48 |  S TIUADT=$S(LOCTYP="W":"Adm: ",1:"Visit: ")_$$DATE^TIULS($P(TIUR0,U,7),"MM/DD/YY")
 | 
|---|
| 49 |  S TIUDDT=$S(+$P(TIUR0,U,8):"Dis: ",1:"")_$$DATE^TIULS($P(TIUR0,U,8),"MM/DD/YY")
 | 
|---|
| 50 |  S PT=$$NAME^TIULS($P(TIUPT,U),"LAST, FIRST MI")
 | 
|---|
| 51 |  S TIULST4=$E($P(TIUPT,U,9),6,9)
 | 
|---|
| 52 |  S TIULST4="("_$E(PT)_TIULST4_")"
 | 
|---|
| 53 |  S AUT=$$SIGNAME^TIULS(+$P(TIUR12,U,2))
 | 
|---|
| 54 |  S EDT=+TIUR13
 | 
|---|
| 55 |  S TIUCNT=+$G(TIUCNT)+1
 | 
|---|
| 56 |  S TIUREC=DA_U_DOC_U_EDT_U_PT_" "_TIULST4_U_AUT_U_LOC_U_STATUS_U_TIUADT_U_TIUDDT_U
 | 
|---|
| 57 |  I ($L(TIUREC)+$L(TIUSUBJ))>255 S TIUSUBJ=$E(TIUSUBJ,1,(255-$L(TIUREC)))
 | 
|---|
| 58 |  S TIUREC=TIUREC_TIUSUBJ
 | 
|---|
| 59 |  S ^TMP("TIULIST",$J,TIUCNT)=TIUREC
 | 
|---|
| 60 |  S:+$G(ROOTFLAG) $P(^TMP("TIULIST",$J),U)=TIUCNT
 | 
|---|
| 61 |  S:+$G(ROOTFLAG)&(TIUCNT=1) $P(^TMP("TIULIST",$J),U,3)=EDT
 | 
|---|
| 62 |  S:+$G(ROOTFLAG) $P(^TMP("TIULIST",$J),U,2)=EDT
 | 
|---|
| 63 |  Q
 | 
|---|