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

AQAOPV23.m

Go to the documentation of this file.
  1. AQAOPV23 ; IHS/ORDC/LJF - PRINT QI CODES BY CLASS/TYPE ;
  1. ;;1.01;QAI MANAGEMENT;;OCT 05, 1995
  1. ;
  1. ;This routine prints listing of CHS or IHS providers by CHS provider
  1. ;type or IHS provider class.
  1. ;Routine added with Version 1.01
  1. ;
  1. ;-- Logic Flow:
  1. ; ASK to ask user which groups to include (chs or ihs providers)
  1. ; DEV to select print device
  1. ; PRINT checks groups selected:
  1. ; if ihs provider selected:
  1. ; use PERSON^AQAOPV21 to print by class
  1. ; if chs provider selected:
  1. ; use VENDOR^AQAOPV21 to print by type
  1. ; EXIT to clean up and quit
  1. ;
  1. D BYCLASS^AQAOHPRV ;intro text
  1. ;
  1. ASK ; -- ask for groups to include
  1. K DIR W !! S DIR(0)="NO^1:2"
  1. S DIR("A")="Select Which Group you want in report"
  1. S DIR("A",1)=" 1. IHS Providers by CLASS"
  1. S DIR("A",2)=" 2. CHS Providers by Type"
  1. S DIR("A",3)=" "
  1. D ^DIR I $D(DIRUT) D EXIT Q
  1. S AQAOSEL=Y
  1. ;
  1. WHICH ; -- which class or types or all
  1. K DIR S DIR(0)="YO",DIR("B")="NO"
  1. S DIR("A")="Do you wish to print for ALL "_$S(AQAOSEL=1:"Classes",1:"Types")
  1. D ^DIR I $D(DIRUT) D ASK Q
  1. I Y=1 S AQAOSEL1="ALL" D DEV Q
  1. ;
  1. K DIC S DIC(0)="AEMQZ",DIC=$S(AQAOSEL=1:7,1:9999999.34)
  1. S DIC("A")="Which "_$S(AQAOSEL=1:"CLASS",1:"TYPE")_"? "
  1. D ^DIC I Y<1 D WHICH Q
  1. S AQAOSEL1=$P(Y,U,2)
  1. ;
  1. ;
  1. DEV ; -- SUBRTN to get print device and call print rtn
  1. W !! S %ZIS="QP" D ^%ZIS
  1. I POP D EXIT Q
  1. I '$D(IO("Q")) D PRINT Q
  1. K IO("Q") S ZTRTN="PRINT^AQAOPV23",ZTDESC="QI CODES BY NUMBER"
  1. F I="AQAOSEL","AQAOSEL1" S ZTSAVE(I)=""
  1. D ^%ZTLOAD K ZTSK D ^%ZISC
  1. D PRTOPT^AQAOVAR D EXIT Q
  1. ;
  1. ;
  1. EXIT ; -- SUBRTN for eoj
  1. I '$D(ZTQUEUED),(IOST["C-") D PRTOPT^AQAOVAR ;ask to hit return
  1. K ^TMP("AQAOPV23",$J)
  1. D ^%ZISC K AQAOSEL D KILL^AQAOUTIL Q
  1. ;
  1. ;
  1. PRINT ;EP; -- check user selections and call proper subrtn
  1. U IO K ^TMP("AQAOPV23",$J)
  1. D INIT^AQAOUTIL S AQAOHCON="Provider"
  1. S AQAOTY="QI CODES BY "_$S(AQAOSEL=1:"CLASS",1:"TYPE")
  1. ;
  1. I AQAOSEL=1 D PERSON
  1. I AQAOSEL=2 D VENDOR
  1. D EXIT
  1. Q
  1. ;
  1. ;
  1. PERSON ; -- SUBRTN to print ihs provider data
  1. NEW AQAOC,AQAOX,AQAOY,X,Y
  1. S AQAON=0
  1. F S AQAON=$O(^VA(200,"AK.PROVIDER",AQAON)) Q:AQAON="" Q:AQAOSTOP=U D
  1. . S AQAOX=0
  1. . F S AQAOX=$O(^VA(200,"AK.PROVIDER",AQAON,AQAOX)) Q:AQAOX="" Q:AQAOSTOP=U D
  1. .. Q:'$D(^VA(200,AQAOX,0))
  1. .. I $P($G(^VA(200,AQAOX,"PS")),U,4)]"",$P(^("PS"),U,4)'>DT Q ;inact
  1. .. S X=$$VAL^XBDIQ1(200,AQAOX,53.5) S:X="" X="UNKNOWN"
  1. .. I AQAOSEL1'="ALL",X'=AQAOSEL1 Q ;not for class selected
  1. .. S ^TMP("AQAOPV23",$J,"IHS "_X,AQAON,AQAOX)=""
  1. ;
  1. S AQAOC=0
  1. F S AQAOC=$O(^TMP("AQAOPV23",$J,AQAOC)) Q:AQAOC="" Q:AQAOSTOP=U D
  1. . D NEWPG^AQAOUTIL Q:AQAOSTOP=U D HEADING2
  1. . S AQAOY=0
  1. . F S AQAOY=$O(^TMP("AQAOPV23",$J,AQAOC,AQAOY)) Q:AQAOY="" Q:AQAOSTOP=U D
  1. .. S AQAOX=""
  1. .. F S AQAOX=$O(^TMP("AQAOPV23",$J,AQAOC,AQAOY,AQAOX)) Q:AQAOX="" Q:AQAOSTOP=U D
  1. ... I $Y>(IOSL-3) D NEWPG^AQAOUTIL Q:AQAOSTOP=U D HEADING2
  1. ... D PERSON^AQAOPV21("I",AQAOX)
  1. Q
  1. ;
  1. VENDOR ; -- SUBRTN to print chs provider data
  1. NEW AQAOT,AQAOX,AQAOY,X,Y
  1. S AQAOX=0
  1. F S AQAOX=$O(^AUTTVNDR(AQAOX)) Q:AQAOX'=+AQAOX Q:AQAOSTOP=U D
  1. . Q:'$D(^AUTTVNDR(AQAOX,0))
  1. . Q:$$VALI^XBDIQ1(9999999.11,AQAOX,.05) ;screen out inactives
  1. . S X=$$VALI^XBDIQ1(9999999.11,AQAOX,1103) Q:X="" ;needs vendor type
  1. . I AQAOSEL1'="ALL",X'=AQAOSEL1 Q ;not for type selected
  1. . S X=$$VAL^XBDIQ1(9999999.34,X,.02)
  1. . S Y=$$VAL^XBDIQ1(9999999.11,AQAOX,.01)
  1. . S ^TMP("AQAOPV23",$J,"CHS "_X,Y,AQAOX)=""
  1. ;
  1. S AQAOT=0
  1. F S AQAOT=$O(^TMP("AQAOPV23",$J,AQAOT)) Q:AQAOT="" Q:AQAOSTOP=U D
  1. . D NEWPG^AQAOUTIL Q:AQAOSTOP=U D HEADING2
  1. . S AQAOY=0
  1. . F S AQAOY=$O(^TMP("AQAOPV23",$J,AQAOT,AQAOY)) Q:AQAOY="" Q:AQAOSTOP=U D
  1. .. S AQAOX=0
  1. .. F S AQAOX=$O(^TMP("AQAOPV23",$J,AQAOT,AQAOY,AQAOX)) Q:AQAOX="" Q:AQAOSTOP=U D
  1. ... I $Y>(IOSL-3) D NEWPG^AQAOUTIL Q:AQAOSTOP=U D HEADING2
  1. ... D VENDOR^AQAOPV21("C",AQAOX)
  1. Q
  1. ;
  1. ;
  1. ;
  1. HEADING2 ; -- SUBRTN to print second half of heading
  1. D HEADING2^AQAOPV21 Q