| 1 | TIUVSIT1 ; SLC/JER - Visit look-up (cont'd) ;4/29/99@11:51:42 [1/18/05 9:22am]
 | 
|---|
| 2 |  ;;1.0;TEXT INTEGRATION UTILITIES;**39,179,190,221**;Jun 20, 1997;Build 2
 | 
|---|
| 3 | NOTFOUND() ; Ask <U>NSCHEDULED or <F>UTURE
 | 
|---|
| 4 |  N TIUY
 | 
|---|
| 5 |  W !,"CHOOSE <U>NSCHEDULED VISITS, <F>UTURE VISITS, or <N>EW VISIT"
 | 
|---|
| 6 |  W !,"<RETURN> TO CONTINUE"
 | 
|---|
| 7 |  S TIUY=$$READ^TIUU("FOA","OR '^' TO QUIT: ","","^D HELP^TIUVSITH(""?"")")
 | 
|---|
| 8 |  Q TIUY
 | 
|---|
| 9 | GETAPPT(DFN,CLINIC,OCCLIM,INDEX,COUNT,LAST,EARLY,FUTURE) ; Get list
 | 
|---|
| 10 |  ; of appointments
 | 
|---|
| 11 |  N TIUCNT,TIUI,TIUSREC,TIUJ,TIUFLIM,TIUARRAY,LATE,TIUK,TIUNUM
 | 
|---|
| 12 |  I '$D(TIUPRM0) D SETPARM^TIULE
 | 
|---|
| 13 |  S TIUFLIM=$S(+$P(TIUPRM0,U,14)>0&+$G(FUTURE):$P(TIUPRM0,U,14),1:1)
 | 
|---|
| 14 |  S OCCLIM=$S(+$G(OCCLIM):+$G(OCCLIM),1:20)
 | 
|---|
| 15 |  S:'+$G(DT) DT=$$DT^XLFDT
 | 
|---|
| 16 |  S EARLY=+$G(EARLY)
 | 
|---|
| 17 |  S LATE=$S(+$G(INDEX):+$G(INDEX),1:$$FMADD^XLFDT(DT,TIUFLIM)_"."_235959)
 | 
|---|
| 18 |  S (LAST,TIUCNT,TIUK)=0,TIUJ=$S(+$G(COUNT):+$G(COUNT),1:0)
 | 
|---|
| 19 |  S TIUARRAY(1)=EARLY_";"_LATE
 | 
|---|
| 20 |  I $G(EARLY)=0 S TIUARRAY(1)=";"_LATE
 | 
|---|
| 21 |  S TIUARRAY(4)=DFN
 | 
|---|
| 22 |  S TIUARRAY("SORT")="P"
 | 
|---|
| 23 |  S TIUARRAY("FLDS")="1;2;3;10;12;22"
 | 
|---|
| 24 |  S TIUNUM=$$SDAPI^SDAMA301(.TIUARRAY) Q:'TIUNUM
 | 
|---|
| 25 |  S TIUI=LATE+.000001
 | 
|---|
| 26 |  I TIUNUM=-1 D  Q
 | 
|---|
| 27 |  . S ^TMP("TIUVERR",$J)="Could not retrieve patient information due to a problem with the database."
 | 
|---|
| 28 |  . I $D(^TMP($J,"SDAMA301",115)) S ^TMP("TIUVERR",$J,115)="This patient may not have an assigned ICN."
 | 
|---|
| 29 |  ;VMP/ELR ADDED NEXT LINE PATCH TIU 1 221   DBIA 3356 FOR XQY0
 | 
|---|
| 30 |  I $G(TIUNUM)>1,$G(XQY0)["TIU UPLOAD DOCUMENTS" N TIUONEC S TIUONEC=$$CLCNT()
 | 
|---|
| 31 |  F  S TIUI=$O(^TMP($J,"SDAMA301",DFN,TIUI),-1) S:+TIUI'>0 LAST=1 Q:+TIUI'>0!(+TIUCNT'<OCCLIM)!(+TIUI<EARLY)  D
 | 
|---|
| 32 |  . N APPTDT,APPTCL,APPTST,APPTTY,OPENC,STATUS
 | 
|---|
| 33 |  . ;VMP/ELR ADDED NEXT LINE PATCH TIU 1 221
 | 
|---|
| 34 |  . I $G(XQY0)["TIU UPLOAD DOCUMENTS",$G(TIUNUM)>1,$G(TIUONEC)>1,$L(TIUVDT),TIUVDT'=TIUI Q
 | 
|---|
| 35 |  . S TIUCNT=+$G(TIUCNT)+1,TIUJ=+$G(TIUJ)+1
 | 
|---|
| 36 |  . S APPTCL=$P(^TMP($J,"SDAMA301",DFN,TIUI),U,2)
 | 
|---|
| 37 |  . S APPTST=$P(^TMP($J,"SDAMA301",DFN,TIUI),U,3)
 | 
|---|
| 38 |  . S APPTTY=$P(^TMP($J,"SDAMA301",DFN,TIUI),U,10)
 | 
|---|
| 39 |  . S OPENC=$P(^TMP($J,"SDAMA301",DFN,TIUI),U,12)
 | 
|---|
| 40 |  . S STATUS=$P(^TMP($J,"SDAMA301",DFN,TIUI),U,22)
 | 
|---|
| 41 |  . I +$G(CLINIC),(+APPTCL'=+CLINIC) Q
 | 
|---|
| 42 |  . ;Set up internal value array
 | 
|---|
| 43 |  . S ^TMP("TIUVNI",$J,TIUJ)=TIUI_U_+APPTCL
 | 
|---|
| 44 |  . I $P(APPTST,";")="R" S ^TMP("TIUVNI",$J,TIUJ)=^TMP("TIUVNI",$J,TIUJ)_U
 | 
|---|
| 45 |  . I $P(APPTST,";")'="R" S ^TMP("TIUVNI",$J,TIUJ)=^TMP("TIUVNI",$J,TIUJ)_U_$P(APPTST,";")
 | 
|---|
| 46 |  . S ^TMP("TIUVNI",$J,TIUJ)=^TMP("TIUVNI",$J,TIUJ)_U_+APPTTY
 | 
|---|
| 47 |  . S ^TMP("TIUVNI",$J,TIUJ)=^TMP("TIUVNI",$J,TIUJ)_U_$G(OPENC)
 | 
|---|
| 48 |  . ;Set up external value array
 | 
|---|
| 49 |  . S ^TMP("TIUVN",$J,TIUJ)=$$DATE^TIULS(TIUI,"AMTH DD, CCYY@HR:MIN")
 | 
|---|
| 50 |  . S ^TMP("TIUVN",$J,TIUJ)=^TMP("TIUVN",$J,TIUJ)_U_$P(APPTCL,";",2)
 | 
|---|
| 51 |  . S ^TMP("TIUVN",$J,TIUJ)=^TMP("TIUVN",$J,TIUJ)_U_$P(STATUS,";",3)
 | 
|---|
| 52 |  . S ^TMP("TIUVN",$J,TIUJ)=^TMP("TIUVN",$J,TIUJ)_U_$P(APPTTY,";",2)
 | 
|---|
| 53 |  . ;Set up index by date
 | 
|---|
| 54 |  . S ^TMP("TIUVDT",$J,TIUI)=TIUJ
 | 
|---|
| 55 |  . ;Set up array of appts to exclude dup visit creation if appt is for today
 | 
|---|
| 56 |  . I $P(APPTST,";")="R" S ^TMP("TIUNOT",$J,+$P($G(^TMP($J,"SDAMA301",DFN,TIUI)),U,2),+TIUI)=TIUJ
 | 
|---|
| 57 |  K ^TMP($J,"SDAMA301")
 | 
|---|
| 58 |  Q
 | 
|---|
| 59 |  ;VMP/ELR ADDED NEXT TAG PATCH TIU 1 221
 | 
|---|
| 60 | CLCNT() ;
 | 
|---|
| 61 |  N TIUICL,TIUCNT S TIUICL=TIUI,TIUCNT=0
 | 
|---|
| 62 |  F  S TIUICL=$O(^TMP($J,"SDAMA301",DFN,TIUICL),-1)  Q:+TIUICL'>0!(+TIUICL<EARLY)  D
 | 
|---|
| 63 |  . I +$P(^TMP($J,"SDAMA301",DFN,TIUICL),U,2)=$G(CLINIC) S TIUCNT=TIUCNT+1
 | 
|---|
| 64 |  Q TIUCNT
 | 
|---|