- ADEPHYY ; IHS/HQT/MJL - HYGIENIST ANNUAL REPORT ;07:10 PM [ 03/24/1999 9:04 AM ]
- ;;6.0;ADE;;APRIL 1999
- ;
- N ADEREP,ADEDDS,ADEDATE,ADESER,ADEDNAM,ADEWK1,ADEWK2,ADEWK3,ADEHYG,ADEHNAM,DIR,ADEIOP,ADEU
- K DTOUT,DUOUT,DIRUT,DIROUT
- ;Put hygienists/therapists DFNs in ADEHYG
- S ADEHYG=$$HYG^ADEPSUB1()
- I 'ADEHYG W !!,"There is no one classed as a HYGIENIST/THERAPIST in the PROVIDER file!" G END
- ;GET DATE RANGE
- D YDATE^ADEPSUB G:$$HAT^ADEPQA() END
- ;
- ;GET AND LOCK UNIQUE SUBSCRIPT FOR THE REPORT GLOBAL
- S ADEU=$$ADEU^ADEPSUB()
- ; ^TMP is a transient, non-fileman working global.
- K ^TMP("ADEP",ADEU)
- S ^TMP("ADEP",ADEU)="RUNNING"
- ;
- D ASKDEV^ADEPSUB("ZTM^ADEPHYY","HYGIENIST ANNUAL REPORT PROCESSING")
- I POP K ^TMP("ADEP",ADEU) G END
- ;FHL 9/9/98 I $D(ZTSK) G END
- I $D(ZTQUEUED) G END
- ;
- ZTM ;EP - TASKMAN PROCESSING PHASE
- I $D(ZTQUEUED) L +^TMP("ADEP",ADEU):1 I '$T S ZTREQ="@" G END
- ;Get code series
- D HSERIES^ADEPSUB1
- ;$O THRU date xref (?) and HIT if visit assoc w/ hyg
- D ROLL
- D CALC4^ADEPSUB1
- G:$O(^TMP("ADEP",ADEU,0))="" END
- ;Call DIP to print array
- I $D(ZTQUEUED) D G END
- . I $D(IOT),IOT'="HFS" D Q
- . . S ZTREQ=$H_U_ADEIOP_U_"HYGIENIST ANNUAL REPORT PRINTING"_U_"PRINT^ADEPHYY"
- . D PRINT Q
- I '$D(ZTQUEUED) D PRINT
- ;
- END K DUOUT,DTOUT,DIROUT,DIRUT
- D END^ADEPSUB4
- Q
- ;
- ;------->SUBROUTINES
- ;
- ROLL ;
- N ADEBEG,ADEND,ADEDFN
- S ADEBEG=$P(ADEDATE,U,2)-1,ADEND=$P(ADEDATE,U,3)
- F S ADEBEG=$O(^ADEPCD("AC",ADEBEG)) Q:ADEBEG>ADEND Q:'+ADEBEG S ADEDFN=0 D
- . F S ADEDFN=$O(^ADEPCD("AC",ADEBEG,ADEDFN)) Q:'ADEDFN D HSCREEN^ADEPSUB3(ADEDFN,4)
- Q
- ;
- PRINT ;EP - TASKMAN PRINT PHASE
- D PRINT^ADEPSUB("[ADEP-ADEPYR]"," HYGIENIST/THERAPIST ANNUAL REPORT FOR YEAR")
- Q
- ADEPHYY ; IHS/HQT/MJL - HYGIENIST ANNUAL REPORT ;07:10 PM [ 03/24/1999 9:04 AM ]
- +1 ;;6.0;ADE;;APRIL 1999
- +2 ;
- +3 NEW ADEREP,ADEDDS,ADEDATE,ADESER,ADEDNAM,ADEWK1,ADEWK2,ADEWK3,ADEHYG,ADEHNAM,DIR,ADEIOP,ADEU
- +4 KILL DTOUT,DUOUT,DIRUT,DIROUT
- +5 ;Put hygienists/therapists DFNs in ADEHYG
- +6 SET ADEHYG=$$HYG^ADEPSUB1()
- +7 IF 'ADEHYG
- WRITE !!,"There is no one classed as a HYGIENIST/THERAPIST in the PROVIDER file!"
- GOTO END
- +8 ;GET DATE RANGE
- +9 DO YDATE^ADEPSUB
- IF $$HAT^ADEPQA()
- GOTO END
- +10 ;
- +11 ;GET AND LOCK UNIQUE SUBSCRIPT FOR THE REPORT GLOBAL
- +12 SET ADEU=$$ADEU^ADEPSUB()
- +13 ; ^TMP is a transient, non-fileman working global.
- +14 KILL ^TMP("ADEP",ADEU)
- +15 SET ^TMP("ADEP",ADEU)="RUNNING"
- +16 ;
- +17 DO ASKDEV^ADEPSUB("ZTM^ADEPHYY","HYGIENIST ANNUAL REPORT PROCESSING")
- +18 IF POP
- KILL ^TMP("ADEP",ADEU)
- GOTO END
- +19 ;FHL 9/9/98 I $D(ZTSK) G END
- +20 IF $DATA(ZTQUEUED)
- GOTO END
- +21 ;
- ZTM ;EP - TASKMAN PROCESSING PHASE
- +1 IF $DATA(ZTQUEUED)
- LOCK +^TMP("ADEP",ADEU):1
- IF '$TEST
- SET ZTREQ="@"
- GOTO END
- +2 ;Get code series
- +3 DO HSERIES^ADEPSUB1
- +4 ;$O THRU date xref (?) and HIT if visit assoc w/ hyg
- +5 DO ROLL
- +6 DO CALC4^ADEPSUB1
- +7 IF $ORDER(^TMP("ADEP",ADEU,0))=""
- GOTO END
- +8 ;Call DIP to print array
- +9 IF $DATA(ZTQUEUED)
- Begin DoDot:1
- +10 IF $DATA(IOT)
- IF IOT'="HFS"
- Begin DoDot:2
- +11 SET ZTREQ=$HOROLOG_U_ADEIOP_U_"HYGIENIST ANNUAL REPORT PRINTING"_U_"PRINT^ADEPHYY"
- End DoDot:2
- QUIT
- +12 DO PRINT
- QUIT
- End DoDot:1
- GOTO END
- +13 IF '$DATA(ZTQUEUED)
- DO PRINT
- +14 ;
- END KILL DUOUT,DTOUT,DIROUT,DIRUT
- +1 DO END^ADEPSUB4
- +2 QUIT
- +3 ;
- +4 ;------->SUBROUTINES
- +5 ;
- ROLL ;
- +1 NEW ADEBEG,ADEND,ADEDFN
- +2 SET ADEBEG=$PIECE(ADEDATE,U,2)-1
- SET ADEND=$PIECE(ADEDATE,U,3)
- +3 FOR
- SET ADEBEG=$ORDER(^ADEPCD("AC",ADEBEG))
- IF ADEBEG>ADEND
- QUIT
- IF '+ADEBEG
- QUIT
- SET ADEDFN=0
- Begin DoDot:1
- +4 FOR
- SET ADEDFN=$ORDER(^ADEPCD("AC",ADEBEG,ADEDFN))
- IF 'ADEDFN
- QUIT
- DO HSCREEN^ADEPSUB3(ADEDFN,4)
- End DoDot:1
- +5 QUIT
- +6 ;
- PRINT ;EP - TASKMAN PRINT PHASE
- +1 DO PRINT^ADEPSUB("[ADEP-ADEPYR]"," HYGIENIST/THERAPIST ANNUAL REPORT FOR YEAR")
- +2 QUIT