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

TIUP149P.m

Go to the documentation of this file.
  1. TIUP149P ; SLC/JAK,RMO - Post-Install for TIU*1*149 Cont.;10/30/02@09:27:47
  1. ;;1.0;TEXT INTEGRATION UTILITIES;**149**;Jun 20, 1997
  1. PRINT ; -- Device Selection
  1. N EXNDBIF,TIUOUT
  1. W !!,"This routine will print the results of the clean up routine in patch"
  1. W !,"TIU*1*149 which provides a clean up for documents pointing to a different"
  1. W !,"patient's visit in the TIU DOCUMENT file (#8925)."
  1. ;
  1. ;If integrated facility, ask about excluding NDBI fix needed records
  1. I $$CHKINF^TIUP149,$$ASKEX(.TIUOUT) S EXNDBIF=1
  1. G PRINTQ:$G(TIUOUT)
  1. ;
  1. W !!,*7,"This report requires a column width of 132.",!
  1. S %ZIS="Q" D ^%ZIS I POP K POP G PRINTQ
  1. I $D(IO("Q")) K IO("Q") D Q
  1. . I $G(EXNDBIF) S ZTSAVE("EXNDBIF")=""
  1. . S ZTRTN="LIST^TIUP149P"
  1. . S ZTDESC="TIU*1*149 - PRINT CLEAN-UP RESULTS"
  1. . D ^%ZTLOAD W !,$S($D(ZTSK):"Request queued",1:"Request Cancelled!")
  1. . K ZTSK,ZTDESC,ZTDTH,ZTIO,ZTRTN,ZTSAVE,%ZIS
  1. . D HOME^%ZIS
  1. U IO D LIST,^%ZISC
  1. PRINTQ Q
  1. ;
  1. ASKEX(TIUOUT) ;Ask if user would like to exclude NDBI fix needed records
  1. ; Input -- None
  1. ; Output -- 1=Yes and 0=No
  1. ; TIUOUT Timeout or up-arow flag
  1. N DIR,DTOUT,DUOUT,Y
  1. S DIR("A")="Do you want to exclude 'NDBI Fix Needed' records from the report"
  1. S DIR("B")="YES",DIR(0)="Y"
  1. W ! D ^DIR
  1. I $D(DTOUT)!($D(DUOUT)) S TIUOUT=1
  1. Q +$G(Y)
  1. ;
  1. LIST ; -- Entry point to generate list
  1. N TIUDA,TIULNK,TIUOUT S TIUOUT=0
  1. I $D(ZTQUEUED) S ZTREQ="@"
  1. D HDR
  1. I +$O(^XTMP("TIUP149","LNK",0))'>0 W !?4,"No records in list." G LISTQ
  1. S TIUDA=0
  1. F S TIUDA=$O(^XTMP("TIUP149","LNK",TIUDA)) Q:'TIUDA!(TIUOUT) S TIULNK=$G(^(TIUDA)) D LISTONE(TIUDA,TIULNK,$G(EXNDBIF))
  1. LISTQ K EXNDBIF
  1. Q
  1. ;
  1. LISTONE(TIUDA,TIULNK,EXNDBIF) ;Entry point to list one record
  1. ; Input -- TIUDA TIU Document file (#8925) IEN
  1. ; TIULNK 1st piece= 1=Linked and 0=Not Linked
  1. ; 2nd piece= Exception type if not linked
  1. ; 3rd piece= Visit file (#9000010) IEN if linked
  1. ; EXNDBIF Exclude "NDBI Fix Needed" records flag (Optional)
  1. ; Output -- None
  1. N DFN,TIUEX,VADM,VAIP,VAIN,VA
  1. I $Y>(IOSL-4) D ASK G LISTONEQ:TIUOUT D HDR
  1. S DFN=+$P($G(^TIU(8925,+TIUDA,0)),U,2)
  1. S TIUEX=+$P($G(TIULNK),U,2)
  1. ;
  1. ;If exclude NDBI record flag set and NDBI record, exit
  1. I $G(EXNDBIF),TIUEX=3 G LISTONEQ
  1. D OERR^VADPT
  1. W !,$E($G(VADM(1)),1,20)_" ("_$G(VA("BID"))_")"
  1. W ?30,TIUDA
  1. W ?42,$E($P($G(^TIU(8925.1,+$G(^TIU(8925,+TIUDA,0)),0)),U,1),1,15)
  1. I +$G(TIULNK),$P(TIULNK,U,3) D
  1. . N DA,DIC,DIQ,DR,TIUVISIT
  1. . S DIC="^AUPNVSIT(",DIQ="TIUVISIT",DIQ(0)="E",DA=+$P(TIULNK,U,3)
  1. . S DR=".01;.22" D EN^DIQ1
  1. . W ?60,$G(TIUVISIT(9000010,DA,.01,"E"))
  1. . W ?84,$E($G(TIUVISIT(9000010,DA,.22,"E")),1,20)
  1. . W ?106,"Yes - Visit #"_$P(TIULNK,U,3)
  1. ELSE D
  1. . W ?106,"No - "
  1. . W $S(TIUEX=1:"Entry in Use",TIUEX=2:"Unlinked Visit",TIUEX=3:"NDBI Fix Needed",1:"")
  1. LISTONEQ Q
  1. ;
  1. ASK ; -- End of Page
  1. I IO=IO(0),$E(IOST)="C" D
  1. . W ! N DIR,X,Y S DIR(0)="E"
  1. . D ^DIR I $D(DUOUT)!$D(DTOUT) S TIUOUT=1
  1. Q
  1. ;
  1. HDR ; -- Header for report
  1. N LNE,TIUNOW
  1. D NOW^%DTC S Y=% X ^DD("DD") S TIUNOW=Y
  1. W @IOF,"TIU*1*149 TIU DOCUMENTS LINKED TO A DIFFERENT PATIENT'S VISIT CLEAN-UP - Printed: ",TIUNOW
  1. W !,"Patient",?30,"Document #",?42,"Title",?60,"Visit Date/Time",?84,"Hospital Location",?106,"Linked"
  1. W ! S LNE="",$P(LNE,"-",(IOM-1))="" W LNE
  1. Q
  1. ;
  1. MAIL ;Send completion message to user who initiated post-install
  1. N XMSUB,XMTEXT,XMDUZ,XMY,XMZ,XMMG
  1. N TIURNG,TIUTXT
  1. S XMDUZ="PATCH TIU*1*149 TIU DOCUMENT CLEAN-UP RESULTS",XMY(.5)=""
  1. S:$G(DUZ) XMY(DUZ)=""
  1. S XMY("G.PATIENT SAFETY NOTIFICATIONS")=""
  1. S TIUTXT(1)="Clean up TIU Documents linked to a different patient's visit."
  1. S TIUTXT(2)=""
  1. S TIUTXT(3)="Task Started: "_$$FMTE^XLFDT($G(^XTMP("TIUP149","T0")))
  1. S TIUTXT(4)="Task Ended: "_$$FMTE^XLFDT($G(^XTMP("TIUP149","T1")))
  1. S TIUTXT(5)=""
  1. ;
  1. S TIUTXT(6)="Number of entries linked to Correct Visit: "_+$G(^XTMP("TIUP149","CNT","LNK"))
  1. S TIUTXT(7)=""
  1. S TIUTXT(8)="Number of entries not corrected because Entry in Use: "_+$G(^XTMP("TIUP149","CNT","EX",1))
  1. S TIUTXT(9)=""
  1. S TIUTXT(10)="Number of entries unlinked from Incorrect Visit: "_+$G(^XTMP("TIUP149","CNT","EX",2))
  1. S TIUTXT(11)=""
  1. S TIUTXT(12)="TOTAL Number of entries processed: "_+$G(^XTMP("TIUP149","CNT","TOT"))
  1. S TIUTXT(13)=""
  1. I $G(^XTMP("TIUP149","STOP")) D
  1. . S TIUTXT(14)="Task STOPPED: "_$$FMTE^XLFDT($G(^XTMP("TIUP149","STOP")))_"."
  1. ELSE D
  1. . S TIUTXT(14)="Task COMPLETED successfully."
  1. . S TIUTXT(15)=""
  1. . S TIUTXT(16)="To print a detailed listing of the clean up invoke D PRINT^TIUP149P."
  1. ;
  1. I $G(NDBIF) D
  1. . S TIUTXT(17)=""
  1. . S TIUTXT(18)="SPECIAL NOTE FOR INTEGRATED FACILITIES:"
  1. . S TIUTXT(19)=""
  1. . S TIUTXT(20)="- Number of entries not corrected because NDBI Fix Needed: "_+$G(^XTMP("TIUP149","CNT","EX",3))
  1. S XMTEXT="TIUTXT(",XMSUB="TIU*1*149 TIU Document Clean up for Different Patient's Visit"
  1. D ^XMD
  1. Q