Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: TIULAPIS

TIULAPIS.m

Go to the documentation of this file.
  1. TIULAPIS ; SLC/JER - Extract selected documents from TIU ; 9/19/07 2:39pm
  1. ;;1.0;TEXT INTEGRATION UTILITIES;**100,121,211,227**;Jun 20, 1997;Build 15
  1. MAIN(DFN,TIUDOC,STATUS,TIME1,TIME2,OCCLIM,TEXT) ; Control branching
  1. N TIUDA,TIUDT,TIUPRM0,TIUPRM1,TIUPRM3,COUNT,TIUSI,TIUS,TIUTI
  1. N CANDO,OLDRPARY,TIUDOCI,CKCANVW,ORIGCHLD
  1. D SETPARM^TIULE
  1. S:+$G(OCCLIM)'>0 OCCLIM=999
  1. S:+$G(TIME1)'>0 TIME1=6666666
  1. S:+$G(TIME2)'>0 TIME2=9999999
  1. K ^TMP("TIU",$J),^TMP("TIUREPLACE",$J)
  1. I '$D(TIUPRM0) D SETPARM^TIULE
  1. I $D(TIUDOC)'>0 Q
  1. I $D(STATUS)'>9 D STATUS^TIUSRVL(.STATUS,$S($G(STATUS)]"":STATUS,1:"ALL"))
  1. S TIUTI=0 F S TIUTI=$O(TIUDOC(TIUTI)) Q:+TIUTI'>0 D ;TIUTI=1,2,3...
  1. . S TIUDOC=+$G(TIUDOC(TIUTI)),COUNT=0
  1. . S TIUSI=0 F S TIUSI=$O(STATUS(TIUSI)) Q:+TIUSI'>0 D
  1. . . S TIUS=+$G(STATUS(TIUSI)),TIUDT=TIME1
  1. . . F S TIUDT=$O(^TIU(8925,"APT",DFN,TIUDOC,TIUS,TIUDT)) Q:+TIUDT'>0!(TIUDT>TIME2)!(+$G(COUNT)'<OCCLIM) D
  1. . . . S TIUDA=0 F S TIUDA=$O(^TIU(8925,"APT",DFN,TIUDOC,TIUS,TIUDT,TIUDA)) Q:+TIUDA'>0 D
  1. . . . . I +$$ISADDNDM^TIULC1(TIUDA),+TEXT Q
  1. . . . . ; -- CKCANVW: If user is viewing, check in REPLACE if user
  1. . . . . ; can view, and add record to ^TMP("TIUREPLACE",$J) only if user
  1. . . . . ; can view. Tell EXTRACT it doesn't need to check again
  1. . . . . ; when EXTRACT loops thru ^TMP("TIUREPLACE",$J).
  1. . . . . S CKCANVW=$S($E(IOST,1)="C":1,1:0)
  1. . . . . I $E(IOST,1)'="C" S CANDO=+$$CANDO^TIULP(TIUDA,"PRINT RECORD") Q:'CANDO ;TIU*1*91
  1. . . . . ; -- Since ID children must print as part of the whole ID
  1. . . . . ; note, set array ^TMP("TIUREPLACE",$J) of standalone notes
  1. . . . . ; and ID parents.
  1. . . . . ; Add TIUDA to ^TMP("TIUREPLACE",$J), replacing TIUDA
  1. . . . . ; w its ID parent IFN if TIUDA is an ID kid.
  1. . . . . ; Raise count of records if "good" element was added
  1. . . . . ; to ^TMP("TIUREPLACE",$J).
  1. . . . . S OLDRPARY=$G(^TMP("TIUREPLACE",$J)) ;How many "GOOD" elements in array
  1. . . . . D REPLACE^TIUPRPN3(TIUDA,TIUDT,1301,CKCANVW)
  1. . . . . S COUNT=COUNT+^TMP("TIUREPLACE",$J)-OLDRPARY
  1. . . . . S ^TMP("TIU",$J,TIUDT,TIUTI,0)=COUNT
  1. . . . . ; -- Track which title to collate TIUDA with:
  1. . . . . S TIUDOCI(TIUDA)=TIUTI
  1. ; -- Loop thru array of standalone or ID parent records and
  1. ; set ^TMP("TIU",$J for each record.
  1. S TIUDA=0
  1. F S TIUDA=$O(^TMP("TIUREPLACE",$J,TIUDA)) Q:'TIUDA D
  1. . Q:^TMP("TIUREPLACE",$J,TIUDA)=0 ;User can't view
  1. . S TIUDT=^TMP("TIUREPLACE",$J,TIUDA,"DT")
  1. . ; -- ORIGCHLD: If a parent is added to array solely on merit
  1. . ; of an ID kid, retrieve the child that meets the criteria
  1. . ; and collate w child title:
  1. . S ORIGCHLD=+$P(^TMP("TIUREPLACE",$J,TIUDA),U,2)
  1. . S TIUTI=$G(TIUDOCI(TIUDA)) I 'TIUTI S TIUTI=$G(TIUDOCI(ORIGCHLD))
  1. . ;VMP/RJT - *227
  1. . D EXTRACT^TIULQ(TIUDA,"^TMP(""TIU"","_$J_","_TIUDT_","_TIUTI_")",.TIUERR,".01;.05;.07;.08;1202;1203;1205;1208;1209;1301;1307;1402;1501:1505;1507:1513;1601;1701;89261","",1,"IE",CKCANVW,ORIGCHLD)
  1. K ^TMP("TIUREPLACE",$J)
  1. Q