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

ACDRLP1.m

Go to the documentation of this file.
  1. ACDRLP1 ;IHS/ADC/EDE/KML - CONT OF ACDRLP;
  1. ;;4.1;CHEMICAL DEPENDENCY MIS;;MAY 11, 1998
  1. ;
  1. ;
  1. COVPAGE ;EP
  1. W:$D(IOF) @IOF
  1. W !?5,"CHEMICAL DEPENDENCY MIS ",$S(ACDPTVS="P":"PATIENT",1:"CDMIS RECORD")," ",$S(ACDCTYP="D":"LISTING",1:"COUNT")
  1. W !!,"REPORT REQUESTED BY: ",$P(^VA(200,DUZ,0),U)
  1. W !!,"The following report contains a ",$S(ACDPTVS="V":"CDMIS Record",1:"Patient")," report based on the",!,"following criteria:",!
  1. SHOW ;
  1. W !,$S(ACDPTVS="P":"PATIENT",1:"VISIT")," Selection Criteria"
  1. I $D(ACDRDTR),$D(ACDBDD) W !!?6,"Visit Date range: ",ACDBDD," to ",ACDEDD,!
  1. W:ACDPTVS="V" !!?6,"Visit Date range: ",ACDBDD," to ",ACDEDD,!
  1. I '$D(^ACDRPTD(ACDRPT,11)) G SHOWP
  1. S ACDI=0 F S ACDI=$O(^ACDRPTD(ACDRPT,11,ACDI)) Q:ACDI'=+ACDI D
  1. .I $Y>(IOSL-5) D PAUSE^ACDRL01 W @IOF
  1. .W !?6,$P(^ACDTITEM(ACDI,0),U),": "
  1. .K ACDQ S ACDY=0,C=0 K ACDQ F S ACDY=$O(^ACDRPTD(ACDRPT,11,ACDI,11,"B",ACDY)) S C=C+1 W:C'=1&(ACDY'="") " ; " Q:ACDY=""!($D(ACDQ)) S X=ACDY X:$D(^ACDTITEM(ACDI,2)) ^(2) W X
  1. K ACDQ
  1. SHOWP ;
  1. I ACDCTYP="F" W !!,"FLAT FILE BEING GENERATED: ",ACDFILE,!! W:'$D(ZTQUEUED) "HOLD ON......" Q
  1. I ACDCTYP="T" D COUNT Q
  1. I ACDCTYP="S" D I 1
  1. .I $Y>(IOSL-6) D PAUSE^ACDRL01 W @IOF
  1. .W !!,"Report will contain sub-totals by ",$P(^ACDTITEM(ACDSORT,0),U),"."
  1. .I '$D(^TMP("ACDRL",ACDJOB,ACDBTH)) W !!,$S(ACDPTVS="V":"NO VISITS",1:"NO PATIENTS")_" TO REPORT.",! D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. .Q
  1. I ACDCTYP'="D" D PAUSE^ACDRL01 W:$D(IOF) @IOF Q
  1. I $Y>(IOSL-4) D PAUSE^ACDRL01 W @IOF
  1. W !!,"PRINT Field Selection"
  1. I '$D(^ACDRPTD(ACDRPT,12)) G PAUSE
  1. S ACDI=0 F S ACDI=$O(^ACDRPTD(ACDRPT,12,ACDI)) Q:ACDI'=+ACDI S ACDCRIT=$P(^ACDRPTD(ACDRPT,12,ACDI,0),U) D
  1. .I $Y>(IOSL-4) D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. .W !?6,$P(^ACDTITEM(ACDCRIT,0),U)," (" S X=$O(^ACDRPTD(ACDRPT,12,"B",ACDCRIT,"")) W $P(^ACDRPTD(ACDRPT,12,X,0),U,2),")"
  1. I $Y>(IOSL-4) D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. W !?10," TOTAL column width: ",ACDTCW
  1. Q:'$G(ACDSORT)
  1. I $Y>(IOSL-4) D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. W !!?6,$S(ACDPTVS="V":"Records",1:"Patients")," will be sorted by: ",$P(^ACDTITEM(ACDSORT,0),U),!
  1. I $Y>(IOSL-4) D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. I $G(ACDSPAG) W !?6,"Each ",$P(^ACDTITEM(ACDSORT,0),U)," will be on a separate page.",!
  1. I '$D(^TMP("ACDRL",ACDJOB,ACDBTH)) W !!,$S(ACDPTVS="V":"NO VISITS",1:"NO PATIENTS")_" TO REPORT.",!
  1. PAUSE D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. Q
  1. COUNT ;if COUNTING entries only
  1. I $Y>(IOSL-5) D PAUSE^ACDRL01 W:$D(IOF) @IOF
  1. I '$D(^TMP("ACDRL",ACDJOB,ACDBTH)) W !!!,$S(ACDPTVS="V":"NO VISITS",1:"NO PATIENTS")_" TO REPORT.",!
  1. I $D(ACDRCNT),ACDPTVS="V" W !!!,"Total COUNT of ",$S(ACDPTVS="P":"Patients",1:"Records"),": ",ACDRCNT
  1. I $D(ACDPTCT),ACDPTVS="P" W !!!,"Total COUNT of ",$S(ACDPTVS="P":"Patients",1:"Records"),": ",ACDPTCT
  1. Q
  1. WP ;EP - Entry point to print wp fields pass node in ACDNODE
  1. ;PASS FILE IN ACDFILE, ENTRY IN ACDDA
  1. K ^UTILITY($J,"W")
  1. S ACDG=^DIC(ACDFILE,"GL",0),ACDG=ACDG_ACDDA_",ACDX)"
  1. S DIWL=1,DIWR=$P(^ACDRPTD(ACDRPT,12,ACDI,0),U,2) F S ACDX=$O(@ACDG) Q:ACDX'=+ACDX D
  1. .S Y=ACDG_",0)" S X=@Y D ^DIWP
  1. .Q
  1. WPS ;EP
  1. S Z=0 F S Z=$O(^UTILITY($J,"W",DIWL,Z)) Q:Z'=+Z S ACDPCNT=ACDPCNT+1,ACDPRNM(ACDPCNT)=^UTILITY($J,"W",DIWL,Z,0)
  1. K DIWL,DIWR,DIWF,Z
  1. K ^UTILITY($J,"W"),ACDNODE,ACDFILE,ACDDA
  1. Q