- TIUSRVG ; SLC/JER - Silent Server Calls ;12/21/94 17:50
- ;;1.0;TEXT INTEGRATION UTILITIES;**173**;Jun 20, 1997
- MULTIPLE(TIUY,TIUDA,TIUECHO) ; Get multiple records
- N TIUI,TIUX,TIULAST S TIUI=0
- K ^TMP("TIUVIEW",$J)
- F S TIUI=$O(TIUDA(TIUI)) Q:+TIUI'>0 D
- . S TIUX=$G(TIUDA(TIUI)) D GET(.TIUY,TIUX,TIUI,+$G(TIUECHO),1)
- Q
- GET(TIUY,TIUDA,TIUITEM,TIUECHO,TIUACCUM) ; Get a record
- N DIC,DIQ,X,Y
- N TIUI,TIUJ,TIUL,TIUREC S (TIUDADD,TIUI)=0
- N DA,DIC,DIQ,DR,TIUFILE,TIUNAM
- K:'+$G(TIUACCUM) ^TMP("TIUVIEW",$J)
- S DA=TIUDA
- I '$D(^TIU(8925,+TIUDA,0)) S VALMQUIT=1,TIUY="-1^NONEXISTENT RECORD" Q
- S (TIUFILE,DIC)=8925,DIQ="TIUREC("
- S DR=".01;.02;.05;.07:.1;1202;1204;1301;1302;1305;1306;1501;1502;1505;1506;1601:1604"
- D EN^DIQ1
- I $D(TIUREC)>9 D
- . W:+$G(TIUECHO) !!,"Opening "_TIUREC(8925,+TIUDA,.01)_" record for review..."
- . F TIUJ=1:1:3 S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=$$SETREC(TIUJ)
- . S (TIUJ,TIUL)=4,^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=" "
- D LOADREC(TIUDA,TIUITEM,.TIUJ,.TIUL)
- I $L($G(TIUREC(8925,+TIUDA,1601))) D
- . N TIUMODE
- . S TIUJ=+$G(TIUJ)+1,^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)="",TIUL=+$G(TIUL)+1
- . S TIUJ=+$G(TIUJ)+1
- . S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=$G(TIUREC(8925,TIUDA,1601))_" AMENDMENT FILED:"
- . S TIUL=+$G(TIUL)+1
- . S TIUJ=+$G(TIUJ)+1,^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)="",TIUL=+$G(TIUL)+1
- . S TIUJ=+$G(TIUJ)+1
- . S TIUMODE=$S($G(TIUREC(8925,TIUDA,1603))]"":"/es/ ",1:"/chart/ ")
- . S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=TIUMODE_$G(TIUREC(8925,TIUDA,1602))
- . S TIUL=+$G(TIUL)+1
- . S TIUJ=+$G(TIUJ)+1
- . ;S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=$P(TIUPRM1,U,5)
- . S TIUL=+$G(TIUL)+1
- I +$G(TIUACCUM) D
- . S TIUJ=+$G(TIUJ)+1
- . S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=" "
- . S TIUL=+$G(TIUL)+1
- . S TIUJ=+$G(TIUJ)+1
- . S $P(^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0),"=",79)=""
- . S TIUL=+$G(TIUL)+1
- ; S ^TMP("TIUVIEW",$J,TIUITEM,0)=$G(^TIU(8925,+TIUDA,"TEXT",0))
- S TIUY="^TMP(""TIUVIEW"","_$J_")",TIUL=+$P($G(^TMP("TIUVIEW",$J,0)),U,3)+TIUL
- S ^TMP("TIUVIEW",$J,0)="^^"_TIUL_U_TIUL_U_DT,VALMCNT=TIUL
- Q
- LOADREC(TIUDA,TIUITEM,TIUJ,TIUL,TIUDAD) ; Load ^TMP
- N TIUKID,TIUDADT,TIUI S TIUI=0
- F S TIUI=$O(^TIU(8925,+TIUDA,"TEXT",TIUI)) Q:+TIUI'>0 D
- . S TIUJ=+$G(TIUJ)+1
- . S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=$G(^TIU(8925,+TIUDA,"TEXT",+TIUI,0))
- . S TIUL=+$G(TIUL)+1
- S TIUKID=0
- F S TIUKID=$O(^TIU(8925,"DAD",+TIUDA,TIUKID)) Q:+TIUKID'>0 D
- . N TIUTYP S TIUTYP=$P($G(^TIU(8925.1,+$G(^TIU(8925,+TIUKID,0)),0)),U)
- . I TIUTYP="ADDENDUM" D LOADADD(TIUKID,.TIUL) I 1
- . E D LOADREC(TIUKID,TIUITEM,.TIUJ,.TIUL,TIUDA)
- Q
- LOADADD(TIUDADD,TIUL) ; Load addenda
- N TIUDAUTH,TIUDATT,TIUJ,TIUSIG,TIUCSIG
- ;I +$$CANSEE^TIULP(+TIUDADD)'>0 Q
- S TIUJ=0,TIUI=+$G(TIUL)+1,^TMP("TIUVIEW",$J,TIUDADD,TIUI,0)=" "
- S TIUDADT=$$DATE^TIULS($P(^TIU(8925,+TIUDADD,13),U),"MM/DD/YY")
- S TIUI=TIUI+1,^TMP("TIUVIEW",$J,TIUDADD,TIUI,0)=TIUDADT_" ADDENDUM:"
- F S TIUJ=$O(^TIU(8925,+TIUDADD,"TEXT",TIUJ)) Q:+TIUJ'>0 D
- . S (TIUI,TIUL)=+$G(TIUI)+1
- . S ^TMP("TIUVIEW",$J,TIUDADD,TIUI,0)=$G(^TIU(8925,+TIUDADD,"TEXT",TIUJ,0))
- S (TIUI,TIUL)=TIUL+1
- S TIUSIG=$S(+$P(^TIU(8925,+TIUDADD,15),U)&($P(^(15),U,3)="E"):"/es/ ",1:" ")_$$SIGNAME^TIULS($P(^TIU(8925,+TIUDADD,15),U,2))
- S TIUCSIG=$S(+$P(^TIU(8925,+TIUDADD,15),U,5)&($P(^(15),U,7)="E"):"/es/ ",1:" ")_$$SIGNAME^TIULS($P(^TIU(8925,+TIUDADD,15),U,6))
- S TIUSIG=$$SETSTR^VALM1(TIUSIG,$G(TIUSIG),1,35)
- S TIUSIG=$$SETSTR^VALM1(TIUCSIG,$G(TIUSIG),40,35)
- S ^TMP("TIUVIEW",$J,TIUDADD,TIUI,0)=TIUSIG
- S (TIUI,TIUL)=TIUL+1
- S TIUDAUTH=$$SIGNAME^TIULS($P(^TIU(8925,+TIUDADD,12),U,2))
- S TIUDATT=$$SIGNAME^TIULS($P(^TIU(8925,+TIUDADD,12),U,4))
- S TIUDAUTH=$$SETSTR^VALM1($S(TIUSIG]" "&(TIUSIG'[TIUDAUTH):"for ",1:" ")_TIUDAUTH,$G(TIUDAUTH),1,35)
- S TIUDAUTH=$$SETSTR^VALM1($S(TIUCSIG]" "&(TIUCSIG'[TIUDATT):"for ",1:" ")_TIUDATT,$G(TIUDAUTH),40,35)
- S ^TMP("TIUVIEW",$J,TIUDADD,TIUI,0)=TIUDAUTH
- Q
- SETREC(LINE) ; Calls $$SETSTR^VALM1 for each line of ^TMP("TIUVIEW",$J,
- N Y
- I LINE="HDR" D
- . S Y=$$SETSTR^VALM1($$NAME^TIULS(TIU("PNM"),"LAST,FI MI"),$G(Y),1,15)
- . S Y=$$SETSTR^VALM1(TIU("SSN"),$G(Y),16,12)
- . S Y=$$SETSTR^VALM1($P(TIU("WARD"),U,2),$G(Y),30,20)
- . I +TIU("DOCTYP")=1 D
- . . S Y=$$SETSTR^VALM1("Adm: "_$$DATE^TIULS(+TIU("EDT"),"MM/DD/YY"),$G(Y),51,13)
- . . S Y=$$SETSTR^VALM1("Dis: "_$$DATE^TIULS(+TIU("LDT"),"MM/DD/YY"),$G(Y),66,13)
- . I +TIU("DOCTYP")'=1 D
- . . S Y=$$SETSTR^VALM1("Visit Date: "_$$DATE^TIULS(+TIU("EDT"),"MM/DD/YY@HR:MIN"),$G(Y),53,26)
- I LINE=1 D
- . S Y=$$SETSTR^VALM1("DICT DATE: "_$G(TIUREC(8925,+TIUDA,1301)),$G(Y),3,39)
- . S Y=$$SETSTR^VALM1("TRANSC DATE: "_$G(TIUREC(8925,+TIUDA,1201)),$G(Y),37,39)
- I LINE=2 D
- . S Y=$$SETSTR^VALM1("ATTENDING: "_$G(TIUREC(8925,+TIUDA,1204)),$G(Y),39,40)
- . I +$G(^TIU(8925,+TIUDA,0))=$$CHKFILE^TIUADCL(8925.1,"OPERATION REPORT","I $P(^(0),U,4)=""DOC""") S Y=$$SETSTR^VALM1("SURGEON: "_$G(TIUREC(8925,+TIUDA,1202)),$G(Y),1,32) Q
- . S Y=$$SETSTR^VALM1("DICTATED BY: "_$G(TIUREC(8925,+TIUDA,1202)),$G(Y),1,32)
- I LINE=3 D
- . S Y=$$SETSTR^VALM1("URGENCY: "_$G(TIUREC(8925,+TIUDA,.09)),$G(Y),5,36)
- . S Y=$$SETSTR^VALM1("DOC STATUS: "_$G(TIUREC(8925,+TIUDA,.05)),$G(Y),38,41)
- Q Y
- TIUSRVG ; SLC/JER - Silent Server Calls ;12/21/94 17:50
- +1 ;;1.0;TEXT INTEGRATION UTILITIES;**173**;Jun 20, 1997
- MULTIPLE(TIUY,TIUDA,TIUECHO) ; Get multiple records
- +1 NEW TIUI,TIUX,TIULAST
- SET TIUI=0
- +2 KILL ^TMP("TIUVIEW",$JOB)
- +3 FOR
- SET TIUI=$ORDER(TIUDA(TIUI))
- IF +TIUI'>0
- QUIT
- Begin DoDot:1
- +4 SET TIUX=$GET(TIUDA(TIUI))
- DO GET">GET(.TIUY,TIUX,TIUI,+$GET">GET(TIUECHO),1)
- End DoDot:1
- +5 QUIT
- GET(TIUY,TIUDA,TIUITEM,TIUECHO,TIUACCUM) ; Get a record
- +1 NEW DIC,DIQ,X,Y
- +2 NEW TIUI,TIUJ,TIUL,TIUREC
- SET (TIUDADD,TIUI)=0
- +3 NEW DA,DIC,DIQ,DR,TIUFILE,TIUNAM
- +4 IF '+$GET(TIUACCUM)
- KILL ^TMP("TIUVIEW",$JOB)
- +5 SET DA=TIUDA
- +6 IF '$DATA(^TIU(8925,+TIUDA,0))
- SET VALMQUIT=1
- SET TIUY="-1^NONEXISTENT RECORD"
- QUIT
- +7 SET (TIUFILE,DIC)=8925
- SET DIQ="TIUREC("
- +8 SET DR=".01;.02;.05;.07:.1;1202;1204;1301;1302;1305;1306;1501;1502;1505;1506;1601:1604"
- +9 DO EN^DIQ1
- +10 IF $DATA(TIUREC)>9
- Begin DoDot:1
- +11 IF +$GET(TIUECHO)
- WRITE !!,"Opening "_TIUREC(8925,+TIUDA,.01)_" record for review..."
- +12 FOR TIUJ=1:1:3
- SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=$$SETREC(TIUJ)
- +13 SET (TIUJ,TIUL)=4
- SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=" "
- End DoDot:1
- +14 DO LOADREC(TIUDA,TIUITEM,.TIUJ,.TIUL)
- +15 IF $LENGTH($GET(TIUREC(8925,+TIUDA,1601)))
- Begin DoDot:1
- +16 NEW TIUMODE
- +17 SET TIUJ=+$GET(TIUJ)+1
- SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=""
- SET TIUL=+$GET(TIUL)+1
- +18 SET TIUJ=+$GET(TIUJ)+1
- +19 SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=$GET(TIUREC(8925,TIUDA,1601))_" AMENDMENT FILED:"
- +20 SET TIUL=+$GET(TIUL)+1
- +21 SET TIUJ=+$GET(TIUJ)+1
- SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=""
- SET TIUL=+$GET(TIUL)+1
- +22 SET TIUJ=+$GET(TIUJ)+1
- +23 SET TIUMODE=$SELECT($GET(TIUREC(8925,TIUDA,1603))]"":"/es/ ",1:"/chart/ ")
- +24 SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=TIUMODE_$GET(TIUREC(8925,TIUDA,1602))
- +25 SET TIUL=+$GET(TIUL)+1
- +26 SET TIUJ=+$GET(TIUJ)+1
- +27 ;S ^TMP("TIUVIEW",$J,TIUITEM,TIUJ,0)=$P(TIUPRM1,U,5)
- +28 SET TIUL=+$GET(TIUL)+1
- End DoDot:1
- +29 IF +$GET(TIUACCUM)
- Begin DoDot:1
- +30 SET TIUJ=+$GET(TIUJ)+1
- +31 SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=" "
- +32 SET TIUL=+$GET(TIUL)+1
- +33 SET TIUJ=+$GET(TIUJ)+1
- +34 SET $PIECE(^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0),"=",79)=""
- +35 SET TIUL=+$GET(TIUL)+1
- End DoDot:1
- +36 ; S ^TMP("TIUVIEW",$J,TIUITEM,0)=$G(^TIU(8925,+TIUDA,"TEXT",0))
- +37 SET TIUY="^TMP(""TIUVIEW"","_$JOB_")"
- SET TIUL=+$PIECE($GET(^TMP("TIUVIEW",$JOB,0)),U,3)+TIUL
- +38 SET ^TMP("TIUVIEW",$JOB,0)="^^"_TIUL_U_TIUL_U_DT
- SET VALMCNT=TIUL
- +39 QUIT
- LOADREC(TIUDA,TIUITEM,TIUJ,TIUL,TIUDAD) ; Load ^TMP
- +1 NEW TIUKID,TIUDADT,TIUI
- SET TIUI=0
- +2 FOR
- SET TIUI=$ORDER(^TIU(8925,+TIUDA,"TEXT",TIUI))
- IF +TIUI'>0
- QUIT
- Begin DoDot:1
- +3 SET TIUJ=+$GET(TIUJ)+1
- +4 SET ^TMP("TIUVIEW",$JOB,TIUITEM,TIUJ,0)=$GET(^TIU(8925,+TIUDA,"TEXT",+TIUI,0))
- +5 SET TIUL=+$GET(TIUL)+1
- End DoDot:1
- +6 SET TIUKID=0
- +7 FOR
- SET TIUKID=$ORDER(^TIU(8925,"DAD",+TIUDA,TIUKID))
- IF +TIUKID'>0
- QUIT
- Begin DoDot:1
- +8 NEW TIUTYP
- SET TIUTYP=$PIECE($GET">GET(^TIU(8925.1,+$GET">GET(^TIU(8925,+TIUKID,0)),0)),U)
- +9 IF TIUTYP="ADDENDUM"
- DO LOADADD(TIUKID,.TIUL)
- IF 1
- +10 IF '$TEST
- DO LOADREC(TIUKID,TIUITEM,.TIUJ,.TIUL,TIUDA)
- End DoDot:1
- +11 QUIT
- LOADADD(TIUDADD,TIUL) ; Load addenda
- +1 NEW TIUDAUTH,TIUDATT,TIUJ,TIUSIG,TIUCSIG
- +2 ;I +$$CANSEE^TIULP(+TIUDADD)'>0 Q
- +3 SET TIUJ=0
- SET TIUI=+$GET(TIUL)+1
- SET ^TMP("TIUVIEW",$JOB,TIUDADD,TIUI,0)=" "
- +4 SET TIUDADT=$$DATE^TIULS($PIECE(^TIU(8925,+TIUDADD,13),U),"MM/DD/YY")
- +5 SET TIUI=TIUI+1
- SET ^TMP("TIUVIEW",$JOB,TIUDADD,TIUI,0)=TIUDADT_" ADDENDUM:"
- +6 FOR
- SET TIUJ=$ORDER(^TIU(8925,+TIUDADD,"TEXT",TIUJ))
- IF +TIUJ'>0
- QUIT
- Begin DoDot:1
- +7 SET (TIUI,TIUL)=+$GET(TIUI)+1
- +8 SET ^TMP("TIUVIEW",$JOB,TIUDADD,TIUI,0)=$GET(^TIU(8925,+TIUDADD,"TEXT",TIUJ,0))
- End DoDot:1
- +9 SET (TIUI,TIUL)=TIUL+1
- +10 SET TIUSIG=$SELECT(+$PIECE(^TIU(8925,+TIUDADD,15),U)&($PIECE(^(15),U,3)="E"):"/es/ ",1:" ")_$$SIGNAME^TIULS($PIECE(^TIU(8925,+TIUDADD,15),U,2))
- +11 SET TIUCSIG=$SELECT(+$PIECE(^TIU(8925,+TIUDADD,15),U,5)&($PIECE(^(15),U,7)="E"):"/es/ ",1:" ")_$$SIGNAME^TIULS($PIECE(^TIU(8925,+TIUDADD,15),U,6))
- +12 SET TIUSIG=$$SETSTR^VALM1(TIUSIG,$GET(TIUSIG),1,35)
- +13 SET TIUSIG=$$SETSTR^VALM1(TIUCSIG,$GET(TIUSIG),40,35)
- +14 SET ^TMP("TIUVIEW",$JOB,TIUDADD,TIUI,0)=TIUSIG
- +15 SET (TIUI,TIUL)=TIUL+1
- +16 SET TIUDAUTH=$$SIGNAME^TIULS($PIECE(^TIU(8925,+TIUDADD,12),U,2))
- +17 SET TIUDATT=$$SIGNAME^TIULS($PIECE(^TIU(8925,+TIUDADD,12),U,4))
- +18 SET TIUDAUTH=$$SETSTR^VALM1($SELECT(TIUSIG]" "&(TIUSIG'[TIUDAUTH):"for ",1:" ")_TIUDAUTH,$GET(TIUDAUTH),1,35)
- +19 SET TIUDAUTH=$$SETSTR^VALM1($SELECT(TIUCSIG]" "&(TIUCSIG'[TIUDATT):"for ",1:" ")_TIUDATT,$GET(TIUDAUTH),40,35)
- +20 SET ^TMP("TIUVIEW",$JOB,TIUDADD,TIUI,0)=TIUDAUTH
- +21 QUIT
- SETREC(LINE) ; Calls $$SETSTR^VALM1 for each line of ^TMP("TIUVIEW",$J,
- +1 NEW Y
- +2 IF LINE="HDR"
- Begin DoDot:1
- +3 SET Y=$$SETSTR^VALM1($$NAME^TIULS(TIU("PNM"),"LAST,FI MI"),$GET(Y),1,15)
- +4 SET Y=$$SETSTR^VALM1(TIU("SSN"),$GET(Y),16,12)
- +5 SET Y=$$SETSTR^VALM1($PIECE(TIU("WARD"),U,2),$GET(Y),30,20)
- +6 IF +TIU("DOCTYP")=1
- Begin DoDot:2
- +7 SET Y=$$SETSTR^VALM1("Adm: "_$$DATE^TIULS(+TIU("EDT"),"MM/DD/YY"),$GET(Y),51,13)
- +8 SET Y=$$SETSTR^VALM1("Dis: "_$$DATE^TIULS(+TIU("LDT"),"MM/DD/YY"),$GET(Y),66,13)
- End DoDot:2
- +9 IF +TIU("DOCTYP")'=1
- Begin DoDot:2
- +10 SET Y=$$SETSTR^VALM1("Visit Date: "_$$DATE^TIULS(+TIU("EDT"),"MM/DD/YY@HR:MIN"),$GET(Y),53,26)
- End DoDot:2
- End DoDot:1
- +11 IF LINE=1
- Begin DoDot:1
- +12 SET Y=$$SETSTR^VALM1("DICT DATE: "_$GET">GET(TIUREC(8925,+TIUDA,1301)),$GET">GET(Y),3,39)
- +13 SET Y=$$SETSTR^VALM1("TRANSC DATE: "_$GET">GET(TIUREC(8925,+TIUDA,1201)),$GET">GET(Y),37,39)
- End DoDot:1
- +14 IF LINE=2
- Begin DoDot:1
- +15 SET Y=$$SETSTR^VALM1("ATTENDING: "_$GET">GET(TIUREC(8925,+TIUDA,1204)),$GET">GET(Y),39,40)
- +16 IF +$GET(^TIU(8925,+TIUDA,0))=$$CHKFILE^TIUADCL(8925.1,"OPERATION REPORT","I $P(^(0),U,4)=""DOC""")
- SET Y=$$SETSTR^VALM1("SURGEON: "_$GET">GET(TIUREC(8925,+TIUDA,1202)),$GET">GET(Y),1,32)
- QUIT
- +17 SET Y=$$SETSTR^VALM1("DICTATED BY: "_$GET">GET(TIUREC(8925,+TIUDA,1202)),$GET">GET(Y),1,32)
- End DoDot:1
- +18 IF LINE=3
- Begin DoDot:1
- +19 SET Y=$$SETSTR^VALM1("URGENCY: "_$GET">GET(TIUREC(8925,+TIUDA,.09)),$GET">GET(Y),5,36)
- +20 SET Y=$$SETSTR^VALM1("DOC STATUS: "_$GET">GET(TIUREC(8925,+TIUDA,.05)),$GET">GET(Y),38,41)
- End DoDot:1
- +21 QUIT Y