50 lines
2.8 KiB
Mathematica
50 lines
2.8 KiB
Mathematica
TIULAPIC ; SLC/JER,KER - Extract selected classes from TIU ; 4/19/06 1:51pm
|
|
;;1.0;TEXT INTEGRATION UTILITIES;**83,100,121,211**;Jun 20, 1997;Build 26
|
|
MAIN(DFN,TIUDOC,TIME1,TIME2,OCCLIM,TEXT) ; Control branching
|
|
; Notes for Health Summaries, by Reference Date
|
|
; For comments, see rtn TIULAPIS
|
|
N TIUDA,TIUDT,TIUPRM0,TIUPRM1,TIUPRM3,COUNT,TIUSI,TIUS,TIUTI,TYPES
|
|
N CANDO,CKCANVW,ORIGCHLD
|
|
K ^TMP("TIUREPLACE",$J)
|
|
D SETPARM^TIULE S:+$G(OCCLIM)'>0 OCCLIM=999 S:+$G(TIME1)'>0 TIME1=6666666 S:+$G(TIME2)'>0 TIME2=9999999 K ^TMP("TIU",$J) I '$D(TIUPRM0) D SETPARM^TIULE
|
|
S TIUDT=TIME1 F S TIUDT=$O(^TIU(8925,"APTCL",DFN,TIUDOC,TIUDT)) Q:+TIUDT'>0!(TIUDT>TIME2)!(+$G(COUNT)'<OCCLIM) D
|
|
. S TIUDA=0 F S TIUDA=$O(^TIU(8925,"APTCL",DFN,TIUDOC,TIUDT,TIUDA)) Q:+TIUDA'>0 D
|
|
. . I +$$ISADDNDM^TIULC1(TIUDA),+TEXT Q
|
|
. . S CKCANVW=$S($E(IOST,1)="C":1,1:0)
|
|
. . I $E(IOST,1)'="C" S CANDO=+$$CANDO^TIULP(TIUDA,"PRINT RECORD") Q:'CANDO ;TIU*1*91
|
|
. . D REPLACE^TIUPRPN3(TIUDA,TIUDT,1301,CKCANVW)
|
|
. . S COUNT=^TMP("TIUREPLACE",$J)
|
|
S TIUDA=0
|
|
F S TIUDA=$O(^TMP("TIUREPLACE",$J,TIUDA)) Q:'TIUDA D
|
|
. Q:^TMP("TIUREPLACE",$J,TIUDA)=0 ;not viewable
|
|
. S TIUDT=^TMP("TIUREPLACE",$J,TIUDA,"DT")
|
|
. S ORIGCHLD=+$P(^TMP("TIUREPLACE",$J,TIUDA),U,2)
|
|
. D EXTRACT^TIULQ(TIUDA,"^TMP(""TIU"",$J,"_TIUDT_")",.TIUERR,".01;.05;.07;.08;1202;1203;1205;1208;1209;1301;1307;1402;1501:1505;1507:1513;1701;89261","",1,"IE",CKCANVW,ORIGCHLD)
|
|
K ^TMP("TIUREPLACE",$J)
|
|
Q
|
|
;
|
|
VISIT(DFN,TIUDOC,TIME1,TIME2,OCCLIM,TEXT) ; Control branching
|
|
; Visit Date
|
|
N TIUDA,TIUDT,TIUPRM0,TIUPRM1,TIUPRM3,COUNT,TIUSI,TIUS,TIUTI,TIUVD,TYPES
|
|
N CANDO,CKCANVW,ORIGCHLD
|
|
K ^TMP("TIUREPLACE",$J)
|
|
D SETPARM^TIULE S:+$G(OCCLIM)'>0 OCCLIM=999 S:+$G(TIME1)'>0 TIME1=6666666 S:+$G(TIME2)'>0 TIME2=9999999 K ^TMP("TIU",$J) I '$D(TIUPRM0) D SETPARM^TIULE
|
|
S TIUDT=TIME1 F S TIUDT=$O(^TIU(8925,"AE",DFN,TIUDT)) Q:+TIUDT'>0!(TIUDT>TIME2)!(+$G(COUNT)'<OCCLIM) D
|
|
. S TIUVD=0 F S TIUVD=$O(^TIU(8925,"AE",DFN,TIUDT,TIUVD)) Q:+TIUVD'>0 D
|
|
. . S TIUDA=0 F S TIUDA=$O(^TIU(8925,"AE",DFN,TIUDT,TIUVD,TIUDA)) Q:+TIUDA'>0 D
|
|
. . . N TIUIVD,TIUIRD S TIUIVD=(9999999-TIUDT),TIUIRD=+($P($G(^TIU(8925,+TIUDA,13)),"^",1))
|
|
. . . Q:'$D(^TIU(8925,"APTCL",DFN,TIUDOC,(9999999-TIUIRD)))
|
|
. . . I +$$ISADDNDM^TIULC1(TIUDA),+TEXT Q
|
|
. . . S CKCANVW=$S($E(IOST,1)="C":1,1:0)
|
|
. . . I $E(IOST,1)'="C" S CANDO=+$$CANDO^TIULP(TIUDA,"PRINT RECORD") Q:'CANDO ;TIU*1*91
|
|
. . . D REPLACE^TIUPRPN3(TIUDA,TIUDT,1301,CKCANVW)
|
|
. . . S COUNT=^TMP("TIUREPLACE",$J)
|
|
S TIUDA=0
|
|
F S TIUDA=$O(^TMP("TIUREPLACE",$J,TIUDA)) Q:'TIUDA D
|
|
. Q:^TMP("TIUREPLACE",$J,TIUDA)=0
|
|
. S TIUDT=^TMP("TIUREPLACE",$J,TIUDA,"DT")
|
|
. S ORIGCHLD=+$P(^TMP("TIUREPLACE",$J,TIUDA),U,2)
|
|
. D EXTRACT^TIULQ(TIUDA,"^TMP(""TIU"",$J,"_(TIUDT)_")",.TIUERR,".01;.05;.07;.08;1202;1203;1205;1208;1209;1301;1307;1402;1501:1505;1507:1513;1701;89261","",1,"IE",CKCANVW,ORIGCHLD)
|
|
K ^TMP("TIUREPLACE",$J)
|
|
Q
|