| 1 | TIUAPIOK ; SLC/JER - Check out PUT API's
 | 
|---|
| 2 |  ;;1.0;TEXT INTEGRATION UTILITIES;;Jun 20, 1997
 | 
|---|
| 3 | MAKEOK ; Check out the make call
 | 
|---|
| 4 |  N ERR,DFN,VSIT,TITLE,TIUDATA,TIUI,TIUREC
 | 
|---|
| 5 |  S DFN=+$$PATIENT^TIULA Q:+DFN'>0
 | 
|---|
| 6 |  S VSIT=$$VSITPICK(DFN) Q:+VSIT'>0
 | 
|---|
| 7 |  S TITLE=$$TITLPICK Q:+TITLE'>0
 | 
|---|
| 8 |  D LOADREC(.TIUREC) S TIUI=0
 | 
|---|
| 9 |  F  S TIUI=$O(TIUREC(TIUI)) Q:+TIUI'>0  D
 | 
|---|
| 10 |  . I $L($P(TIUREC(TIUI),U,2)) D
 | 
|---|
| 11 |  . . S TIUREC(TIUI)=$P($$READER(TIUREC(TIUI)),U)
 | 
|---|
| 12 |  D BLRPLT^TIUSRVD(.TIUDATA,TITLE,DFN)
 | 
|---|
| 13 |  S DIC=$P(TIUDATA,")")_",",DWPK=1 D EN^DIWE
 | 
|---|
| 14 |  M TIUREC("TEXT")=@TIUDATA K @TIUDATA
 | 
|---|
| 15 |  D MAKE^TIUSRVP(.ERR,DFN,TITLE,"","",VSIT,.TIUREC)
 | 
|---|
| 16 |  Q
 | 
|---|
| 17 | VSITPICK(DFN) ; Given a patient, select a visit
 | 
|---|
| 18 |  N DIC,X,Y
 | 
|---|
| 19 |  S DIC=9000010,DIC(0)="AEMQZ",DIC("S")="I +$P(^AUPNVSIT(+Y,0),U,5)=DFN"
 | 
|---|
| 20 |  D ^DIC K DIC("S")
 | 
|---|
| 21 |  Q +$G(Y)
 | 
|---|
| 22 | TITLPICK() ; Select a title
 | 
|---|
| 23 |  N TITLES,I,L,Y
 | 
|---|
| 24 |  D NOTES^TIUSRVD(.TITLES)
 | 
|---|
| 25 |  S (I,L,PICK)=0 F  S I=$O(TITLES(I)) Q:+I'>0!+PICK  D
 | 
|---|
| 26 |  . W:$E(TITLES(I))="i" !,I,?7,$P(TITLES(I),U,2)
 | 
|---|
| 27 |  . I I#20=0 S Y=$TR($P($G(TITLES(+$$PICK(1,I))),U),"i",""),PICK=+Y
 | 
|---|
| 28 |  . S L=I
 | 
|---|
| 29 |  I 'PICK S Y=$TR($P($G(TITLES(+$$PICK(1,L))),U),"i","")
 | 
|---|
| 30 |  Q $G(Y)
 | 
|---|
| 31 | PICK(LOW,HIGH) ; List selection
 | 
|---|
| 32 |  N X,Y
 | 
|---|
| 33 |  W !
 | 
|---|
| 34 |  S Y=$$READ^TIUU("LO^"_LOW_":"_HIGH,"Select Item")
 | 
|---|
| 35 |  W !
 | 
|---|
| 36 |  Q Y
 | 
|---|
| 37 | LOADREC(TIUREC) ; Load TIUREC for editing
 | 
|---|
| 38 |  S TIUREC(1202)=1202_U_$$PERSNAME^TIULC1(DUZ)
 | 
|---|
| 39 |  S TIUREC(1301)=1301_U_$$DATE^TIULS($$NOW^TIULC,"AMTH DD, CCYY@HR:MIN")
 | 
|---|
| 40 |  Q
 | 
|---|
| 41 | UPDATEOK ; Check out update call
 | 
|---|
| 42 |  N TIUX,TIUY,ERR,TIUDA,DFN,TIUEDIT,DR,TIUREC S DFN=+$$PATIENT^TIULA
 | 
|---|
| 43 |  D SELPAT^TIULA2(.TIUY,3,DFN)
 | 
|---|
| 44 |  I $D(TIUY)'>9 Q
 | 
|---|
| 45 |  S TIUDA=+$G(TIUY(1)),DR="1202;1301"
 | 
|---|
| 46 |  D GET4EDIT^TIUSRVR(.TIUREC,TIUDA,DR)
 | 
|---|
| 47 |  S TIUEDIT=$$CANDO^TIULP(TIUDA,"EDIT RECORD")
 | 
|---|
| 48 |  I +TIUEDIT'>0 W !,$C(7),$C(7),$P(TIUEDIT,U,2) Q
 | 
|---|
| 49 |  D EDIT(TIUDA,.TIUREC)
 | 
|---|
| 50 |  D UPDATE^TIUSRVP(.ERR,TIUDA,.TIUREC)
 | 
|---|
| 51 |  D EN^TIUAUDIT
 | 
|---|
| 52 |  Q
 | 
|---|
| 53 | EDIT(DA,TIUREC) ; Call ^DIE and ^DIWE to edit the text
 | 
|---|
| 54 |  N DIE,DR,TIUI,TIUFLD K ^TMP("TIUEDIT",$J)
 | 
|---|
| 55 |  N DIWESUB,DIWPT,DWHD,DWI,DWLC,DWLR,DWLW,DWO,DWPK
 | 
|---|
| 56 |  D LOADTMP(.TIUREC) S TIUI=0
 | 
|---|
| 57 |  F  S TIUI=$O(TIUREC(TIUI)) Q:+TIUI'>0  D
 | 
|---|
| 58 |  . I $L($P(TIUREC(TIUI),U,2)) D
 | 
|---|
| 59 |  . . S TIUREC(TIUI)=$P($$READER(TIUREC(TIUI)),U)
 | 
|---|
| 60 |  S DIC="^TMP(""TIUEDIT"",$J,",DWPK=1 D EN^DIWE
 | 
|---|
| 61 |  M TIUREC("TEXT")=^TMP("TIUEDIT",$J) K ^TMP("TIUEDIT",$J)
 | 
|---|
| 62 |  Q
 | 
|---|
| 63 | LOADTMP(TIUREC) ; Load Text into ^TMP("TIUEDIT",$J)
 | 
|---|
| 64 |  N TIUL,TIUI S (TIUI,TIUL)=0
 | 
|---|
| 65 |  F  S TIUI=$O(TIUREC("TEXT",TIUI)) Q:+TIUI'>0  D
 | 
|---|
| 66 |  . S ^TMP("TIUEDIT",$J,TIUI,0)=$G(TIUREC("TEXT",TIUI,0))
 | 
|---|
| 67 |  . S TIUL=+$G(TIUL)+1
 | 
|---|
| 68 |  S ^TMP("TIUEDIT",$J,0)="^^"_TIUL_U_TIUL_U_DT_U
 | 
|---|
| 69 |  Q
 | 
|---|
| 70 | READER(TIUREC) ; Edit each field
 | 
|---|
| 71 |  N TIUY
 | 
|---|
| 72 |  S TIUY=$$READ^TIUU("8925,"_$P(TIUREC,U),"",$P(TIUREC,U,2))
 | 
|---|
| 73 |  Q $G(TIUY)
 | 
|---|
| 74 | DELETOK ; Check out DELETE API
 | 
|---|
| 75 |  N ERR,TIUDA,DFN S DFN=+$$PATIENT^TIULA
 | 
|---|
| 76 |  D SELPAT^TIULA2(.TIUY,38,DFN)
 | 
|---|
| 77 |  I $D(TIUY)'>9 Q
 | 
|---|
| 78 |  S TIUDA=+$G(TIUY(1))
 | 
|---|
| 79 |  D DELETE^TIUSRVP(.ERR,TIUDA)
 | 
|---|
| 80 |  I ERR W !,ERR
 | 
|---|
| 81 |  Q
 | 
|---|
| 82 | ADDNOK ; Check CREATE ADDENDUM API
 | 
|---|
| 83 |  N TIUDADD,TIUDAT,TIUDA,TIUI,DFN,TIUDATA,TIUREC
 | 
|---|
| 84 |  S DFN=+$$PATIENT^TIULA
 | 
|---|
| 85 |  D SELPAT^TIULA2(.TIUDAT,3,DFN)
 | 
|---|
| 86 |  I +$G(TIUDAT)'>0,($D(TIUDAT)'>9) D  S TIUOUT=1 Q
 | 
|---|
| 87 |  . W !!,"Nothing selected."
 | 
|---|
| 88 |  S TIUI=0
 | 
|---|
| 89 |  F  S TIUI=$O(TIUDAT(TIUI)) Q:+TIUI'>0  D
 | 
|---|
| 90 |  . N TIUJ
 | 
|---|
| 91 |  . S TIUDA=+$G(TIUDAT(TIUI)) Q:+TIUDA'>0
 | 
|---|
| 92 |  . D LOADREC(.TIUREC) S TIUJ=0
 | 
|---|
| 93 |  . F  S TIUJ=$O(TIUREC(TIUJ)) Q:+TIUJ'>0  D
 | 
|---|
| 94 |  . . I $L($P(TIUREC(TIUJ),U,2)) D
 | 
|---|
| 95 |  . . . S TIUREC(TIUJ)=$P($$READER(TIUREC(TIUJ)),U)
 | 
|---|
| 96 |  . D BLRPLT^TIUSRVD(.TIUDATA,81,DFN)
 | 
|---|
| 97 |  . S DIC=$P(TIUDATA,")")_",",DWPK=1 D EN^DIWE
 | 
|---|
| 98 |  . M TIUREC("TEXT")=@TIUDATA K @TIUDATA
 | 
|---|
| 99 |  . D MAKEADD^TIUSRVP(.TIUDADD,TIUDA,.TIUREC)
 | 
|---|
| 100 |  Q
 | 
|---|