- AQAOPV2 ; IHS/ORDC/LJF - PRINT PROVIDER QI CODES ;
- ;;1.01;QAI MANAGEMENT;;OCT 05, 1995
- ;
- ;This rtn contians the user interface and call to DIP to print a
- ;listing of providers selected with their corresponding QI codes.
- ;
- SINGLE ;display of selected provider codes
- D SINGLE^AQAOHPRV ;intro text
- K AQAOARR ;make sure array is empty to start
- S AQAOX=0 ;flag for first time thru
- ASK ; >>> ask user for provider names to display
- K DIC S DIC=200,DIC(0)="AEQ",D="AK.PROVIDER",DIC("A")="Select "
- S DIC("A")=DIC("A")_$S('AQAOX:"PROVIDER NAME: ",1:"ANOTHER PROVIDER: ")
- S DIC("S")="I $P($G(^(""PS"")),U,4)=""""" ;screen out inactives
- D IX^DIC S AQAOX=1 G END:$D(DUOUT),END:$D(DTOUT),DEV:X="",DEV:Y=-1
- S AQAOARR(+Y)="" G ASK
- ;
- DEV ; >>> get print device
- G END:'$D(AQAOARR) ;no providers selected
- W !! S %ZIS="QP" D ^%ZIS G END:POP
- I '$D(IO("Q")) U IO G PRINT
- K IO("Q") S ZTRTN="PRINT^AQAOPV2",ZTDESC="SINGLE PROV CODES"
- S ZTSAVE("AQAOARR(")="" D ^%ZTLOAD K ZTSK D ^%ZISC
- ;
- D PRTOPT^AQAOVAR G END
- ;
- ;
- PRINT ; >>> loop thru selections and print data
- D INIT^AQAOUTIL S AQAOHCON="Provider",AQAOTY="PROVIDER QI CODES"
- D HEADING^AQAOUTIL,HEADING2 S AQAOX=0
- F S AQAOX=$O(AQAOARR(AQAOX)) Q:AQAOX="" Q:AQAOSTOP=U D
- .I $Y>(IOSL-4) D NEWPG^AQAOUTIL Q:AQAOSTOP=U D HEADING2
- .K ^UTILITY("DIQ1",$J)
- .S DIC=200,DR=".01;53.5;9999999.039",DA=AQAOX D EN^DIQ1
- .W !!,"PROVIDER NAME: ",$E($G(^UTILITY("DIQ1",$J,200,DA,.01)),1,25)
- .W ?45,"PROVIDER CLASS: ",$E($G(^UTILITY("DIQ1",$J,200,DA,53.3)),1,18)
- .W !?6,"QI CODE: ",AQAOX
- .W ?51,"PCC CODE: ",$G(^UTILITY("DIQ1",$J,200,DA,9999999.039))
- ;
- I '$D(ZTQUEUED),(IOST["C-") D PRTOPT^AQAOVAR ;ask to hit return
- END ; >>> eoj
- K ^UTILITY("DIQ1",$J) D ^%ZISC D KILL^AQAOUTIL Q
- ;
- ;
- HEADING2 ; >>> SUBRTN to print second half of heading
- W ?14,"(Please forward INACTIVE PROVIDER NAMES to proper dept.)"
- W !,AQAOLINE,! Q
- AQAOPV2 ; IHS/ORDC/LJF - PRINT PROVIDER QI CODES ;
- +1 ;;1.01;QAI MANAGEMENT;;OCT 05, 1995
- +2 ;
- +3 ;This rtn contians the user interface and call to DIP to print a
- +4 ;listing of providers selected with their corresponding QI codes.
- +5 ;
- SINGLE ;display of selected provider codes
- +1 ;intro text
- DO SINGLE^AQAOHPRV
- +2 ;make sure array is empty to start
- KILL AQAOARR
- +3 ;flag for first time thru
- SET AQAOX=0
- ASK ; >>> ask user for provider names to display
- +1 KILL DIC
- SET DIC=200
- SET DIC(0)="AEQ"
- SET D="AK.PROVIDER"
- SET DIC("A")="Select "
- +2 SET DIC("A")=DIC("A")_$SELECT('AQAOX:"PROVIDER NAME: ",1:"ANOTHER PROVIDER: ")
- +3 ;screen out inactives
- SET DIC("S")="I $P($G(^(""PS"")),U,4)="""""
- +4 DO IX^DIC
- SET AQAOX=1
- IF $DATA(DUOUT)
- GOTO END
- IF $DATA(DTOUT)
- GOTO END
- IF X=""
- GOTO DEV
- IF Y=-1
- GOTO DEV
- +5 SET AQAOARR(+Y)=""
- GOTO ASK
- +6 ;
- DEV ; >>> get print device
- +1 ;no providers selected
- IF '$DATA(AQAOARR)
- GOTO END
- +2 WRITE !!
- SET %ZIS="QP"
- DO ^%ZIS
- IF POP
- GOTO END
- +3 IF '$DATA(IO("Q"))
- USE IO
- GOTO PRINT
- +4 KILL IO("Q")
- SET ZTRTN="PRINT^AQAOPV2"
- SET ZTDESC="SINGLE PROV CODES"
- +5 SET ZTSAVE("AQAOARR(")=""
- DO ^%ZTLOAD
- KILL ZTSK
- DO ^%ZISC
- +6 ;
- +7 DO PRTOPT^AQAOVAR
- GOTO END
- +8 ;
- +9 ;
- PRINT ; >>> loop thru selections and print data
- +1 DO INIT^AQAOUTIL
- SET AQAOHCON="Provider"
- SET AQAOTY="PROVIDER QI CODES"
- +2 DO HEADING^AQAOUTIL
- DO HEADING2
- SET AQAOX=0
- +3 FOR
- SET AQAOX=$ORDER(AQAOARR(AQAOX))
- IF AQAOX=""
- QUIT
- IF AQAOSTOP=U
- QUIT
- Begin DoDot:1
- +4 IF $Y>(IOSL-4)
- DO NEWPG^AQAOUTIL
- IF AQAOSTOP=U
- QUIT
- DO HEADING2
- +5 KILL ^UTILITY("DIQ1",$JOB)
- +6 SET DIC=200
- SET DR=".01;53.5;9999999.039"
- SET DA=AQAOX
- DO EN^DIQ1
- +7 WRITE !!,"PROVIDER NAME: ",$EXTRACT($GET(^UTILITY("DIQ1",$JOB,200,DA,.01)),1,25)
- +8 WRITE ?45,"PROVIDER CLASS: ",$EXTRACT($GET(^UTILITY("DIQ1",$JOB,200,DA,53.3)),1,18)
- +9 WRITE !?6,"QI CODE: ",AQAOX
- +10 WRITE ?51,"PCC CODE: ",$GET(^UTILITY("DIQ1",$JOB,200,DA,9999999.039))
- End DoDot:1
- +11 ;
- +12 ;ask to hit return
- IF '$DATA(ZTQUEUED)
- IF (IOST["C-")
- DO PRTOPT^AQAOVAR
- END ; >>> eoj
- +1 KILL ^UTILITY("DIQ1",$JOB)
- DO ^%ZISC
- DO KILL^AQAOUTIL
- QUIT
- +2 ;
- +3 ;
- HEADING2 ; >>> SUBRTN to print second half of heading
- +1 WRITE ?14,"(Please forward INACTIVE PROVIDER NAMES to proper dept.)"
- +2 WRITE !,AQAOLINE,!
- QUIT