- DGENRPC2 ;ALB/CJM -Enrollees by Status, Priority, Preferred Facility Report - Continued; May 12, 1999
- ;;5.3;Registration;**147,232,306,1015**;Aug 13,1993;Build 21
- ;
- PRINT ;
- N STATS,CRT,QUIT,PAGE,SECTION
- K ^TMP($J)
- S QUIT=0
- S PAGE=0
- S CRT=$S($E(IOST,1,2)="C-":1,1:0)
- ;
- D GETPAT
- U IO
- I CRT,PAGE=0 W @IOF
- S PAGE=1
- S SECTION="SUMMARY"
- D HEADER
- D SUMMARY
- I DGENRP("LIST") D
- .S SECTION="PATIENTS"
- .D HEADER
- .D PATIENTS
- I CRT,'QUIT D PAUSE
- I $D(ZTQUEUED) S ZTREQ="@"
- D ^%ZISC
- K ^TMP($J)
- Q
- LINE(LINE) ;
- ;Description: prints a line. First prints header if at end of page.
- ;
- I CRT,($Y>(IOSL-4)) D
- .D PAUSE
- .Q:QUIT
- .W @IOF
- .D HEADER
- .W LINE
- ;
- E I ('CRT),($Y>(IOSL-2)) D
- .W @IOF
- .D HEADER
- .W LINE
- ;
- E W !,LINE
- Q
- ;
- GETPAT ;
- ;Description: Gets patients to include in the report
- ;for that reason
- ;
- N DFN,STATUS
- S STATUS=0
- F S STATUS=$O(^DPT("AENRC",STATUS)) Q:'STATUS D
- .S DFN=0
- .F S DFN=$O(^DPT("AENRC",STATUS,DFN)) Q:'DFN D
- ..N DGINST,DGPFH,PREFAC,DGENRIEN,DGENR,EFFDATE,FACNAME,PATNAME,CATEGORY,PRISUB
- ..S FACNAME=" "
- ..S DGENRIEN=$$FINDCUR^DGENA(DFN)
- ..S CATEGORY=$$CATEGORY^DGENA4(DFN,STATUS)
- ..Q:'$$GET^DGENA(DGENRIEN,.DGENR)
- ..Q:DGENR("STATUS")'=STATUS
- ..S PATNAME=$$NAME^DGENPTA(DFN)
- ..S DGENR("SUBGRP")=$$EXT^DGENU("SUBGRP",DGENR("SUBGRP"))
- ..Q:(PATNAME="")
- ..;
- ..S PREFAC=$$PREF^DGENPTA(DFN)
- ..I PREFAC S DGPFH("PREFAC")=PREFAC,DGPFH("EFFDATE")=""
- ..I PREFAC,'$$GETINST^DGENU($G(DGPFH("PREFAC")),.DGINST) S PREFAC=""
- ..I (DGENRP("FACILITY","ALL")!$D(DGENRP("FACILITY",+PREFAC))) D
- ...S PRISUB=+DGENR("PRIORITY")_DGENR("SUBGRP")
- ...S:PREFAC FACNAME=$$LJ($G(DGINST("STANUM")),10)_$$LJ($G(DGINST("NAME")),45)
- ...S ^TMP($J,FACNAME,CATEGORY,DGENR("STATUS"))=$G(^TMP($J,FACNAME,CATEGORY,DGENR("STATUS")))+1
- ...S ^TMP($J,FACNAME,CATEGORY,DGENR("STATUS"),PRISUB)=$G(^TMP($J,FACNAME,CATEGORY,DGENR("STATUS"),PRISUB))+1
- ...I DGENRP("LIST"),DGENRP("STATUS","ALL")!$D(DGENRP("STATUS",STATUS)),DGENRP("PRIORITY","ALL")!$D(DGENRP("PRIORITY",+DGENR("PRIORITY"))) D
- ....S ^TMP($J,FACNAME,"PATIENT",CATEGORY,DGENR("STATUS"),PRISUB,$E(PATNAME,1,45),+DGENR("DATE"),+DGENR("DFN"))=DGENRIEN_"^"_$G(DGINST("STANUM"))_"^"_$G(DGPFH("EFFDATE"))
- Q
- ;
- ;Description: Prints the report header.
- ;
- N LINE
- I $Y>1 W @IOF
- W !,"Enrollments by Status, Priority, and Preferred Facility"
- W ?100,"Page ",PAGE
- S PAGE=PAGE+1
- ;
- W !
- W $S(SECTION="SUMMARY":" <<< SUMMARY STATISTICS >>>",1:" <<< PATIENT LISTING >>>")
- W ?100,"Run Date: "_$$FMTE^XLFDT(DT)
- W !
- I SECTION="PATIENTS",DGENRP("LIST") D
- .W !,"Selection Criteria for Patient Listing: "
- .W !?5,"Enrollment Statuses: "
- .I DGENRP("STATUS","ALL") D
- ..W "ALL"
- .E D
- ..N STATUS
- ..S STATUS=""
- ..F S STATUS=$O(DGENRP("STATUS",STATUS)) Q:'STATUS W $$EXT^DGENU("STATUS",STATUS)_","
- .;
- .W !?5,"Enrollment Priorities: "
- .I DGENRP("PRIORITY","ALL") D
- ..W "ALL"
- .E D
- ..N PRIORITY
- ..S PRIORITY=""
- ..F S PRIORITY=$O(DGENRP("PRIORITY",PRIORITY)) Q:'PRIORITY W PRIORITY_", "
- W:(SECTION="PATIENTS") !,"Name",?39,"PatientID",?54,"DOB",?67,"Status",?86,"Priority",?101,"EnrollDate",?114,"EndDate",?129
- S $P(LINE,"-",132)="-"
- W !,LINE,!
- Q
- ;
- PAUSE ;
- ;Description: Screen pause. Sets QUIT=1 if user decides to quit.
- ;
- N DIR,X,Y
- F Q:$Y>(IOSL-3) W !
- S DIR(0)="E"
- D ^DIR
- I ('(+Y))!$D(DIRUT) S QUIT=1
- Q
- ;
- SUMMARY ;
- ;Description: Prints the summary statistics
- ;
- N PREFAC,LINE,PRIORITY,STATUS,TOTAL,COUNT,GRNDTOTL
- S PREFAC=""
- S GRNDTOTL=0
- F S PREFAC=$O(^TMP($J,PREFAC)) Q:PREFAC="" D Q:QUIT
- .D LINE(" ") Q:QUIT
- .D LINE($$LJ(" ",40)_"PREFERRED FACILITY: "_$S(PREFAC=" ":"none",1:PREFAC)_" "_$G(^TMP($J,PREFAC))) Q:QUIT
- .D LINE($$LJ(" ",55)_"Enr. Category") Q:QUIT
- .S TOTAL=0
- .S CATEGORY=""
- .F S CATEGORY=$O(^TMP($J,PREFAC,CATEGORY)) Q:CATEGORY="" D Q:QUIT
- ..D LINE($$LJ(" ",58)_$$EXTCAT^DGENA4(CATEGORY))
- ..S STATUS=""
- ..F S STATUS=$O(^TMP($J,PREFAC,CATEGORY,STATUS)) Q:'STATUS D Q:QUIT
- ...S COUNT=$G(^TMP($J,PREFAC,CATEGORY,STATUS))
- ...S TOTAL=TOTAL+COUNT
- ...D LINE(" "_$$LJ($$STATUS(STATUS),18)_" "_$J(COUNT,7))
- ...Q:QUIT
- ...S PRIORITY=""
- ...F S PRIORITY=$O(^TMP($J,PREFAC,CATEGORY,STATUS,PRIORITY)) Q:(PRIORITY="") D Q:QUIT
- ....S COUNT=$G(^TMP($J,PREFAC,CATEGORY,STATUS,PRIORITY))
- ....I $L(PRIORITY)=2 D LINE(" Priority "_+PRIORITY_$E(PRIORITY,2)_" "_$J(COUNT,7)) Q
- ....D LINE(" "_$S(PRIORITY:"Priority "_PRIORITY_" ",1:"No Priority ")_$J(COUNT,7))
- ...Q:QUIT
- ...D LINE(" ")
- ..Q:QUIT
- .Q:QUIT
- .S GRNDTOTL=GRNDTOTL+TOTAL
- .D:(PREFAC=" ") LINE(" TOTAL (NO FACILITY) "_$J(TOTAL,8))
- .D:(PREFAC'=" ") LINE(" FACILITY TOTAL "_$J(TOTAL,8))
- .Q:QUIT
- Q:QUIT
- W !!
- D LINE(" TOTAL FOR ALL SELECTED FACILITIES: "_$J(GRNDTOTL,8))
- Q:QUIT
- Q
- ;
- PATIENTS ;
- ;Description: Prints list of patients
- ;
- N PREFAC,DGENRIEN,DGENR,DGPAT,LINE,NODE,PATNAME,STATUS,PRIORITY,ENRDATE,DFN,CATEGORY,I
- ;
- S PREFAC=""
- ;
- F S PREFAC=$O(^TMP($J,PREFAC)) Q:PREFAC="" D Q:QUIT
- .D LINE(" ") Q:QUIT
- .D LINE($$LJ(" ",40)_"PREFERRED FACILITY: "_$S(PREFAC=" ":"none",1:PREFAC)_" "_$G(^TMP($J,PREFAC))) Q:QUIT
- .S CATEGORY=""
- .F I=1:1 S CATEGORY=$O(^TMP($J,PREFAC,"PATIENT",CATEGORY)) Q:CATEGORY="" D Q:QUIT
- ..D:I>1 LINE(" ") Q:QUIT
- ..D LINE($$LJ(" ",40)_"ENROLLMENT CATEGORY: "_$$EXTCAT^DGENA4(CATEGORY))
- ..D LINE(" ") Q:QUIT
- ..S STATUS=""
- ..F S STATUS=$O(^TMP($J,PREFAC,"PATIENT",CATEGORY,STATUS)) Q:'STATUS D Q:QUIT
- ...S PRIORITY=""
- ...F S PRIORITY=$O(^TMP($J,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY)) Q:(PRIORITY="") D Q:QUIT
- ....S PATNAME=0
- ....F S PATNAME=$O(^TMP($J,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME)) Q:(PATNAME="") D Q:QUIT
- .....S ENRDATE=""
- .....F S ENRDATE=$O(^TMP($J,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME,ENRDATE)) Q:ENRDATE="" D Q:QUIT
- ......S DFN=0
- ......F S DFN=$O(^TMP($J,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME,ENRDATE,DFN)) Q:'DFN D Q:QUIT
- .......;
- .......S NODE=$G(^TMP($J,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME,ENRDATE,DFN))
- .......S DGENRIEN=$P(NODE,"^")
- .......Q:'DGENRIEN
- .......Q:'$$GET^DGENA(DGENRIEN,.DGENR)
- .......Q:'$$GET^DGENPTA(DGENR("DFN"),.DGPAT)
- .......S LINE=$$LJ(DGPAT("NAME"),37)_" "_$$LJ(DGPAT("PID"),15)_" "
- .......S LINE=LINE_$$LJ($$DATE(DGPAT("DOB")),12)_" "
- .......S LINE=LINE_$$LJ($$EXT^DGENU("STATUS",DGENR("STATUS")),17)_" "
- .......S LINE=LINE_$$LJ(" "_DGENR("PRIORITY")_$S(DGENR("SUBGRP"):$$EXT^DGENU("SUBGRP",DGENR("SUBGRP")),1:""),15)_" "
- .......S LINE=LINE_$$LJ($$DATE(DGENR("DATE")),12)_" "
- .......S LINE=LINE_$$LJ($$DATE(DGENR("END")),12)_" "
- .......D LINE(LINE)
- .......Q:QUIT
- .Q:QUIT
- Q
- ;
- STATUS(STATUS) ;
- ;Description: Returns status name.
- ;
- Q:'STATUS "No Status"
- Q $$LOWER^VALM1($$EXT^DGENU("STATUS",STATUS))
- ;
- DATE(DATE) ;
- Q $$FMTE^XLFDT(DATE,"1")
- ;
- LJ(STRING,LENGTH) ;
- Q $$LJ^XLFSTR($E(STRING,1,LENGTH),LENGTH)
- DGENRPC2 ;ALB/CJM -Enrollees by Status, Priority, Preferred Facility Report - Continued; May 12, 1999
- +1 ;;5.3;Registration;**147,232,306,1015**;Aug 13,1993;Build 21
- +2 ;
- PRINT ;
- +1 NEW STATS,CRT,QUIT,PAGE,SECTION
- +2 KILL ^TMP($JOB)
- +3 SET QUIT=0
- +4 SET PAGE=0
- +5 SET CRT=$SELECT($EXTRACT(IOST,1,2)="C-":1,1:0)
- +6 ;
- +7 DO GETPAT
- +8 USE IO
- +9 IF CRT
- IF PAGE=0
- WRITE @IOF
- +10 SET PAGE=1
- +11 SET SECTION="SUMMARY"
- +12 DO HEADER
- +13 DO SUMMARY
- +14 IF DGENRP("LIST")
- Begin DoDot:1
- +15 SET SECTION="PATIENTS"
- +16 DO HEADER
- +17 DO PATIENTS
- End DoDot:1
- +18 IF CRT
- IF 'QUIT
- DO PAUSE
- +19 IF $DATA(ZTQUEUED)
- SET ZTREQ="@"
- +20 DO ^%ZISC
- +21 KILL ^TMP($JOB)
- +22 QUIT
- LINE(LINE) ;
- +1 ;Description: prints a line. First prints header if at end of page.
- +2 ;
- +3 IF CRT
- IF ($Y>(IOSL-4))
- Begin DoDot:1
- +4 DO PAUSE
- +5 IF QUIT
- QUIT
- +6 WRITE @IOF
- +7 DO HEADER
- +8 WRITE LINE
- End DoDot:1
- +9 ;
- +10 IF '$TEST
- IF ('CRT)
- IF ($Y>(IOSL-2))
- Begin DoDot:1
- +11 WRITE @IOF
- +12 DO HEADER
- +13 WRITE LINE
- End DoDot:1
- +14 ;
- +15 IF '$TEST
- WRITE !,LINE
- +16 QUIT
- +17 ;
- GETPAT ;
- +1 ;Description: Gets patients to include in the report
- +2 ;for that reason
- +3 ;
- +4 NEW DFN,STATUS
- +5 SET STATUS=0
- +6 FOR
- SET STATUS=$ORDER(^DPT("AENRC",STATUS))
- IF 'STATUS
- QUIT
- Begin DoDot:1
- +7 SET DFN=0
- +8 FOR
- SET DFN=$ORDER(^DPT("AENRC",STATUS,DFN))
- IF 'DFN
- QUIT
- Begin DoDot:2
- +9 NEW DGINST,DGPFH,PREFAC,DGENRIEN,DGENR,EFFDATE,FACNAME,PATNAME,CATEGORY,PRISUB
- +10 SET FACNAME=" "
- +11 SET DGENRIEN=$$FINDCUR^DGENA(DFN)
- +12 SET CATEGORY=$$CATEGORY^DGENA4(DFN,STATUS)
- +13 IF '$$GET^DGENA(DGENRIEN,.DGENR)
- QUIT
- +14 IF DGENR("STATUS")'=STATUS
- QUIT
- +15 SET PATNAME=$$NAME^DGENPTA(DFN)
- +16 SET DGENR("SUBGRP")=$$EXT^DGENU("SUBGRP",DGENR("SUBGRP"))
- +17 IF (PATNAME="")
- QUIT
- +18 ;
- +19 SET PREFAC=$$PREF^DGENPTA(DFN)
- +20 IF PREFAC
- SET DGPFH("PREFAC")=PREFAC
- SET DGPFH("EFFDATE")=""
- +21 IF PREFAC
- IF '$$GETINST^DGENU($GET(DGPFH("PREFAC")),.DGINST)
- SET PREFAC=""
- +22 IF (DGENRP("FACILITY","ALL")!$DATA(DGENRP("FACILITY",+PREFAC)))
- Begin DoDot:3
- +23 SET PRISUB=+DGENR("PRIORITY")_DGENR("SUBGRP")
- +24 IF PREFAC
- SET FACNAME=$$LJ($GET(DGINST("STANUM")),10)_$$LJ($GET(DGINST("NAME")),45)
- +25 SET ^TMP($JOB,FACNAME,CATEGORY,DGENR("STATUS"))=$GET(^TMP($JOB,FACNAME,CATEGORY,DGENR("STATUS")))+1
- +26 SET ^TMP($JOB,FACNAME,CATEGORY,DGENR("STATUS"),PRISUB)=$GET(^TMP($JOB,FACNAME,CATEGORY,DGENR("STATUS"),PRISUB))+1
- +27 IF DGENRP("LIST")
- IF DGENRP("STATUS","ALL")!$DATA(DGENRP("STATUS",STATUS))
- IF DGENRP("PRIORITY","ALL")!$DATA(DGENRP("PRIORITY",+DGENR("PRIORITY")))
- Begin DoDot:4
- +28 SET ^TMP($JOB,FACNAME,"PATIENT",CATEGORY,DGENR("STATUS"),PRISUB,$EXTRACT(PATNAME,1,45),+DGENR("DATE"),+DGENR("DFN"))=DGENRIEN_"^"_$GET(DGINST("STANUM"))_"^"_$GET(DGPFH("EFFDATE"))
- End DoDot:4
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +29 QUIT
- +30 ;
- +1 ;Description: Prints the report header.
- +2 ;
- +3 NEW LINE
- +4 IF $Y>1
- WRITE @IOF
- +5 WRITE !,"Enrollments by Status, Priority, and Preferred Facility"
- +6 WRITE ?100,"Page ",PAGE
- +7 SET PAGE=PAGE+1
- +8 ;
- +9 WRITE !
- +10 WRITE $SELECT(SECTION="SUMMARY":" <<< SUMMARY STATISTICS >>>",1:" <<< PATIENT LISTING >>>")
- +11 WRITE ?100,"Run Date: "_$$FMTE^XLFDT(DT)
- +12 WRITE !
- +13 IF SECTION="PATIENTS"
- IF DGENRP("LIST")
- Begin DoDot:1
- +14 WRITE !,"Selection Criteria for Patient Listing: "
- +15 WRITE !?5,"Enrollment Statuses: "
- +16 IF DGENRP("STATUS","ALL")
- Begin DoDot:2
- +17 WRITE "ALL"
- End DoDot:2
- +18 IF '$TEST
- Begin DoDot:2
- +19 NEW STATUS
- +20 SET STATUS=""
- +21 FOR
- SET STATUS=$ORDER(DGENRP("STATUS",STATUS))
- IF 'STATUS
- QUIT
- WRITE $$EXT^DGENU("STATUS",STATUS)_","
- End DoDot:2
- +22 ;
- +23 WRITE !?5,"Enrollment Priorities: "
- +24 IF DGENRP("PRIORITY","ALL")
- Begin DoDot:2
- +25 WRITE "ALL"
- End DoDot:2
- +26 IF '$TEST
- Begin DoDot:2
- +27 NEW PRIORITY
- +28 SET PRIORITY=""
- +29 FOR
- SET PRIORITY=$ORDER(DGENRP("PRIORITY",PRIORITY))
- IF 'PRIORITY
- QUIT
- WRITE PRIORITY_", "
- End DoDot:2
- End DoDot:1
- +30 IF (SECTION="PATIENTS")
- WRITE !,"Name",?39,"PatientID",?54,"DOB",?67,"Status",?86,"Priority",?101,"EnrollDate",?114,"EndDate",?129
- +31 SET $PIECE(LINE,"-",132)="-"
- +32 WRITE !,LINE,!
- +33 QUIT
- +34 ;
- PAUSE ;
- +1 ;Description: Screen pause. Sets QUIT=1 if user decides to quit.
- +2 ;
- +3 NEW DIR,X,Y
- +4 FOR
- IF $Y>(IOSL-3)
- QUIT
- WRITE !
- +5 SET DIR(0)="E"
- +6 DO ^DIR
- +7 IF ('(+Y))!$DATA(DIRUT)
- SET QUIT=1
- +8 QUIT
- +9 ;
- SUMMARY ;
- +1 ;Description: Prints the summary statistics
- +2 ;
- +3 NEW PREFAC,LINE,PRIORITY,STATUS,TOTAL,COUNT,GRNDTOTL
- +4 SET PREFAC=""
- +5 SET GRNDTOTL=0
- +6 FOR
- SET PREFAC=$ORDER(^TMP($JOB,PREFAC))
- IF PREFAC=""
- QUIT
- Begin DoDot:1
- +7 DO LINE(" ")
- IF QUIT
- QUIT
- +8 DO LINE($$LJ(" ",40)_"PREFERRED FACILITY: "_$SELECT(PREFAC=" ":"none",1:PREFAC)_" "_$GET(^TMP($JOB,PREFAC)))
- IF QUIT
- QUIT
- +9 DO LINE($$LJ(" ",55)_"Enr. Category")
- IF QUIT
- QUIT
- +10 SET TOTAL=0
- +11 SET CATEGORY=""
- +12 FOR
- SET CATEGORY=$ORDER(^TMP($JOB,PREFAC,CATEGORY))
- IF CATEGORY=""
- QUIT
- Begin DoDot:2
- +13 DO LINE($$LJ(" ",58)_$$EXTCAT^DGENA4(CATEGORY))
- +14 SET STATUS=""
- +15 FOR
- SET STATUS=$ORDER(^TMP($JOB,PREFAC,CATEGORY,STATUS))
- IF 'STATUS
- QUIT
- Begin DoDot:3
- +16 SET COUNT=$GET(^TMP($JOB,PREFAC,CATEGORY,STATUS))
- +17 SET TOTAL=TOTAL+COUNT
- +18 DO LINE(" "_$$LJ($$STATUS(STATUS),18)_" "_$JUSTIFY(COUNT,7))
- +19 IF QUIT
- QUIT
- +20 SET PRIORITY=""
- +21 FOR
- SET PRIORITY=$ORDER(^TMP($JOB,PREFAC,CATEGORY,STATUS,PRIORITY))
- IF (PRIORITY="")
- QUIT
- Begin DoDot:4
- +22 SET COUNT=$GET(^TMP($JOB,PREFAC,CATEGORY,STATUS,PRIORITY))
- +23 IF $LENGTH(PRIORITY)=2
- DO LINE(" Priority "_+PRIORITY_$EXTRACT(PRIORITY,2)_" "_$JUSTIFY(COUNT,7))
- QUIT
- +24 DO LINE(" "_$SELECT(PRIORITY:"Priority "_PRIORITY_" ",1:"No Priority ")_$JUSTIFY(COUNT,7))
- End DoDot:4
- IF QUIT
- QUIT
- +25 IF QUIT
- QUIT
- +26 DO LINE(" ")
- End DoDot:3
- IF QUIT
- QUIT
- +27 IF QUIT
- QUIT
- End DoDot:2
- IF QUIT
- QUIT
- +28 IF QUIT
- QUIT
- +29 SET GRNDTOTL=GRNDTOTL+TOTAL
- +30 IF (PREFAC=" ")
- DO LINE(" TOTAL (NO FACILITY) "_$JUSTIFY(TOTAL,8))
- +31 IF (PREFAC'=" ")
- DO LINE(" FACILITY TOTAL "_$JUSTIFY(TOTAL,8))
- +32 IF QUIT
- QUIT
- End DoDot:1
- IF QUIT
- QUIT
- +33 IF QUIT
- QUIT
- +34 WRITE !!
- +35 DO LINE(" TOTAL FOR ALL SELECTED FACILITIES: "_$JUSTIFY(GRNDTOTL,8))
- +36 IF QUIT
- QUIT
- +37 QUIT
- +38 ;
- PATIENTS ;
- +1 ;Description: Prints list of patients
- +2 ;
- +3 NEW PREFAC,DGENRIEN,DGENR,DGPAT,LINE,NODE,PATNAME,STATUS,PRIORITY,ENRDATE,DFN,CATEGORY,I
- +4 ;
- +5 SET PREFAC=""
- +6 ;
- +7 FOR
- SET PREFAC=$ORDER(^TMP($JOB,PREFAC))
- IF PREFAC=""
- QUIT
- Begin DoDot:1
- +8 DO LINE(" ")
- IF QUIT
- QUIT
- +9 DO LINE($$LJ(" ",40)_"PREFERRED FACILITY: "_$SELECT(PREFAC=" ":"none",1:PREFAC)_" "_$GET(^TMP($JOB,PREFAC)))
- IF QUIT
- QUIT
- +10 SET CATEGORY=""
- +11 FOR I=1:1
- SET CATEGORY=$ORDER(^TMP($JOB,PREFAC,"PATIENT",CATEGORY))
- IF CATEGORY=""
- QUIT
- Begin DoDot:2
- +12 IF I>1
- DO LINE(" ")
- IF QUIT
- QUIT
- +13 DO LINE($$LJ(" ",40)_"ENROLLMENT CATEGORY: "_$$EXTCAT^DGENA4(CATEGORY))
- +14 DO LINE(" ")
- IF QUIT
- QUIT
- +15 SET STATUS=""
- +16 FOR
- SET STATUS=$ORDER(^TMP($JOB,PREFAC,"PATIENT",CATEGORY,STATUS))
- IF 'STATUS
- QUIT
- Begin DoDot:3
- +17 SET PRIORITY=""
- +18 FOR
- SET PRIORITY=$ORDER(^TMP($JOB,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY))
- IF (PRIORITY="")
- QUIT
- Begin DoDot:4
- +19 SET PATNAME=0
- +20 FOR
- SET PATNAME=$ORDER(^TMP($JOB,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME))
- IF (PATNAME="")
- QUIT
- Begin DoDot:5
- +21 SET ENRDATE=""
- +22 FOR
- SET ENRDATE=$ORDER(^TMP($JOB,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME,ENRDATE))
- IF ENRDATE=""
- QUIT
- Begin DoDot:6
- +23 SET DFN=0
- +24 FOR
- SET DFN=$ORDER(^TMP($JOB,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME,ENRDATE,DFN))
- IF 'DFN
- QUIT
- Begin DoDot:7
- +25 ;
- +26 SET NODE=$GET(^TMP($JOB,PREFAC,"PATIENT",CATEGORY,STATUS,PRIORITY,PATNAME,ENRDATE,DFN))
- +27 SET DGENRIEN=$PIECE(NODE,"^")
- +28 IF 'DGENRIEN
- QUIT
- +29 IF '$$GET^DGENA(DGENRIEN,.DGENR)
- QUIT
- +30 IF '$$GET^DGENPTA(DGENR("DFN"),.DGPAT)
- QUIT
- +31 SET LINE=$$LJ(DGPAT("NAME"),37)_" "_$$LJ(DGPAT("PID"),15)_" "
- +32 SET LINE=LINE_$$LJ($$DATE(DGPAT("DOB")),12)_" "
- +33 SET LINE=LINE_$$LJ($$EXT^DGENU("STATUS",DGENR("STATUS")),17)_" "
- +34 SET LINE=LINE_$$LJ(" "_DGENR("PRIORITY")_$SELECT(DGENR("SUBGRP"):$$EXT^DGENU("SUBGRP",DGENR("SUBGRP")),1:""),15)_" "
- +35 SET LINE=LINE_$$LJ($$DATE(DGENR("DATE")),12)_" "
- +36 SET LINE=LINE_$$LJ($$DATE(DGENR("END")),12)_" "
- +37 DO LINE(LINE)
- +38 IF QUIT
- QUIT
- End DoDot:7
- IF QUIT
- QUIT
- End DoDot:6
- IF QUIT
- QUIT
- End DoDot:5
- IF QUIT
- QUIT
- End DoDot:4
- IF QUIT
- QUIT
- End DoDot:3
- IF QUIT
- QUIT
- End DoDot:2
- IF QUIT
- QUIT
- +39 IF QUIT
- QUIT
- End DoDot:1
- IF QUIT
- QUIT
- +40 QUIT
- +41 ;
- STATUS(STATUS) ;
- +1 ;Description: Returns status name.
- +2 ;
- +3 IF 'STATUS
- QUIT "No Status"
- +4 QUIT $$LOWER^VALM1($$EXT^DGENU("STATUS",STATUS))
- +5 ;
- DATE(DATE) ;
- +1 QUIT $$FMTE^XLFDT(DATE,"1")
- +2 ;
- LJ(STRING,LENGTH) ;
- +1 QUIT $$LJ^XLFSTR($EXTRACT(STRING,1,LENGTH),LENGTH)