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

ACMRLP1.m

Go to the documentation of this file.
  1. ACMRLP1 ; IHS/TUCSON/TMJ - CONT OF ACMRLP ; [ 06/01/1999 1:41 PM ]
  1. ;;2.0;ACM CASE MANAGEMENT SYSTEM;**1**;JAN 10, 1996
  1. ;IHS/CMI/LAB - tmp to xtmp
  1. ;
  1. ;
  1. COVPAGE ;EP
  1. W:$D(IOF) @IOF
  1. W !?20,"CASE MANAGEMENT PATIENT REGISTER ",$S(ACMCTYP="D":"LISTING",1:"COUNT")
  1. W !!,"REPORT REQUESTED BY: ",$P(^VA(200,DUZ,0),U)
  1. W !!,"REGISTER: ",$P(^ACM(41.1,ACMRG,0),U)
  1. W !!,"The following report contains a CONFIDENTIAL Patient report based on the",!,"following criteria:",!
  1. SHOW ;
  1. W !,"PATIENT Selection Criteria"
  1. I '$D(^ACM(58.8,ACMRPT,11)) G SHOWP
  1. S ACMI=0 F S ACMI=$O(^ACM(58.8,ACMRPT,11,ACMI)) Q:ACMI'=+ACMI D
  1. .I $Y>(IOSL-5) D PAUSE^ACMRL01 W @IOF
  1. .W !?6,$P(^ACM(58.1,ACMI,0),U),": "
  1. .K ACMQ S ACMY=0,C=0 K ACMQ F S ACMY=$O(^ACM(58.8,ACMRPT,11,ACMI,11,"B",ACMY)) S C=C+1 W:C'=1&(ACMY'="") " ; " Q:ACMY=""!($D(ACMQ)) S X=ACMY X:$D(^ACM(58.1,ACMI,2)) ^(2) W X
  1. K ACMQ
  1. SHOWP ;
  1. I ACMCTYP="T" D COUNT Q
  1. I ACMCTYP="S" D I 1
  1. .I $Y>(IOSL-6) D PAUSE^ACMRL01 W @IOF
  1. .W !!,"Report will contain sub-totals by ",$P(^ACM(58.1,ACMSORT,0),U),"."
  1. .I '$D(^XTMP("ACMRL",ACMJOB,ACMBTH)) W !!,"NO DATA TO REPORT.",! D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. .Q
  1. I ACMCTYP'="D" D PAUSE^ACMRL01 W:$D(IOF) @IOF Q
  1. I $Y>(IOSL-4) D PAUSE^ACMRL01 W @IOF
  1. W !!,"PRINT Field Selection"
  1. I '$D(^ACM(58.8,ACMRPT,12)) G PAUSE
  1. S ACMI=0 F S ACMI=$O(^ACM(58.8,ACMRPT,12,ACMI)) Q:ACMI'=+ACMI S ACMCRIT=$P(^ACM(58.8,ACMRPT,12,ACMI,0),U) D
  1. .I $Y>(IOSL-4) D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. .W !?6,$P(^ACM(58.1,ACMCRIT,0),U)," (" S X=$O(^ACM(58.8,ACMRPT,12,"B",ACMCRIT,"")) W $P(^ACM(58.8,ACMRPT,12,X,0),U,2),")"
  1. I $Y>(IOSL-4) D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. W !?10," TOTAL column width: ",ACMTCW
  1. Q:'$G(ACMSORT)
  1. I $Y>(IOSL-4) D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. W !!,"Patients will be SORTED by: ",$P(^ACM(58.1,ACMSORT,0),U),!
  1. I $Y>(IOSL-4) D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. I $G(ACMSPAG) W !?6,"Each ",$P(^ACM(58.1,ACMSORT,0),U)," will be on a separate page.",!
  1. I '$D(^XTMP("ACMRL",ACMJOB,ACMBTH)) W !!,"NO DATA TO REPORT.",!
  1. PAUSE D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. Q
  1. COUNT ;if COUNTING entries only
  1. I $Y>(IOSL-5) D PAUSE^ACMRL01 W:$D(IOF) @IOF
  1. I '$D(^XTMP("ACMRL",ACMJOB,ACMBTH)) W !!!,"NO DATA TO REPORT.",!
  1. W:$D(ACMRCNT) !!!,"Total COUNT of PATIENTS: ",ACMRCNT
  1. Q
  1. WP ;EP - Entry point to print wp fields pass node in ACMNODE
  1. ;PASS FILE IN ACMFILE, ENTRY IN ACMDA
  1. K ^UTILITY($J,"W")
  1. S ACMRLX=0
  1. S ACMG1=^DIC(ACMFILE,0,"GL"),ACMG=ACMG1_ACMDA_","_ACMNODE_",ACMRLX)",ACMGR=ACMG1_ACMDA_","_ACMNODE_",ACMRLX"
  1. S DIWL=1,DIWR=$P(^ACM(58.8,ACMRPT,12,ACMI,0),U,2) F S ACMRLX=$O(@ACMG) Q:ACMRLX'=+ACMRLX D
  1. .S Y=ACMGR_",0)" S X=@Y D ^DIWP
  1. .Q
  1. S Z=0 F S Z=$O(^UTILITY($J,"W",DIWL,Z)) Q:Z'=+Z S ACMPCNT=ACMPCNT+1,ACMPRNM(ACMPCNT)=^UTILITY($J,"W",DIWL,Z,0)
  1. S ACMPCNT=ACMPCNT+1
  1. K DIWL,DIWR,DIWF,Z
  1. K ^UTILITY($J,"W"),ACMNODE,ACMFILE,ACMDA,ACMG1,ACMGR,ACMRLX
  1. Q