| 1 | QACSRPT ;HISC/CEW - Report of Service Contacts ;7/17/95  12:24 | 
|---|
| 2 | ;;2.0;Patient Representative;**3**;07/25/1995 | 
|---|
| 3 | DATE ; | 
|---|
| 4 | W !!,"Select the date range you want to print." | 
|---|
| 5 | D ^QAQDATE G:QAQQUIT EXIT I QAQNBEG>DT W !,?5,"*** Beginning date must be today or earlier! ***",*7 G DATE | 
|---|
| 6 | K %ZIS,IOP S %ZIS="MQ" W ! D ^%ZIS G:POP EXIT | 
|---|
| 7 | I $D(IO("Q")) D  G EXIT | 
|---|
| 8 | . S (ZTSAVE("QAQNBEG"),ZTSAVE("QAQNEND"),ZTSAVE("QAQ2HED"))="" | 
|---|
| 9 | . S ZTDESC="Patient Rep Service Report" | 
|---|
| 10 | . S ZTRTN="SERTSK^QACSRPT" | 
|---|
| 11 | . D ^%ZTLOAD | 
|---|
| 12 | . I $G(ZTSK) W !,"Task Number: ",ZTSK | 
|---|
| 13 | . Q | 
|---|
| 14 | SERTSK ; | 
|---|
| 15 | K ^TMP($J,"QACSRPT0"),^TMP($J,"QACSRPT1"),^TMP($J,"QACSRPT2") | 
|---|
| 16 | S (^TMP($J,"QACSRPT0"),^TMP($J,"QACSRPT1"),^TMP($J,"QACSRPT2"))=0 | 
|---|
| 17 | U IO | 
|---|
| 18 | K QACDT,QACD0,QACCN,QACSIEN,QACCIEN,QACINM,QACHDNM,QACHDIEN | 
|---|
| 19 | S QACDT=QAQNBEG-.0000001 F  S QACDT=$O(^QA(745.1,"D",QACDT)) Q:(QACDT'>0)!(QACDT>QAQNEND)!(QACDT\1'?7N)  D | 
|---|
| 20 | . S QACD0=0 F  S QACD0=$O(^QA(745.1,"D",QACDT,QACD0)) Q:QACD0'>0  D | 
|---|
| 21 | .. S QACCN=0 F  S QACCN=$O(^QA(745.1,QACD0,3,QACCN)) Q:QACCN'>0  D | 
|---|
| 22 | ... S QACSN=0 F  S QACSN=$O(^QA(745.1,QACD0,3,QACCN,1,QACSN)) Q:QACSN'>0  D | 
|---|
| 23 | .... S QACSIEN=$P($G(^QA(745.1,QACD0,3,QACCN,1,QACSN,0)),U,1) Q:QACSIEN="" | 
|---|
| 24 | .... S QACSERV=$$EN4^QACUTIL(QACSIEN) | 
|---|
| 25 | .... S QACCIEN=$P($G(^QA(745.1,QACD0,3,QACCN,0)),U,1) Q:QACCIEN="" | 
|---|
| 26 | .... S QACICODE=$P($G(^QA(745.2,QACCIEN,0)),U,1) Q:QACICODE="" | 
|---|
| 27 | .... I $E(QACICODE,1,2)?2A S QACHD=$E(QACICODE,1,2) | 
|---|
| 28 | .... E  S QACHD=$E(QACICODE,1) | 
|---|
| 29 | .... S QACHDIEN=0 F  S QACHDIEN=$O(^QA(745.2,"B",QACHD,QACHDIEN)) Q:QACHDIEN'>0  D SET | 
|---|
| 30 | .... Q | 
|---|
| 31 | ... Q | 
|---|
| 32 | .. Q | 
|---|
| 33 | . Q | 
|---|
| 34 | PRINT ; | 
|---|
| 35 | ;This is the header information on each page and the data by service. | 
|---|
| 36 | K QACUNDL S $P(QACUNDL,"-",81)="",QACQUIT=0,QACPG=1 | 
|---|
| 37 | I $O(^TMP($J,"QACSRPT0",""))="" S QACSERV="" D HEAD W !!,"No data found for the date range selected!" Q | 
|---|
| 38 | K QACSERV,QACHDIEN,QACHD,QACCIEN,QACICODE,QACSTOT,QACCTOT,QACHDTOT | 
|---|
| 39 | S QACSERV="" F  S QACSERV=$O(^TMP($J,"QACSRPT0",QACSERV)) Q:(QACSERV="")!(QACQUIT)  D | 
|---|
| 40 | . S QACSTOT=$P($G(^TMP($J,"QACSRPT0",QACSERV)),U,1) Q:QACSTOT="" | 
|---|
| 41 | . D HEAD | 
|---|
| 42 | . W !!?15,"Total Issues for ",QACSERV," = ",QACSTOT | 
|---|
| 43 | . S QACHD="" F  S QACHD=$O(^TMP($J,"QACSRPT1",QACSERV,QACHD)) Q:(QACHD="")!(QACQUIT)  D | 
|---|
| 44 | .. S QACHDIEN=$P(QACHD,"^",2) | 
|---|
| 45 | .. S QACHDNM=$$EN6^QACUTIL(QACHDIEN) | 
|---|
| 46 | .. S QACHDTOT=$P($G(^TMP($J,"QACSRPT1",QACSERV,QACHD)),U,1) Q:(QACHDTOT="")!(QACQUIT) | 
|---|
| 47 | .. W !!?5,QACHDNM,?75,QACHDTOT | 
|---|
| 48 | .. S QACICODE="" F  S QACICODE=$O(^TMP($J,"QACSRPT2",QACSERV,QACHD,QACICODE)) Q:(QACICODE="")!(QACQUIT)  D | 
|---|
| 49 | ... S QACCIEN=$P(QACICODE,"^",2) | 
|---|
| 50 | ... S QACCNM=$$EN5^QACUTIL(QACCIEN) | 
|---|
| 51 | ... S QACCTOT=$P($G(^TMP($J,"QACSRPT2",QACSERV,QACHD,QACICODE)),U,1) Q:(QACCTOT="")!(QACQUIT) | 
|---|
| 52 | ... W !,QACCNM,?75,QACCTOT | 
|---|
| 53 | ... I $Y>(IOSL-5) D:$E(IOST)="C" PAUSE Q:QACQUIT  D HEAD | 
|---|
| 54 | ... Q | 
|---|
| 55 | .. Q | 
|---|
| 56 | . W ! D PAUSE | 
|---|
| 57 | . Q | 
|---|
| 58 | EXIT ; | 
|---|
| 59 | W ! D ^%ZISC S:$D(ZTQUEUED) ZTREQ="@" | 
|---|
| 60 | K IOP,%ZIS,ZTSAVE,ZTDESC,ZTRTN,QACDT,QACD0,QACCN,QACCIEN,QACICODE,ZTSK | 
|---|
| 61 | K QACSIEN,QACSERV,QACHEAD,QACHDIEN,QACHDNM,QACINAME,QACQUIT,Y,%DT,QACPG | 
|---|
| 62 | K QACDIS,QACHDTOT,QACTOT,QACHDREC,QACREC,DIR,POP,QACCNM,QACSN,QACUNDL | 
|---|
| 63 | K ^TMP("J","QACSRPT0"),^TMP($J,"QACSRPT1"),^TMP($J,"QACSRPT2") | 
|---|
| 64 | K DIRUT,DIROUT,QACCTOT,QACHD,QACSTOT | 
|---|
| 65 | D K^QAQDATE | 
|---|
| 66 | Q | 
|---|
| 67 | HEAD ; | 
|---|
| 68 | W:($E(IOST)="C")!(QACPG>1) @IOF | 
|---|
| 69 | W !,"Issue Report for ",QACSERV S Y=DT D DD^%DT W ?60,"Date: ",Y,! | 
|---|
| 70 | W QAQ2HED,?60,"Page: ",QACPG | 
|---|
| 71 | W !,QACUNDL,! S QACPG=QACPG+1 | 
|---|
| 72 | Q | 
|---|
| 73 | PAUSE ; | 
|---|
| 74 | I $E(IOST)="C" K DIR S DIR(0)="E" D ^DIR S QACQUIT=$S(Y'>0:1,1:0) | 
|---|
| 75 | Q | 
|---|
| 76 | SET ;Counts the records. | 
|---|
| 77 | S ^TMP($J,"QACSRPT0",QACSERV)=$G(^TMP($J,"QACSRPT0",QACSERV))+1 | 
|---|
| 78 | S ^TMP($J,"QACSRPT1",QACSERV,QACHD_"^"_QACHDIEN)=$G(^TMP($J,"QACSRPT1",QACSERV,QACHD_"^"_QACHDIEN))+1 | 
|---|
| 79 | S ^TMP($J,"QACSRPT2",QACSERV,QACHD_"^"_QACHDIEN,QACICODE_"^"_QACCIEN)=$G(^TMP($J,"QACSRPT2",QACSERV,QACHD_"^"_QACHDIEN,QACICODE_"^"_QACCIEN))+1 | 
|---|
| 80 | Q | 
|---|