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

DGMT141A.m

Go to the documentation of this file.
  1. DGMT141A ;ALB/ABR - SC 0% MT CHANGES REPORT (PATCH DG*5.3*141) ; 9/25/97
  1. ;;5.3;Registration;**141**;Aug 13, 1993
  1. ;
  1. EN ; entry point
  1. N DGREPT,I,DIR,POP,TXT,X,Y,%ZIS,ZTSK,ZTSAVE,ZTDESC,ZTRTN
  1. ;
  1. F I=1:1 S TXT=$P($T(TXT+I),";;",2) Q:TXT["$END" D MES^XPDUTL(TXT) ; print TXT
  1. ;
  1. S DIR(0)="SM^1:Veterans who now REQUIRE a Means Test;2:Veterans who no longer require a Means Test;3:ALL"
  1. S DIR("B")="ALL",DIR("A")="Select REPORT"
  1. D ^DIR
  1. I '$G(Y) D BMES^XPDUTL(" >> No Report Selected") Q
  1. S DGREPT=Y
  1. ;check for data
  1. I DGREPT=3,'$D(^XTMP("DG53141G",1)),'$D(^XTMP("DG53141G",3)) D BMES^XPDUTL(" No entries to print") D EXIT Q
  1. I DGREPT=1,'$D(^XTMP("DG53141G",1)) D BMES^XPDUTL(" No entries to print") D EXIT Q
  1. I DGREPT=2,'$D(^XTMP("DG53141G",3)) D BMES^XPDUTL(" No entries to print") D EXIT Q
  1. ; select device,queuing
  1. S %ZIS="QM" D ^%ZIS I POP D BMES^XPDUTL(" Try again later.") Q
  1. ; if queueing
  1. I $D(IO("Q")) D Q
  1. . S ZTRTN="RPT^DGMT141A",ZTDESC="SC 0% MT CHANGES REPORT",ZTSAVE("DGREPT")=""
  1. . D ^%ZTLOAD I '$G(ZTSK) D BMES^XPDUTL(" Report cancelled. Try again later.") Q
  1. . D BMES^XPDUTL(" ==> Task "_ZTSK_" queued.")
  1. ;
  1. U IO
  1. D RPT ; report display entry point
  1. D ^%ZISC
  1. D EXIT
  1. Q
  1. RPT ; run report
  1. N DGDTTI,DGHOME,DGST,DGTOT,DGTOT1,DGTOT3,HDR,PAGE,MTSTAT,LID,NAME,COP,COPAY,PRST,PRSTA
  1. N DGPT,DGSRT,STR,DGI
  1. I IO=IO(0)&($E(IOST,1,2)["C-") S DGHOME=1 ; if home device, to check for paging prompt
  1. S DGSRT(1)="Outpatient Encounters: ",DGSRT(2)="Inpatients: ",DGSRT(3)="Future Appointements: ",DGSRT(4)="Current MT or Copay test on file: "
  1. ;
  1. I DGREPT#2 D D REQ ; vets require mt
  1. . S DGTOT1=0 F DGI=1:1:4 S DGTOT1=DGTOT1+$G(^XTMP("DG53141G",1,DGI,0))
  1. I $G(DGST) Q ; if ^-out to page prompt
  1. I DGREPT>1 D D NOTREQ ; not require mt
  1. . S DGTOT3=0 F DGI=1:1:4 S DGTOT3=DGTOT3+$G(^XTMP("DG53141G",3,DGI,0))
  1. Q
  1. REQ ; vets require mt
  1. S MTSTAT=1
  1. S DGDTTI=$$HTE^XLFDT($H) ; set date/time of report
  1. S HDR="SC 0% VETERANS WHO NOW REQUIRE A MEANS TEST: ("_DGTOT1_" vets)",PAGE=0
  1. ;
  1. D PRINT
  1. Q
  1. NOTREQ ; vets don't require mt
  1. S MTSTAT=3
  1. S DGDTTI=$$HTE^XLFDT($H) ; set date/time of report
  1. S HDR="SC 0% VETERANS WHO NO LONGER REQUIRE A MEANS TEST: ("_DGTOT3_" vets)",PAGE=0
  1. ;
  1. D PRINT
  1. Q
  1. PRINT ; report printing
  1. N DGPT
  1. F DGSRT=1:1:4 Q:$G(DGST) S DGPT=0 I $O(^XTMP("DG53141G",MTSTAT,DGSRT,DGPT))]"" D
  1. . S DGSRT(DGSRT)=DGSRT(DGSRT)_+$G(^XTMP("DG53141G",MTSTAT,DGSRT,0))_" veteran(s)"
  1. . D HDR F S DGPT=$O(^XTMP("DG53141G",MTSTAT,DGSRT,DGPT)) Q:DGPT="" S STR=^(DGPT) D Q:$G(DGST)
  1. .. S NAME=$P(DGPT,"_"),PRST=+STR,LID=$P(STR,U,2),COP=$P(STR,U,3)
  1. .. S PRSTA=$P($G(^DG(408.32,PRST,0)),U)
  1. .. W !,NAME,?48,LID,?60,PRSTA
  1. .. I COP S COPAY=$P(^DG(408.32,COP,0),U) W ?82,COPAY
  1. .. I $Y>(IOSL-2) D HDR
  1. Q
  1. HDR ; header and paging
  1. S PAGE=PAGE+1 I PAGE>1&$G(DGHOME) D Q:$G(DGST)
  1. . N X,Y,DIR,CTR
  1. . S DIR(0)="E" D ^DIR S DGST='Y
  1. W @IOF,!?(IOM-$L(HDR)\2),HDR,!!,"page ",PAGE,?(IOM-23),DGDTTI
  1. W !!,"Name",?48,"Long ID",?60,"Previous MT Status",?82,"Current COPAY status, if changed"
  1. W ! F I=1:1:IOM-1 W "-"
  1. S CTR=IOM-(28+$L(DGSRT(DGSRT)))\2
  1. W !,?CTR,"** MT Changes found from ",DGSRT(DGSRT),!
  1. Q
  1. ;
  1. EXIT ; clean up variables
  1. K DGREPT
  1. TXT ; report description
  1. ;;
  1. ;;This report will list those veterans, SC<50%, SC 0% whose Means Test status
  1. ;;was changed as a result of the revised Secondary Eligibility checks.
  1. ;;
  1. ;;The source for this listing is the clean-up that was run as part of
  1. ;;patch DG*5.3*141. There are 2 possible reports:
  1. ;;
  1. ;; 1 - Veterans who now REQUIRE a Means Test
  1. ;; 2 - Veterans who no longer require a Means Test.
  1. ;;
  1. ;;Each of these reports has been divided into 3 parts, based on why
  1. ;;the veteran's status was reviewed:
  1. ;;
  1. ;; If, during the timeframe between the installation of the Tricare
  1. ;; patch and the date the clean-up was run, the Veteran:
  1. ;; 1) had an Outpatient Encounter.
  1. ;; 2) was an inpatient.
  1. ;; 3) had a future appointment made.
  1. ;; 4) has current Means Test or Copay test on file
  1. ;;
  1. ;; ** This report requires 132 columns! **
  1. ;;
  1. ;;$END