Changeset 623 for WorldVistAEHR/trunk/r/SCHEDULING-SD-SC/SCRPEC.m
- Timestamp:
- Dec 4, 2009, 12:11:15 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
WorldVistAEHR/trunk/r/SCHEDULING-SD-SC/SCRPEC.m
r613 r623 1 SCRPEC ;ALB/CMM - Detail List of Pts & Enroll Clinics ; 29 Jun 99 04:11PM 2 ;;5.3;Scheduling;**41,140,174,177,431,526,520**;AUG 13, 1993;Build 26 3 ; 4 ;Detailed Listing of Patients and Their Enrolled Clinics Report 5 ; 6 PROMPTS ; 7 ;Prompt for Institution, Team, Clinic, Assigned or Unassigned to Primary 8 ;Care, and Print device 9 ; 10 N VAUTD,VAUTT,VAUTC,VAUTA,QTIME,PRNT 11 K VAUTD,VAUTT,VAUTC,VAUTA,VAUTCA,SCUP 12 S QTIME="" 13 W ! D INST^SCRPU1 I Y=-1 G ERR 14 W ! K Y D PRMTT^SCRPU1 I '$D(VAUTT) G ERR 15 ;S VAUTCA="" ;allows for selection of any clinic in one of the selected divisions 16 W ! K Y D CLINIC^SCRPU1 I '$D(VAUTC) G ERR 17 W ! K Y D ASSUN^SCRPU2 I '$D(VAUTA) G ERR 18 W !!,"This report requires 132 column output!" 19 D QUE(.VAUTD,.VAUTT,.VAUTC,.VAUTA) Q 20 ; 21 QUE(INST,TEAM,CLINIC,ASSUN) ;queue report 22 ;Input Parameters: 23 ;INST - institutions selected (variable and array) 24 ;TEAM - teams selected (variable and array) 25 ;CLINIC - clinics selected (variable and array) 26 ;ASSUN - Assigned or Unassigned to PC 27 N ZTSAVE,II 28 F II="INST","TEAM","CLINIC","ASSUN","INST(","TEAM(","CLINIC(" S ZTSAVE(II)="" 29 W ! D EN^XUTMDEVQ("QENTRY^SCRPEC","Detailed Patient Enrollments",.ZTSAVE) 30 Q 31 ; 32 ENTRY2(INST,TEAM,CLINIC,ASSUN,IOP,ZTDTH) ; 33 ;Second entry point for GUI to use 34 ;Input Parameters: 35 ;INST - institutions selected (variable and array) 36 ;TEAM - teams selected (variable and array) 37 ;CLINIC - clinics selected (variable and array) 38 ;ASSUN - Assigned or Unassigned to PC 39 ;IOP - print device 40 ;ZTDTH - queue time (optional) 41 ; 42 ;validate parameters 43 I '$D(INST)!'$D(TEAM)!'$D(CLINIC)!'$D(ASSUN)!'$D(IOP)!(IOP="") Q 44 ; 45 N NUMBER 46 S IOST=$P(IOP,"^",2),IOP=$P(IOP,"^") 47 I IOP?1"Q;".E S IOP=$P(IOP,"Q;",2) 48 I IOST?1"C-".E D QENTRY G RET 49 I ZTDTH="" S ZTDTH=$H 50 S ZTRTN="QENTRY^SCRPEC" 51 S ZTDESC="Detailed Patient List & Enrolled Clinics",ZTIO=IOP 52 N II 53 F II="INST","TEAM","CLINIC","ASSUN","INST(","TEAM(","CLINIC(","IOP" S ZTSAVE(II)="" 54 D ^%ZTLOAD 55 RET S NUMBER=0 56 I $D(ZTSK) S NUMBER=ZTSK 57 D EXIT1 58 Q NUMBER 59 ; 60 QENTRY ; 61 ;driver entry point 62 S VAUTTN="" 63 S TITL="Detailed Patient Assignments - "_$S(ASSUN=1:"Assigned PC",1:"Not Assigned PC") 64 S STORE="^TMP("_$J_",""SCRPEC"")" 65 K @STORE 66 S @STORE=0 67 D FIND^SCRPEC3 68 I $O(@STORE@(0))="" S NODATA=$$NODATA^SCRPU3(TITL) 69 I '$D(NODATA) D HEADER^SCRPEC2,PRINTIT^SCRPEC3(STORE,TITL) 70 D EXIT2 71 Q 72 ; 73 ERR ; 74 EXIT1 ; 75 K ZTSAVE,ZTSK,ZTIO,ZTDTH,ZTRTN,ZTDESC,VAUTCA,SCUP 76 Q 77 EXIT2 ; 78 K @STORE 79 K STORE,VAUTTN,PAGE,TITL,IOP,TITL,NODATA,CLINIC,ASSUN,INST,TEAM,STOP 80 Q 81 ; 82 PDATA(DFN,CLNEN,CNAME,FLAG) ; 83 ;Collect and format data for report 84 ; 85 N NODE,NAME,PID,PELIG,MT,PSTAT,STATD,DATA,LAST,NEXT 86 S DATA="" 87 S NODE=$G(^DPT(DFN,0)) 88 S NAME=$P(NODE,"^") ;patient name 89 S PID=$P($G(^DPT(DFN,.36)),"^",3),PID=$TR(PID,"-","") ;PID without '-'s 90 S MT=$$LST^DGMTU(DFN),MT=$P(MT,"^",4) ;means test status SD*5.3*431 91 S PELIG=$$ELIG^SCRPU3(DFN) ;primary eligibility 92 S PSTAT="N/A" 93 S STATD="" 94 S LAST=$$GETLAST^SCRPU3(DFN,.CLNEN) ;last Clinic appointment 95 S NEXT=$$GETNEXT^SCRPU3(DFN,.CLNEN) ;next clinic appointment 96 ;I '$D(FLAG) S DATA=$$FORMAT^SCRPEC2(PTIEN,INS,TIEN,PDATA,CNAME,CIEN) 97 I '$D(FLAG) S DATA=$$FORMAT^SCRPEC2(NAME,PID,MT,PELIG,PSTAT,STATD,LAST,NEXT,CNAME),DATA=$E(NAME,1,12)_"^"_DATA 98 I $D(FLAG) S DATA=$E(NAME,1,12)_"^"_PID_"^"_MT_"^"_PELIG_"^"_PSTAT_"^"_STATD_"^"_LAST_"^"_NEXT 99 Q DATA 100 ; 1 SCRPEC ;ALB/CMM - Detail List of Pts & Enroll Clinics ; 29 Jun 99 04:11PM 2 ;;5.3;Scheduling;**41,140,174,177,431**;AUG 13, 1993 3 ; 4 ;Detailed Listing of Patients and Their Enrolled Clinics Report 5 ; 6 PROMPTS ; 7 ;Prompt for Institution, Team, Clinic, Assigned or Unassigned to Primary 8 ;Care, and Print device 9 ; 10 N VAUTD,VAUTT,VAUTC,VAUTA,QTIME,PRNT 11 K VAUTD,VAUTT,VAUTC,VAUTA,VAUTCA,SCUP 12 S QTIME="" 13 W ! D INST^SCRPU1 I Y=-1 G ERR 14 W ! K Y D PRMTT^SCRPU1 I '$D(VAUTT) G ERR 15 ;S VAUTCA="" ;allows for selection of any clinic in one of the selected divisions 16 W ! K Y D CLINIC^SCRPU1 I '$D(VAUTC) G ERR 17 W ! K Y D ASSUN^SCRPU2 I '$D(VAUTA) G ERR 18 W !!,"This report requires 132 column output!" 19 D QUE(.VAUTD,.VAUTT,.VAUTC,.VAUTA) Q 20 ; 21 QUE(INST,TEAM,CLINIC,ASSUN) ;queue report 22 ;Input Parameters: 23 ;INST - institutions selected (variable and array) 24 ;TEAM - teams selected (variable and array) 25 ;CLINIC - clinics selected (variable and array) 26 ;ASSUN - Assigned or Unassigned to PC 27 N ZTSAVE,II 28 F II="INST","TEAM","CLINIC","ASSUN","INST(","TEAM(","CLINIC(" S ZTSAVE(II)="" 29 W ! D EN^XUTMDEVQ("QENTRY^SCRPEC","Detailed Patient Enrollments",.ZTSAVE) 30 Q 31 ; 32 ENTRY2(INST,TEAM,CLINIC,ASSUN,IOP,ZTDTH) ; 33 ;Second entry point for GUI to use 34 ;Input Parameters: 35 ;INST - institutions selected (variable and array) 36 ;TEAM - teams selected (variable and array) 37 ;CLINIC - clinics selected (variable and array) 38 ;ASSUN - Assigned or Unassigned to PC 39 ;IOP - print device 40 ;ZTDTH - queue time (optional) 41 ; 42 ;validate parameters 43 I '$D(INST)!'$D(TEAM)!'$D(CLINIC)!'$D(ASSUN)!'$D(IOP)!(IOP="") Q 44 ; 45 N NUMBER 46 S IOST=$P(IOP,"^",2),IOP=$P(IOP,"^") 47 I IOP?1"Q;".E S IOP=$P(IOP,"Q;",2) 48 I IOST?1"C-".E D QENTRY G RET 49 I ZTDTH="" S ZTDTH=$H 50 S ZTRTN="QENTRY^SCRPEC" 51 S ZTDESC="Detailed Patient List & Enrolled Clinics",ZTIO=IOP 52 N II 53 F II="INST","TEAM","CLINIC","ASSUN","INST(","TEAM(","CLINIC(","IOP" S ZTSAVE(II)="" 54 D ^%ZTLOAD 55 RET S NUMBER=0 56 I $D(ZTSK) S NUMBER=ZTSK 57 D EXIT1 58 Q NUMBER 59 ; 60 QENTRY ; 61 ;driver entry point 62 S VAUTTN="" 63 S TITL="Detailed Patient Assignments - "_$S(ASSUN=1:"Assigned PC",1:"Not Assigned PC") 64 S STORE="^TMP("_$J_",""SCRPEC"")" 65 K @STORE 66 S @STORE=0 67 D FIND^SCRPEC3 68 I $O(@STORE@(0))="" S NODATA=$$NODATA^SCRPU3(TITL) 69 I '$D(NODATA) D HEADER^SCRPEC2,PRINTIT^SCRPEC3(STORE,TITL) 70 D EXIT2 71 Q 72 ; 73 ERR ; 74 EXIT1 ; 75 K ZTSAVE,ZTSK,ZTIO,ZTDTH,ZTRTN,ZTDESC,VAUTCA,SCUP 76 Q 77 EXIT2 ; 78 K @STORE 79 K STORE,VAUTTN,PAGE,TITL,IOP,TITL,NODATA,CLINIC,ASSUN,INST,TEAM,STOP 80 Q 81 ; 82 PDATA(DFN,CLNEN,FLAG) ; 83 ;Collect and format data for report 84 ; 85 N NODE,NAME,PID,PELIG,MT,PSTAT,STATD,DATA,LAST,NEXT,CEN,CNAME 86 S DATA="" 87 S NODE=$G(^DPT(DFN,0)) 88 S NAME=$P(NODE,"^") ;patient name 89 S PID=$P($G(^DPT(DFN,.36)),"^",3),PID=$TR(PID,"-","") ;PID without '-'s 90 S MT=$$LST^DGMTU(DFN),MT=$P(MT,"^",4) ;means test status SD*5.3*431 91 S PELIG=$$ELIG^SCRPU3(DFN) ;primary eligibility 92 ; 93 S CNAME=$P($G(^SC(CLNEN,0)),"^") 94 S CEN=+$O(^DPT(DFN,"DE","B",CLNEN,"")) 95 S NODE=$G(^DPT(DFN,"DE",CEN,1,1,0)) 96 S PSTAT=$P(NODE,"^",2) S PSTAT=PSTAT_$S(PSTAT="A":"C",PSTAT="O":"PT",1:"") ;opt or ac status 97 I $P(NODE,"^")="" S STATD="" 98 I $P(NODE,"^")'="" S STATD=$TR($$FMTE^XLFDT($P(NODE,"^"),"5DF")," ","0") ;enrollment date 99 S LAST=$$GETLAST^SCRPU3(DFN,CLNEN) ;last clinic appointment 100 S NEXT=$$GETNEXT^SCRPU3(DFN,CLNEN) ;next clinic appointment 101 I '$D(FLAG) S DATA=$$FORMAT^SCRPEC2(NAME,PID,MT,PELIG,PSTAT,STATD,LAST,NEXT,CNAME),DATA=$E(NAME,1,20)_"^"_DATA 102 I $D(FLAG) S DATA=$E(NAME,1,20)_"^"_PID_"^"_MT_"^"_PELIG_"^"_PSTAT_"^"_STATD_"^"_LAST_"^"_NEXT 103 Q DATA 104 ;
Note:
See TracChangeset
for help on using the changeset viewer.