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

SDRRCRR1.m

Go to the documentation of this file.
  1. SDRRCRR1 ;10N20/MAH;Recall Reminder list report; 11/8/2006
  1. ;;5.3;PIMS;**1016**;JUN 30, 2012;Build 20
  1. EN2 ;BY Teams SELECTED Team
  1. G:'$D(SDT) QUIT
  1. N VAUTSTR,VAUTVB
  1. S DIC="^SD(403.55,",VAUTVB="VAUTT",VAUTSTR="Team",VAUTNI="1"
  1. S DIC(0)="EQMNZ",DIC("A")="Select "_VAUTSTR_": " K @VAUTVB S (@VAUTVB,Y)=0
  1. REDO1 N VAERR,VAI,VAUTNALL,VAUTX
  1. W !,DIC("A") W:'$D(VAUTNALL) "ALL// " R X:DTIME G QUIT:(X="^")!'$T D:X["?" QQQ I X="" G:$D(VAUTNALL) QUIT S @VAUTVB=1 G TEAM
  1. S DIC("A")="Select another "_VAUTSTR_": " D ^DIC G:Y'>0 REDO1 D SET
  1. F VAI=1:0:19 W !,DIC("A") R X:DTIME G QUIT:(X="^")!'$T K Y Q:X="" D QQQ:X["?" S:$E(X)="-" VAUTX=X,X=$E(VAUTX,2,999) D ^DIC I Y>0 D SET G:VAX REDO1 S:'VAERR VAI=VAI+1
  1. TEAM ;
  1. I VAUTT=1 G ENTEAM
  1. I VAUTT=0 G ONTEAM
  1. Q
  1. QQQ W !!,"Please select up to 20 Team that you would like to print" Q
  1. ENTEAM W !!,"***This report requires 132 columns",!! S %ZIS="QM" D ^%ZIS G:POP QUIT
  1. I $D(IO("Q")) S ZTIO=ION,ZTDESC="Print Recall List for Clinics",ZTRTN="ENTEAM1^SDRRCRR1" S ZTSAVE("*")="" D ^%ZTLOAD G QUIT
  1. ENTEAM1 ;ALL TEAMS
  1. K ^TMP($J,"ENTEAM")
  1. S (PRO,RDT,CDT,CDT1,PAT,PHONE,CLINIC,COMMENT,DIV,DIV1,TEST)=""
  1. S ZPR=0 F S ZPR=$O(^SD(403.5,"C",ZPR)) Q:ZPR="" S D0=0 F S D0=$O(^SD(403.5,"C",ZPR,D0)) Q:D0="" S DTA=$G(^SD(403.5,D0,0)) D:DTA]""
  1. .S TEST=$P($G(^SD(403.5,D0,0)),U,5) S DIV=$P($G(^SD(403.54,TEST,0)),U,2)
  1. .I DIV'="" S DIV1=$P($G(^SD(403.55,DIV,0)),"^",1)
  1. .I DIV1="" S DIV1="Unknown"
  1. .S RDT=$P($G(DTA),"^",6) Q:RDT=""
  1. .Q:RDT<SDT!(RDT>EDT)
  1. .S MONTH=$E(RDT,4,5),YR=$E(RDT,2,3)
  1. .S CLINIC=$P($G(DTA),"^",2),DIV=CLINIC I CLINIC'="" S CLINIC=$$GET1^DIQ(44,CLINIC_",",.01)
  1. .I CLINIC="" S CLINIC="Unknown Clinic" ;CLINIC
  1. .S Y=RDT D DD^%DT S DATE=Y K Y ;RECALL DATE
  1. .S PAT=$P($G(DTA),"^",1)
  1. .Q:$$TESTPAT^VADPT(PAT)
  1. .S DFN=PAT
  1. .D ADD^VADPT,DEM^VADPT
  1. .S LN=$E(VADM(1),1)_$P(VA("BID"),U)
  1. .S PAT1=$P(VADM(1),U)
  1. .S (CDT,CDT1)="",Y=$P($G(DTA),"^",10) I Y'="" D DD^%DT S CDT=Y K Y
  1. .S Z=$P($G(DTA),"^",13) I Z'="" S CDT1="*"_CDT K Z D
  1. ..I CDT1'="" S CDT=CDT1
  1. .I CDT="" S CDT="NotSent"
  1. .S PHONE=$P(VAPA(8),U)
  1. .I PHONE="" S PHONE="Unk. Phone" ;phone
  1. .S COMMENT=$P($G(DTA),"^",7)
  1. .S PRO=$P($G(DTA),"^",5) I PRO'="" S PRO1=$P($G(^SD(403.54,PRO,0)),"^",1),PRO2=$$NAME^XUSER(PRO1,"F")
  1. .I PRO="" S PRO2="Unk. Provider"
  1. .S USER=$P($G(DTA),"^",11) I USER'="" S USER1=$$NAME^XUSER(USER)
  1. .I USER="" S USER1="Unk. User"
  1. .S ^TMP($J,"ENTEAM",DIV1,CLINIC,PRO2,MONTH,RDT,PAT1)=CLINIC_"^"_PRO2_"^"_DATE_"^"_CDT_"^"_PAT1_"^"_PHONE_"^"_COMMENT_"^"_USER1_"^"_LN
  1. .K CLINIC,USER,PRO,PAT,RDT,CDT,CDT1
  1. D PRT4^SDRRCRRP
  1. D ^%ZISC
  1. G QUIT
  1. ;THIS PART OF THE TEAMS IS OK
  1. ONTEAM W !!,"***This report requires 132 columns",!! S %ZIS="QM" D ^%ZIS G:POP QUIT
  1. I $D(IO("Q")) S ZTIO=ION,ZTDESC="Print Recall List for Clinics",ZTRTN="ONTEAM1^SDRRCRR1" S ZTSAVE("*")="" D ^%ZTLOAD G QUIT
  1. ONTEAM1 ;SELECTED TEAMS
  1. K ^TMP($J,"ONTEAM")
  1. S (PRO,RDT,CDT,CDT1,PAT,PHONE,CLINIC,COMMENT,DIV,DIV1,TEST)=""
  1. S TM=0
  1. F S TM=$O(VAUTT(TM)) Q:TM="" S TEAM=$P(VAUTT(TM),"^",1) D
  1. .S ZPR=0 F S ZPR=$O(^SD(403.5,"C",ZPR)) Q:ZPR="" S D0=0 F S D0=$O(^SD(403.5,"C",ZPR,D0)) Q:D0="" S DTA=$G(^SD(403.5,D0,0)) D:DTA]""
  1. ..S TEST=$P($G(^SD(403.5,D0,0)),U,5) S DIV=$P($G(^SD(403.54,TEST,0)),U,2)
  1. ..Q:DIV'=TEAM
  1. ..I DIV'="" S DIV1=$P($G(^SD(403.55,DIV,0)),"^",1)
  1. ..I DIV1="" S DIV1="Unknown"
  1. ..S RDT=$P($G(DTA),"^",6) Q:RDT=""
  1. ..Q:RDT<SDT!(RDT>EDT)
  1. ..S MONTH=$E(RDT,4,5),YR=$E(RDT,2,3)
  1. ..S CLINIC=$P($G(DTA),"^",2),DIV=CLINIC I CLINIC'="" S CLINIC=$$GET1^DIQ(44,CLINIC_",",.01)
  1. ..I CLINIC="" S CLINIC="Unknown Clinic" ;CLINIC
  1. ..S Y=RDT D DD^%DT S DATE=Y K Y ;RECALL DATE
  1. ..S PAT=$P($G(DTA),"^",1)
  1. ..Q:$$TESTPAT^VADPT(PAT)
  1. ..S DFN=PAT
  1. ..D ADD^VADPT,DEM^VADPT
  1. ..S LN=$E(VADM(1),1)_$P(VA("BID"),U)
  1. ..S PAT1=$P(VADM(1),U)
  1. ..S (CDT,CDT1)="",Y=$P($G(DTA),"^",10) I Y'="" D DD^%DT S CDT=Y K Y
  1. ..S Z=$P($G(DTA),"^",13) I Z'="" S CDT1="*"_CDT K Z D
  1. ...I CDT1'="" S CDT=CDT1
  1. ..I CDT="" S CDT="NotSent"
  1. ..S PHONE=$P(VAPA(8),U)
  1. ..I PHONE="" S PHONE="Unk. Phone" ;phone
  1. ..S COMMENT=$P($G(DTA),"^",7)
  1. ..S PRO=$P($G(DTA),"^",5) I PRO'="" S PRO1=$P($G(^SD(403.54,PRO,0)),"^",1),PRO2=$$NAME^XUSER(PRO1,"F")
  1. ..I PRO="" S PRO2="Unk. Provider"
  1. ..S USER=$P($G(DTA),"^",11) I USER'="" S USER1=$$NAME^XUSER(USER)
  1. ..I USER="" S USER1="Unk. User"
  1. ..S ^TMP($J,"ONTEAM",DIV1,CLINIC,PRO2,MONTH,RDT,PAT1)=CLINIC_"^"_PRO2_"^"_DATE_"^"_CDT_"^"_PAT1_"^"_PHONE_"^"_COMMENT_"^"_USER1_"^"_LN
  1. ..K CLINIC,USER,PRO,PAT,RDT,CDT,CDT1
  1. D PRT5^SDRRCRRP
  1. D ^%ZISC
  1. G QUIT
  1. ;BY CLINICS WORK FINE
  1. SET S VAX=0 I $D(VAUTX) S J=$S(VAUTNI=2:+Y,1:$P(Y(0),"^")) K VAUTX S VAERR=$S($D(@VAUTVB@(J)):0,1:1) W $S('VAERR:"...removed from list...",1:"...not on list...can't remove") Q:VAERR S VAI=VAI-1 K @VAUTVB@(J) S:$O(@VAUTVB@(0))']"" VAX=1 Q
  1. S VAERR=0 I $S($D(@VAUTVB@($P(Y(0),U))):1,$D(@VAUTVB@(+Y)):1,1:0) W !?3,*7,"You have already selected that ",VAUTSTR,". Try again." S VAERR=1
  1. I VAUTNI=1 S @VAUTVB@($P(Y(0),U))=+Y Q
  1. I VAUTNI=3 S @VAUTVB@($P(Y(0,0),U))=+Y Q
  1. S @VAUTVB@(+Y)=$P(Y(0),U) Q
  1. QUIT K DIR,Y,SDT,EDT,COMMENT,D0,DATE,DIC,DIV,DIV1,DTA,I,J,LN,MONTH,PAT1,PHONE,POP,PRO1,PRO2,SSN,TEAM,TEST,TM,USER1,X,YR,ZPR
  1. K ZTDESC,ZTIO,ZTRTN,ZTSAVE,%DT,%ZIS,%,VAUTC,VAUTD,VA,VAUTNI,VAUTT,DFN,VAX,VAERR,VADM,VAPA
  1. D KVAR^VADPT
  1. Q