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

AQAOPC1.m

Go to the documentation of this file.
  1. AQAOPC1 ; IHS/ORDC/LJF - OCC BY INDICATOR W/ CRITERIA ;
  1. ;;1.01;QAI MANAGEMENT;;OCT 05, 1995
  1. ;
  1. ;This rtn contains the user interface for the trending report by
  1. ;review criteria.
  1. ;
  1. D CRIT^AQAOHOP2 ;intro text
  1. TYPE ; >>> ask user what type of report to print
  1. K DIR S DIR(0)="SO^L:LISTING PLUS STATISTICS;S:STATISTICS ONLY"
  1. S DIR("A")="Choose TYPE of report to print"
  1. S DIR("?",1)="Which report style do you want?"
  1. S DIR("?",2)=" Enter L to list occurrences PLUS statistics"
  1. S DIR("?",3)=" Enter S to print the statistical page ONLY"
  1. S DIR("?")="For more information on these styles, see the User Manual."
  1. D ^DIR G END:$D(DIRUT) S AQAOTYP=Y
  1. ;
  1. IND ; >>> occurrences for which indicator?
  1. S AQAOIND=$$IND^AQAOLKP G END:AQAOIND=U,TYPE:AQAOIND=-1
  1. S AQAOIND=+AQAOIND
  1. ;
  1. CRIT ; >>> check criteria defined for this indicator
  1. I '$D(^AQAO1(6,"C",AQAOIND)) D G TYPE
  1. .W !!,*7,"NO Criteria for this Indicator",!
  1. S (X,AQAOCNT)=0 K AQAOCR,AQAOIOMX ;init count; kill array & iom var
  1. F S X=$O(^AQAO1(6,"C",AQAOIND,X)) Q:X="" D
  1. .Q:'$D(^AQAO1(6,X,0)) S AQAOCR(X)=$P(^(0),U) ;set array w/crit name
  1. .S AQAOCNT=AQAOCNT+1 ;increment count
  1. I (AQAOTYP="L"),(AQAOCNT>7) D
  1. .S AQAOIOMX=132
  1. .W !,*7,"You have more than 7 criteria for this indicator."
  1. .W !,"Please use CONDENSED PRINT or WIDE PAPER.",!
  1. ;
  1. ; >> if too many defined, must choose up to 14 for this report
  1. W !!,"There are ",AQAOCNT," criteria defined for this indicator. Only"
  1. W !,"14 can fit on the report. Please choose up to 14 from the list."
  1. W !! K DIR S DIR(0)="L^1:"_AQAOCNT_"^K:X#1 X",(Y,X)=0
  1. F S X=$O(AQAOCR(X)) Q:X="" D
  1. .S Y=Y+1,DIR("A",Y)=Y_". "_AQAOCR(X),AQAOAR(X)=Y
  1. S DIR("A")="Choose the CRITERIA for this report" D ^DIR
  1. G END:$D(DIRUT) I $P(Y,",",15)'="" G CRIT ;still too many
  1. ; >> kill off items not selected
  1. F I=1:1 S X=$P(Y,",",I) Q:X="" S Y(X)=""
  1. S X=0 F S X=$O(AQAOCR(X)) Q:X="" I '$D(Y(AQAOAR(X))) K AQAOCR(X)
  1. K Y,AQAOAR
  1. ;
  1. DATES ; >> ask user to choose date range
  1. S AQAOBD=$$BDATE^AQAOLKP G IND:AQAOBD=U,IND:AQAOBD=""
  1. S AQAOED=$$EDATE^AQAOLKP G DATES:AQAOED=U,DATES:AQAOED=""
  1. ;
  1. ;
  1. DEV ; >>> get print device
  1. I $P(AQAOUA("USER"),U,7)=1 D EXPORT^AQAOUTIL G DATES:Y=U
  1. W !!
  1. I $D(AQAOIOMX) W *7,"REMEMBER to use CONDENSED PRINT or WIDE PAPER!",!!
  1. S %ZIS="QP" D ^%ZIS G END:POP
  1. I '$D(IO("Q")) U IO G ^AQAOPC11
  1. K IO("Q") S ZTRTN="^AQAOPC11",ZTDESC="OCC BY IND & CRIT"
  1. F I="AQAOTYP","AQAOIND","AQAOCR(","AQAOBD","AQAOED" S ZTSAVE(I)=""
  1. S:$D(AQAODLM) ZTSAVE("AQAODLM")=""
  1. S:$D(AQAOIOMX) ZTSAVE("AQAOIOMX")=""
  1. S:$D(AQAOXSN) ZTSAVE("AQAOXSN")="",ZTSAVE("AQAOXSM")=""
  1. S:$D(AQAOXS) ZTSAVE("AQAOXS(")=""
  1. D ^%ZTLOAD K ZTSK D ^%ZISC
  1. ;
  1. END ; >>> eoj
  1. D HOME^%ZIS D KILL^AQAOUTIL Q