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

AGMCRP2.m

Go to the documentation of this file.
  1. AGMCRP2 ; IHS/ASDS/EFG - PRINT ALPHA LIST OF MEDICARE HOLDERS ;
  1. ;;7.1;PATIENT REGISTRATION;**14**;AUG 25,2005;Build 1
  1. ;
  1. ;IHS/OIT/NKD AG*7.1*14 MBI PHASE 2
  1. ;
  1. S AGIO=IO,AG("HAT")=""
  1. PTS ;
  1. S DIR(0)="S^B:ALL BENEFICIARIES;A:ACTIVE PATIENTS ONLY;D:DECEASED AND INACTIVE PATIENTS ONLY"
  1. S DIR("A")="SELECT DESIRED ACCOUNTS"
  1. D ^DIR K DIR
  1. S AGPTS=Y
  1. Q:$D(DTOUT)!(Y="^")!(Y="/.,")!(Y="^^")
  1. DEV S %ZIS="OPQ" D ^%ZIS I POP S IOP=ION D ^%ZIS Q
  1. G:'$D(IO("Q")) START K IO("Q") I $D(IO("S"))!($E(IOST)'="P") W *7,!,"Please queue to system printers." D ^%ZISC G DEV
  1. X ^%ZOSF("UCI") S ZTRTN="START^AGMCRP",ZTUCI=Y,ZTIO="",ZTDESC="Alpha List MEDICARE/RR Holders for "_$P(^AUTTLOC(DUZ(2),0),U,2)_".",AGQIO=IO F G="AGQIO" S ZTSAVE(G)=""
  1. D ^%ZTLOAD G:'$D(ZTSK) DEV K AG,AGIO,AGQIO,G,ZTDESC,ZTIO,ZTRTN,ZTSK,ZTUCI D ^%ZISC
  1. Q
  1. START ;EP - From TaskMan.
  1. S (DFN,AGTOT)=0 K ^TMP($J)
  1. F S DFN=$O(^AUPNMCR(DFN)) Q:+DFN<1 D
  1. .S AGFLAG=0
  1. .;if there is an HRN for this person and data in VA PATIENT
  1. .I $D(^AUPNPAT(DFN,41,DUZ(2))),$D(^DPT(DFN,0)) D
  1. ..I AGPTS="A" D ;active people only
  1. ...I $P($G(^AUPNPAT(DFN,41,DUZ(2),0)),U,3)="",$P($G(^DPT(DFN,.35)),U)="" S AGFLAG=1
  1. ..I AGPTS="D" D ;deceased/inactive only
  1. ...I $P($G(^AUPNPAT(DFN,41,DUZ(2),0)),U,3)'=""!($P($G(^DPT(DFN,.35)),U)'="") S AGFLAG=1
  1. ..I AGPTS="B" S AGFLAG=1
  1. ..I AGFLAG S ^TMP($J,$P(^DPT(DFN,0),U),DFN)="",AGTOT=AGTOT+1
  1. I $D(AGQIO) F AGZ("I")=1:1 S IOP=AGQIO D ^%ZIS Q:'POP H 30
  1. X ^%ZOSF("UCI") S X="UCI: "_$P(Y,",",1)
  1. D CTR^AG
  1. S AGUCI=X,AGPGPG=0,AG("LOC")=$P(^DIC(4,DUZ(2),0),U),AG("USR")=$P(^VA(200,DUZ,0),U),AG("USRLOC")=AG("USR")_$J("",40-($L(AG("LOC"))\2)-$L(AG("USR")))_AG("LOC"),AGBM=IOSL-10
  1. I $D(AGIO),AGIO=IO S AGBM=IOSL-4
  1. K AG("LOC"),AG("USR") D LINES^AG,NOW^AG S AGNM="",X="as of "_AGTIME D CTR^AG S AGTIME=X U IO D HDR
  1. S AGSTOP=""
  1. F S AGNM=$O(^TMP($J,AGNM)) Q:AGNM="" D Q:AGSTOP
  1. .S DFN=0
  1. .F S DFN=$O(^TMP($J,AGNM,DFN)) Q:DFN="" D Q:AGSTOP
  1. ..D PRINT
  1. ..I $Y>AGBM D
  1. ...D RTRN^AG
  1. ...I $D(DUOUT)!$D(DTOUT)!$D(DFOUT) S AGSTOP=1 G END1
  1. ...D HDR
  1. I 'AGSTOP D END
  1. Q
  1. END W !!!,"TOTAL MEDICARE PATIENTS: ",AGTOT K AG("HAT") D RTRN^AG W $$S^AGVDF("IOF")
  1. END1 D ^%ZISC K ^TMP($J),A,AG,AGBM,AGDOB,AGIO,AGTIME,DA,AG("DENT"),DIC,DFN,DR,G,AGL,I,AG("LKDATA"),AG("LKPRINT"),AGNEW,AGNM,AGPCC,AGPGPG,AGTOT,AGUCI,AG("USRLOC"),X,Y D:$D(ZTQUEUED) KILL^%ZTLOAD
  1. Q
  1. PRINT ;Print a Patient's MEDICARE file.
  1. ;this is to make sure they are Part A somewhere
  1. S (I,AGCFLAG)=""
  1. F S I=$O(^AUPNMCR(DFN,11,I)) Q:I="" D
  1. .S AGCOV=""
  1. .S AGCOV=$P($G(^AUPNMCR(DFN,11,I,0)),U,3)
  1. .I AGCOV="A" S AGCFLAG=1
  1. Q:AGCFLAG'=1
  1. S DIC=2,DA=DFN,DR=.03 D ^AGDICLK K AGDOB S:$D(AG("LKPRINT")) AGDOB=AG("LKPRINT") W "(REG) ",AGNM,?36,$P($G(^AUPNPAT(DFN,41,DUZ(2),0)),U,2),?49 G RR:^TMP($J,AGNM,DFN)="R"
  1. ;S DIC=9000003,DA=DFN,DR=.03 D ^AGDICLK W:$D(AG("LKPRINT")) AG("LKPRINT") S DR=.04 D ^AGDICLK W:$D(AG("LKPRINT")) AG("LKPRINT") W ?64 W:$D(AGDOB) AGDOB ;IHS/OIT/NKD AG*7.1*14
  1. W $$GETMCR^AGUTL(DFN) W ?64 W:$D(AGDOB) AGDOB
  1. S DIC=9000003,DR=2101,DA=DFN D ^AGDICLK K AGMCRNM I $D(AG("LKPRINT")),AG("LKPRINT")]"" S AGMCRNM=AG("LKPRINT")
  1. S DR=2102 D ^AGDICLK K AGMCRDB I $D(AG("LKPRINT")),AG("LKPRINT")]"" S AGMCRDB=AG("LKPRINT")
  1. I $D(AGMCRNM)!$D(AGMCRDB) W !,"(MCR) " W:$D(AGMCRNM) AGMCRNM W:$D(AGMCRDB) ?64,AGMCRDB K AGMCRNM,AGMCRDB
  1. S DIC=9000003.11,DA=DFN
  1. S I=""
  1. F S I=$O(^AUPNMCR(DFN,11,I)) Q:I="" D
  1. .S AGCOV=""
  1. .S AGCOV=$P($G(^AUPNMCR(DFN,11,I,0)),U,3)
  1. .Q:AGCOV'="A"
  1. .S DR=.01,AG("DRENT1")=I D ^AGDICLK
  1. .W !,"(MCR) " W:$D(AG("LKPRINT")) ?14,AG("LKPRINT")
  1. .S DR=.03,AG("DRENT1")=I D ^AGDICLK W:$D(AG("LKPRINT")) ?37,AG("LKPRINT")
  1. .S DR=.02,AG("DRENT1")=I D ^AGDICLK W:$D(AG("LKPRINT")) ?49,AG("LKPRINT")
  1. W !,AG("-"),!
  1. Q
  1. ;RR S DIC=9000005,DA=DFN,DR=.03 D ^AGDICLK W:$D(AG("LKPRINT")) AG("LKPRINT") S DR=.04 D ^AGDICLK W:$D(AG("LKPRINT")) AG("LKPRINT") W ?64 W:$D(AGDOB) AGDOB ;IHS/OIT/NKD AG*7.1*14
  1. RR W $$GETRRE^AGUTL(DFN) W ?64 W:$D(AGDOB) AGDOB
  1. S DIC=9000005,DR=2101,DA=DFN D ^AGDICLK K AGRRNM I $D(AG("LKPRINT")),AG("LKPRINT")]"" S AGRRNM=AG("LKPRINT")
  1. S DR=2102 D ^AGDICLK K AGRRDB I $D(AG("LKPRINT")),AG("LKPRINT")]"" S AGRRDB=AG("LKPRINT")
  1. I $D(AGRRNM)!$D(AGRRDB) W !,"(RR) " W:$D(AGRRNM) AGRRNM W:$D(AGRRDB) ?64,AGRRDB K AGRRNM,AGRRDB
  1. S DIC=9000005.11,DA=DFN
  1. F I=0:0 S I=$O(^AUPNRRE(DFN,11,I)) Q:I="" D
  1. .S DR=.01,AG("DRENT1")=I D ^AGDICLK W !,"(RR) " W:$D(AG("LKPRINT")) ?14,AG("LKPRINT")
  1. .S DR=.03,AG("DRENT1")=I D ^AGDICLK W:$D(AG("LKPRINT")) ?37,AG("LKPRINT")
  1. .S DR=.02,AG("DRENT1")=I D ^AGDICLK W:$D(AG("LKPRINT")) ?49,AG("LKPRINT")
  1. W !,AG("-"),!
  1. Q
  1. HDR S AGPGPG=AGPGPG+1
  1. W $$S^AGVDF("IOF"),!!,AG("USRLOC"),?72,"page ",AGPGPG
  1. W !?17,"REGISTERED PATIENTS - MEDICARE ACCOUNTS"
  1. W !,AGUCI,!,AGTIME
  1. W !!?17,"REPORT CONTAINS "_$S(AGPTS="B":"ALL BENEFICIARIES",AGPTS="A":"ACTIVE PATIENTS ONLY",AGPTS="D":"DECEASED AND INACTIVE PATIENTS ONLY")
  1. W !!," NAME",?36,"CHART #",?49,"NUMBER",!,"(TYPE)",?14,"ELIG DATE",?34,"COVERAGE",?49,"ELIG END DATE",?64,"DATE OF BIRTH"
  1. W !,AG("="),!
  1. Q