| 1 | SDAMOLP ;ALB/CAW - Retroactive Encounter List (Print); 4/15/92 ; 03 Feb 99  4:20 PM | 
|---|
| 2 | ;;5.3;Scheduling;**132,176**;Aug 13, 1993 | 
|---|
| 3 | ; | 
|---|
| 4 | BLD ; Build info from ^TMP global | 
|---|
| 5 | ; | 
|---|
| 6 | ; -- check if user has asked to stop job | 
|---|
| 7 | IF $$S^%ZTLOAD("Printing Retroactive Report...") S (SDSTOP,ZTSTOP)=1 G BLDQ | 
|---|
| 8 | ; | 
|---|
| 9 | S (SDDV,SDSC,SDAD,SDDFN)="",(SDPAGE,SDSTOP)=0,SDFST=21,SDSEC=50,SDFLEN=14,SDSLEN=30,SDCNT=0,SDMORE=1 | 
|---|
| 10 | S $P(SDASH,"-",IOM+1)="" | 
|---|
| 11 | U IO | 
|---|
| 12 | I '$D(^TMP("SDRAL",$J)) D HDR W !,SDASH,!!,"No Encounters found for selected date range." G BLDQ | 
|---|
| 13 | ; | 
|---|
| 14 | D DV | 
|---|
| 15 | ; | 
|---|
| 16 | IF SDSTOP G BLDQ | 
|---|
| 17 | ; | 
|---|
| 18 | IF $G(SDCNT) D TOTAL | 
|---|
| 19 | ; | 
|---|
| 20 | BLDQ ; -- send message that job finished or stopped | 
|---|
| 21 | N X | 
|---|
| 22 | S X=$S('SDSTOP:"Retroactive Report Successfully Completed",1:"Retroactive Report Stopped By User") | 
|---|
| 23 | S X=$$S^%ZTLOAD(X) | 
|---|
| 24 | Q | 
|---|
| 25 | ; | 
|---|
| 26 | ; SDDV=Division, SDSC=Stop Code, SDAD=Encounter Date/Time, SDDFN=Patient | 
|---|
| 27 | ; | 
|---|
| 28 | DV F  S SDDV=$O(^TMP("SDRAL",$J,SDDV)) Q:SDDV=""  D SC Q:SDSTOP | 
|---|
| 29 | Q | 
|---|
| 30 | SC F  S SDSC=$O(^TMP("SDRAL",$J,SDDV,SDSC)) Q:SDSC=""  D HDR,AD Q:SDSTOP | 
|---|
| 31 | Q | 
|---|
| 32 | AD F  S SDAD=$O(^TMP("SDRAL",$J,SDDV,SDSC,SDAD)) Q:'SDAD  D DFN Q:SDSTOP | 
|---|
| 33 | Q | 
|---|
| 34 | DFN F  S SDDFN=$O(^TMP("SDRAL",$J,SDDV,SDSC,SDAD,SDDFN)) Q:'SDDFN  S SDATA=^(SDDFN) S DFN=SDDFN D PID^VADPT6 D INFO Q:SDSTOP  S SDCNT=$G(SDCNT)+1 | 
|---|
| 35 | Q | 
|---|
| 36 | ; | 
|---|
| 37 | TOTAL ; | 
|---|
| 38 | W !!!,"Total Encounters: ",SDCNT | 
|---|
| 39 | Q | 
|---|
| 40 | INFO ; Encounter Date/Time and Patient | 
|---|
| 41 | ; | 
|---|
| 42 | W !,SDASH | 
|---|
| 43 | W !,"Encounter Date/Time:",?SDFST,$$FDTTM^VALM1(SDAD),?41,"Patient:",?SDSEC,$P(^DPT(SDDFN,0),U) | 
|---|
| 44 | ; | 
|---|
| 45 | ; Date Encounter Entered and ID | 
|---|
| 46 | W !,?7,"Date Entered:",?SDFST,$$FDTTM^VALM1($P(SDATA,U,2)),?46,"ID:",?SDSEC,VA("PID") | 
|---|
| 47 | ; | 
|---|
| 48 | ; Date Transmitted and Type | 
|---|
| 49 | W !,?3,"Close-Out Date :",?SDFST,$$FDTTM^VALM1($P(SDATA,U,5)),?44,"Type:",?SDSEC,$P(SDATA,U,4) | 
|---|
| 50 | ; | 
|---|
| 51 | ; User | 
|---|
| 52 | W !,?13,"Clinic:",?SDFST,$S($P(SDATA,U,6)=0:"",1:$P(SDATA,U,6)),?44,"User:",?SDSEC,$P($G(^VA(200,+$P(SDATA,U,3),0),"UNKNOWN"),U) | 
|---|
| 53 | ; | 
|---|
| 54 | S SDMORE=$S('$O(^TMP("SDRAL",$J,SDDV,SDSC,SDAD)):0,1:1) | 
|---|
| 55 | D CHK | 
|---|
| 56 | ; | 
|---|
| 57 | ; -- check if user has asked to stop job | 
|---|
| 58 | IF $$S^%ZTLOAD() S (SDSTOP,ZTSTOP)=1 | 
|---|
| 59 | Q | 
|---|
| 60 | ; | 
|---|
| 61 | HDR ; Header | 
|---|
| 62 | ; | 
|---|
| 63 | S SDPAGE=SDPAGE+1 | 
|---|
| 64 | I $E(IOST,1,2)="C-",'SDMORE S SDMORE=1 D PAUSE^VALM1 I 'Y S SDSTOP=1 Q | 
|---|
| 65 | W @IOF,"Retroactive Encounter List",?70,"Page: "_SDPAGE | 
|---|
| 66 | W !,?3,"Date Range: "_$$FDATE^VALM1(SDBD)_" to "_$$FDATE^VALM1(SDED) D NOW^%DTC W ?51,"Run Date: "_$E($$FTIME^VALM1(%),1,18) Q:'$D(^TMP("SDRAL",$J)) | 
|---|
| 67 | W !,?5,"Division: "_$P($G(^DG(40.8,SDDV,0)),U),?44,"Close-Out Check: ",$S(SDNPDB=1:"DATABASE UPDATE ONLY",1:"WORKLOAD CREDIT") | 
|---|
| 68 | W !,?4,"Stop Code: "_SDSC,?44,"Visit Selection: "_$S(SDSEL=1:"STOP CODE",1:"CLINIC") | 
|---|
| 69 | Q | 
|---|
| 70 | ; | 
|---|
| 71 | CHK ;Check to pause on screen | 
|---|
| 72 | I $E(IOST,1,2)="C-",($Y+7)>IOSL D | 
|---|
| 73 | . D PAUSE^VALM1 S SDY=Y | 
|---|
| 74 | . IF SDMORE,SDY D HDR | 
|---|
| 75 | . S:'SDMORE SDMORE=1 | 
|---|
| 76 | . IF 'SDY S SDSTOP=1 | 
|---|
| 77 | I $E(IOST,1,2)="P-",($Y+6)>IOSL,SDMORE D HDR Q | 
|---|
| 78 | Q | 
|---|