- SDMHAD1 ;MAF/ALB - MENTAL HEALTH AD HOC NO SHOW REPORT(cont.);JULY 14, 2010
- ;;5.3;Scheduling;**578,588**;Aug 13,1993;Build 53
- ;
- SET ; Set up the data for the patient
- ; piece 1 = dfn
- ; piece 2 = Appointment Date and time
- ; piece 3 = status N(Noshow) or NA (Noshow with auto rebook)
- ; piece 4 = PID last 4 of SSN
- ; piece 5 = clinic ien ^SC(
- ; piece 6 = stop code ien ^DIC(40.7
- ;
- ;
- EN ;PRINT OF THE ^TMP
- N SDXDIV,SDXCLIN,SDXDFN,SDXSTOP,SDXREM,SDXNM,SDCOUNT,SDATE,SDTOTPG
- S (SDXDFN,SDXREM,SDCOUNT)=0
- S SDXDIV=""
- F S SDXDIV=$O(^TMP(NAMSPC1,$J,SDXDIV)) Q:SDXDIV']""!(SDUP) D
- .I SDTL="CLIN" D
- ..S SDXCLIN=""
- ..F S SDXCLIN=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXCLIN)) Q:SDXCLIN']""!($G(SDUP)) D
- ...S SDXNM=""
- ...F S SDXNM=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXCLIN,SDXNM)) Q:SDXNM']""!($G(SDUP)) D
- ....S SDXSTOP=0
- ....F S SDXSTOP=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXCLIN,SDXNM,SDXSTOP)) Q:'SDXSTOP!($G(SDUP)) D
- .....S SDATE=0
- .....F S SDATE=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXCLIN,SDXNM,SDXSTOP,SDATE)) Q:'SDATE!($G(SDUP)) D
- ......I $D(^TMP(NAMSPC1,$J,SDXDIV,SDXCLIN,SDXNM,SDXSTOP,SDATE)) D PRT
- .I SDTL="STOP" N SDXSTOPN D
- ..S SDXSTOP=0
- ..F S SDXSTOP=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXSTOP)) Q:SDXSTOP']""!($G(SDUP)) D
- ...S SDXNM=""
- ...F S SDXNM=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXSTOP,SDXNM)) Q:SDXNM']""!($G(SDUP)) D
- ....S SDXCLIN=""
- ....F S SDXCLIN=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXSTOP,SDXNM,SDXCLIN)) Q:SDXCLIN']""!($G(SDUP)) D
- .....S SDATE=0
- .....F S SDATE=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXSTOP,SDXNM,SDXCLIN,SDATE)) Q:'SDATE!($G(SDUP)) D
- ......I $D(^TMP(NAMSPC1,$J,SDXDIV,SDXSTOP,SDXNM,SDXCLIN,SDATE)) S SDXSTOPN=$P(^TMP(NAMSPC1,$J,SDXDIV,SDXSTOP,SDXNM,SDXCLIN,SDATE),"^",6) D PRT
- .I SDTL="MEN" D
- ..S SDXREM=""
- ..F S SDXREM=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXREM)) Q:SDXREM']""!($G(SDUP)) D
- ...S SDXCLIN=""
- ...F S SDXCLIN=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXREM,SDXCLIN)) Q:SDXCLIN']""!($G(SDUP)) D
- ....S SDXNM=""
- ....F S SDXNM=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXREM,SDXCLIN,SDXNM)) Q:SDXNM']""!($G(SDUP)) D
- .....S SDATE=0
- .....F S SDATE=$O(^TMP(NAMSPC1,$J,SDXDIV,SDXREM,SDXCLIN,SDXNM,SDATE)) Q:'SDATE!($G(SDUP)) D
- ......I $D(^TMP(NAMSPC1,$J,SDXDIV,SDXREM,SDXCLIN,SDXNM,SDATE)) S SDXSTOP=$P(^TMP(NAMSPC1,$J,SDXDIV,SDXREM,SDXCLIN,SDXNM,SDATE),"^",6) D PRT
- Q:SDUP
- I $D(^TMP(NAMSPC1,$J)) S SDTOTPG=1 D HEAD^SDMHAD D TOTAL1^SDMHNS
- Q
- ;
- ;
- PRT ;Print report
- ;
- I '$D(SDXFLG(SDXDIV)) D HEAD^SDMHAD S SDXFLG(SDXDIV)=1 S:SDTL'="STOP" SDXFLG(SDXDIV,SDXCLIN)=1 S:SDTL="STOP" SDXFLG(SDXDIV,SDXSTOP,SDXSTOPN)=1
- I SDTL="CLIN" I $D(SDXFLG(SDXDIV)),'$D(SDXFLG(SDXDIV,SDXCLIN)) W !! D HEAD1^SDMHAD S SDXFLG(SDXDIV,SDXCLIN)=1
- I SDTL="STOP" I $D(SDXFLG(SDXDIV)),'$D(SDXFLG(SDXDIV,SDXSTOP,SDXSTOPN)) W !! D HEAD1^SDMHAD S SDXFLG(SDXDIV,SDXSTOP,SDXSTOPN)=1
- D COUNT^SDMHNS
- N SDXNODE,SDXID,SDXDT,SDXSTAT,SDXSORT1,SDXSORT2,SDXCLIEN,SDDSS,SDXRLL,SDXZERO,SDPROV
- S SDPROV=0
- S SDXSORT1=$S(SDTL="MEN":SDXREM,SDTL="STOP":SDXSTOP,1:SDXCLIN)
- S SDXSORT2=$S(SDTL="CLIN":SDXSTOP,1:SDXCLIN)
- I SDTL="MEN" S SDXNODE=$G(^TMP(NAMSPC1,$J,SDXDIV,SDXSORT1,SDXSORT2,SDXNM,SDATE))
- I SDTL'="MEN" S SDXNODE=$G(^TMP(NAMSPC1,$J,SDXDIV,SDXSORT1,SDXNM,SDXSORT2,SDATE))
- S SDXDFN=$P(SDXNODE,"^",1) Q:SDXDFN']""
- S SDXID=$E($P(SDXNODE,"^",4),1,5)
- S SDXDT=$P(SDXNODE,"^",2)
- S SDXSTAT=$P(SDXNODE,"^",3)
- S SDXCLIEN=$P(SDXNODE,"^",5)
- S SDDSS=$P($G(^DIC(40.7,+$P(SDXNODE,"^",6),0)),"^",2)
- S SDXDT=$$FMTE^XLFDT(SDXDT,"5") W !!,SDCOUNT,?4,$E($P(^DPT(SDXDFN,0),"^",1),1,20),?25,SDXID,?31,SDXDT,?49,$E(SDXCLIN,1,30)
- W !?47,$E("*"_SDXSTAT,1,5) D PROV W ?53,$E(SDPROV,1,26) D RET Q:SDUP I SDCOUNT=$P($G(TOTAL(SDXDIV,SDXCLIN)),"^",1) S SDCOUNT=0
- D RET Q:SDUP ;D PROV Q:SDUP
- D PATINFO Q:SDUP
- D RET Q:SDUP D NOK Q:SDUP
- D RET Q:SDUP D EC Q:SDUP
- ;D RET Q:SDUP D PROV Q:SDUP
- D RET Q:SDUP D MHTC Q:SDUP
- D RET Q:SDUP D FUT Q:SDUP
- D RET Q:SDUP D RESULTS Q:SDUP
- Q
- ;
- ;
- PATINFO ;Patients home, cell and office phones
- N SDPHON,VAROOT,VAOA,SDEC6,SDEC5,DFN
- S DFN=SDXDFN,VAROOT="SDEC6" D ADD^VADPT
- I $D(SDEC6) D
- .S SDPHON("HOME")=SDEC6(8)
- S DFN=SDXDFN,VAOA("A")=5,VAROOT="SDEC5" D OAD^VADPT
- I $D(SDEC5) D
- .S SDPHON("WORK")=SDEC5(8)
- D GETS^DIQ(2,SDXDFN_",",".134","E","SDPHON")
- I $D(SDPHON(2,SDXDFN_",")) D
- .S SDPHON("CELL")=$G(SDPHON(2,SDXDFN_",",".134","E"))
- I $D(SDPHON("HOME")),SDPHON("HOME")]"" W !,?5,"Home: ",$$HLPHONE^HLFNC(SDPHON("HOME"),,) D RET Q:SDUP
- I $D(SDPHON("WORK")),SDPHON("WORK")]"" W !,?5,"Work: ",$$HLPHONE^HLFNC(SDPHON("WORK"),,) D RET Q:SDUP
- I $D(SDPHON("CELL")),SDPHON("CELL")]"" W !,?5,"Cell: ",$$HLPHONE^HLFNC(SDPHON("CELL"),,) D RET Q:SDUP
- Q
- ;
- ;
- NOK ; Next of Kin information
- N SDNOK,SDNOK2,SDNOKNM,SDNOKNM2,SDNOKR,SDNOKR2,SDNOKPH,SDNOKPH2,SDNOKPO,SDNOKPO2,SDNOKFL,VAOA,VAROOT,SDEC3,SDEC4,SDPHON,DFN
- S DFN=SDXDFN,VAROOT="SDEC3" D OAD^VADPT
- S DFN=SDXDFN,VAOA("A")=3,VAROOT="SDEC4" D OAD^VADPT
- D GETS^DIQ(2,SDXDFN_",",".21011;.211011","E","SDPHON")
- I $D(SDPHON(2,SDXDFN_",")) D
- .S SDPHON("K-WORK")=$G(SDPHON(2,SDXDFN_",",".21011","E"))
- .S SDPHON("K2-WORK")=$G(SDPHON(2,SDXDFN_",",".211011","E"))
- I $D(SDEC3) D
- .S SDNOKNM=SDEC3(9),SDNOKR=SDEC3(10),SDNOKPH=SDEC3(8),SDNOKPO=SDPHON("K-WORK")
- I $D(SDEC4) D
- .S SDNOKNM2=SDEC4(9),SDNOKR2=SDEC4(10),SDNOKPH2=SDEC3(8),SDNOKPO2=SDPHON("K2-WORK")
- I SDNOKNM]""!(SDNOKNM2]"") D NOKFL D RET Q:SDUP
- I SDNOKNM]"" W ?7,"NOK: "_SDNOKNM D RET Q:SDUP
- I SDNOKNM2]"" W ?45,"NOK2: "_SDNOKNM2
- I SDNOKR]""!(SDNOKR2]"") D D RET Q:SDUP
- .I '$D(SDNOKFL) D NOKFL Q
- .W !
- I SDNOKR]"" W ?7,"Relation: "_SDNOKR D RET Q:SDUP
- I SDNOKR2]"" W ?45,"Relation: "_SDNOKR2
- I SDNOKPH]""!(SDNOKPH2]"") D D RET Q:SDUP
- .I '$D(SDNOKFL) D NOKFL Q
- .W !
- D RET Q:SDUP
- I SDNOKPH]"" W ?7,"Phone: "_$$HLPHONE^HLFNC(SDNOKPH,,)
- I SDNOKPH2]"" W ?45,"Phone: "_$$HLPHONE^HLFNC(SDNOKPH2,,)
- I SDNOKPO]""!(SDNOKPO2]"") D D RET Q:SDUP
- .I '$D(SDNOKFL) D NOKFL Q
- .W !
- I SDNOKPO]"" W ?7,"Work Phone: "_$$HLPHONE^HLFNC(SDNOKPO,,)
- I SDNOKPO2]"" W ?45,"Work Phone: "_$$HLPHONE^HLFNC(SDNOKPO2,,)
- W ! D RET Q:SDUP
- Q
- ;
- ;
- NOKFL W !!," Next of Kin:",! S SDNOKFL=1
- Q
- ;
- ;
- EC ;display emergency contact information
- N SDEC1,SDEC2,SDPHON,VAROOT,VAOA
- Q:'$G(SDXDFN)
- N DFN
- S DFN=SDXDFN
- S VAOA("A")=1,VAROOT="SDEC1" D OAD^VADPT ; Get Primary EC
- S VAOA("A")=4,VAROOT="SDEC2" D OAD^VADPT ; Get Secondary EC
- D GETS^DIQ(2,SDXDFN_",",".33011;.331011","E","SDPHON")
- I $D(SDPHON(2,SDXDFN_",")) D
- .S SDPHON("E-WORK")=$G(SDPHON(2,SDXDFN_",",".33011","E"))
- .S SDPHON("E2-WORK")=$G(SDPHON(2,SDXDFN_",",".331011","E"))
- I SDEC1(9)]"" D
- . D RET Q:SDUP I $D(SDEC1)!($D(SDEC2)) W !,?5,"Emergency Contact:" D RET Q:SDUP
- . ;Contacts name and realtionship
- . I SDEC1(9)]"" W !?7,"E-Cont.: ",SDEC1(9)
- . I SDEC2(9)]"" I SDEC2(9)]"" W ?45,"E2-Cont.: ",SDEC2(9)
- . D RET Q:SDUP I SDEC1(10)]"" W !,?7,"Relation: ",SDEC1(10)
- . I SDEC2(10)]"" W ?45,"Relation: ",SDEC2(10)
- . ;ECs address lines 1, 2 and 3
- . D RET Q:SDUP I SDEC1(1)]"" W !,?9,SDEC1(1)
- . I SDEC1(1)']"",SDEC2(1)]"" D RET Q:SDUP W !
- . I SDEC2(1)]"" W ?47,SDEC2(1)
- . D RET Q:SDUP I SDEC1(2)]"" W !,?9,SDEC1(2)
- . I SDEC1(2)']"",SDEC2(2)]"" D RET Q:SDUP W !
- . I SDEC2(2)]"" W ?47,SDEC2(2)
- . D RET Q:SDUP I SDEC1(3)]"" W !,?9,SDEC1(3)
- . I SDEC1(3)']"",SDEC2(3)]"" D RET Q:SDUP W !
- . I SDEC2(3)]"" W ?47,SDEC2(3)
- . ;Emergency Contact 1 City, State an Zip+4
- . I SDEC1(4)]"" D
- . . D RET Q:SDUP W !,?9,SDEC1(4)
- . . I SDEC1(5)]"" W ", "_$$GET1^DIQ(5,+SDEC1(5),1)
- . . W " ",$P(SDEC1(11),"^",2)
- . ;Emergency Contact 2 City State and Zip+4
- . I SDEC2(4)]"" D
- . . D RET Q:SDUP I SDEC1(4)']"" W !
- . . W ?47,SDEC2(4)
- . . I SDEC2(5)]"" W ", "_$$GET1^DIQ(5,+SDEC2(5),1)
- . . W " ",$P(SDEC2(11),"^",2)
- . ;Home and work phones
- . D RET Q:SDUP I SDEC1(8)]"" W !,?7,"Phone: "_$$HLPHONE^HLFNC(SDEC1(8),,)
- . I SDEC2(8)]"" W ?45,"Phone: "_$$HLPHONE^HLFNC(SDEC2(8),,)
- . D RET Q:SDUP I SDPHON("E-WORK")]"" W !?7,"Work Phone: "_$$HLPHONE^HLFNC(SDPHON("E-WORK"),,) ;,$S($P(^DPT(DFN,.33),U,11)]"":$P(^DPT(DFN,.33),U,11),1:"UNSPECIFIED")
- . I SDPHON("E2-WORK")]"" W ?45,"Work Phone: "_$$HLPHONE^HLFNC(SDPHON("E2-WORK"),,) ;,$S($P(^DPT(DFN,.331),U,11)]"":$P(^DPT(DFN,.331),U,11),1:"UNSPECIFIED")
- D KVAR^VADPT
- Q
- ;
- ;
- PROV ;Clinic Default Provider
- N SDPNUM,SDPNODE
- S SDPNUM=0
- F SDPNUM=0:0 S SDPNUM=$O(^SC(SDXCLIEN,"PR",SDPNUM)) Q:'(+SDPNUM) I $D(^SC(SDXCLIEN,"PR",SDPNUM,0)) S SDPNODE=^SC(SDXCLIEN,"PR",SDPNUM,0) I $P(SDPNODE,"^",1)&($P(SDPNODE,"^",2)) D Q:SDUP
- . S SDPROV=$E($P(^VA(200,$P(SDPNODE,"^",1),0),"^",1),1,25) ;D RET
- ;.W !,?5,"Provider: "_$P(^VA(200,$P(SDPNODE,"^",1),0),"^",1) D RET
- Q
- ;
- ;
- MHTC ;Mental Health Treatment Coordinator
- ;Q:'$T(START^SCMCMHTC)
- W !
- N SDMHTC,MHTC,SDMHTEAM
- S SDMHTC=$$START^SCMCMHTC(SDXDFN) S SDMHTEAM=$P($G(SDMHTC),"^",5),SDMHTC=$P($G(SDMHTC),"^",2)
- I SDMHTC]"" W !,?5,"MHTC: "_SDMHTC_" ("_SDMHTEAM_$S(SDMHTEAM["TEAM":"",1:" TEAM")_")" D RET
- Q
- ;
- ;
- FUT ; FUTURE SCHEDULED APPTS.
- W !,?5,"Future Scheduled Appointments: "
- N SDARRAY,SDCOUNT,SDX,X1,X2,X
- S X1=DT,X2=$S($D(SDFUTNUM):SDFUTNUM,1:30) D C^%DTC S SDX=X
- S SDARRAY(1)=DT_";"_SDX
- S SDARRAY("SORT")="P"
- S SDARRAY(3)="NT;R"
- S SDARRAY(4)=SDXDFN
- S SDARRAY("FLDS")="1;2;3;4;10;13"
- S SDCOUNT=$$SDAPI^SDAMA301(.SDARRAY)
- I SDCOUNT>0 D Q:SDUP
- .;Get info on future scheduled appointments and display it
- . N SDFA,SDFNODE,SDFUTDT ;,SDFUTCNT
- . ;S SDFUTCNT=0 ;List up to 6 future appts. for a patient.
- . S SDFA=0 F S SDFA=$O(^TMP($J,"SDAMA301",SDXDFN,SDFA)) Q:SDFA=""!(SDUP) D Q:SDUP
- .. S SDFUTDT=$$FMTE^XLFDT(SDFA,"5") S SDFNODE=^TMP($J,"SDAMA301",SDXDFN,SDFA) W !,?7,SDFUTDT,?26,$E($P($P(SDFNODE,"^",2),";",2),1,30) ;S SDFUTCNT=SDFUTCNT+1
- ..D RET Q:SDUP
- .Q
- I SDCOUNT'>0 D Q:SDUP
- .W "NO APPOINTMENTS SCHEDULED WITHIN "_SDFUTNUM_$S(SDFUTNUM=1:" DAY",1:" DAYS")
- K ^TMP($J,"SDAMA301")
- Q
- ;
- ;
- RESULTS ;Reminder information
- W !,?5,"Results: "
- K ^TMP("PXRHM",$J),^TMP("PXRM",$J)
- N SDCR
- ;S SDCR=$O(^PXD(811.9,"B","VA-MH HIGH RISK NO-SHOW FOLLOW-UP",0))
- S SDCR=$O(^PXD(811.9,"B","VA-MH HIGH RISK NO-SHOW ADHOC RPT",0))
- ; N DEFARR,FIEVAL
- ; Load the definition into DEFARR.
- ; D DEF^PXRMLDR(SDCR,.DEFARR)
- ; D EVAL^PXRM(SDXDFN,.DEFARR,5,0,.FIEVAL,$P(SDXNODE,"^",2))
- D MAINDF^PXRM(SDXDFN,SDCR,5,$P(SDXNODE,"^",2))
- N SDTXT,SDTXTR,SDRNODE
- S (SDTXT,SDTXTR)=0
- F SDTXT=0:0 S SDTXT=$O(^TMP("PXRHM",$J,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)) Q:'SDTXT!(SDTXTR) S SDRNODE=$G(^TMP("PXRHM",$J,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)) I SDRNODE["Resolution:"!(SDRNODE["Information:") D
- .;N SDTNODE
- .W !,?5,^TMP("PXRHM",$J,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT) D RET Q:SDUP D
- ..F SDTXT=SDTXT:0 S SDTXT=$O(^TMP("PXRHM",$J,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)) Q:'SDTXT I $D(^TMP("PXRHM",$J,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)) D
- ...W !,?5,^TMP("PXRHM",$J,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)
- ...D RET Q:SDUP Q
- ..S SDTXTR=1
- ..;K ^TMP("PXRHM",$J),^TMP("PXRM",$J) Q
- D RET Q:SDUP
- K ^TMP("PXRHM",$J),^TMP("PXRM",$J)
- Q
- ;
- ;
- PID(DFN) ; Return PID
- ; INPUT - DFN
- ; OUTPUT - PID or 'UNKNOWN'
- N VA
- D PID^VADPT6
- Q $S(VA("BID")]"":VA("BID"),1:"UNKNOWN")
- ;
- ;
- RET ;
- I $E(IOST,1,2)="C-",($Y+6)>IOSL D Q:SDUP
- . S DIR(0)="E"
- . D ^DIR K DIR
- . I 'Y S SDUP=1 Q
- . K SDXFLG(SDXDIV)
- . D HEAD^SDMHAD S SDXFLG(SDXDIV)=1,SDXFLG(SDXDIV,SDXCLIN)=1,SDXFLG(SDXDIV,SDXSTOP)=1
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HSDMHAD1 11567 printed Feb 19, 2025@00:25:07 Page 2
- SDMHAD1 ;MAF/ALB - MENTAL HEALTH AD HOC NO SHOW REPORT(cont.);JULY 14, 2010
- +1 ;;5.3;Scheduling;**578,588**;Aug 13,1993;Build 53
- +2 ;
- SET ; Set up the data for the patient
- +1 ; piece 1 = dfn
- +2 ; piece 2 = Appointment Date and time
- +3 ; piece 3 = status N(Noshow) or NA (Noshow with auto rebook)
- +4 ; piece 4 = PID last 4 of SSN
- +5 ; piece 5 = clinic ien ^SC(
- +6 ; piece 6 = stop code ien ^DIC(40.7
- +7 ;
- +8 ;
- EN ;PRINT OF THE ^TMP
- +1 NEW SDXDIV,SDXCLIN,SDXDFN,SDXSTOP,SDXREM,SDXNM,SDCOUNT,SDATE,SDTOTPG
- +2 SET (SDXDFN,SDXREM,SDCOUNT)=0
- +3 SET SDXDIV=""
- +4 FOR
- SET SDXDIV=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV))
- if SDXDIV']""!(SDUP)
- QUIT
- Begin DoDot:1
- +5 IF SDTL="CLIN"
- Begin DoDot:2
- +6 SET SDXCLIN=""
- +7 FOR
- SET SDXCLIN=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXCLIN))
- if SDXCLIN']""!($GET(SDUP))
- QUIT
- Begin DoDot:3
- +8 SET SDXNM=""
- +9 FOR
- SET SDXNM=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXCLIN,SDXNM))
- if SDXNM']""!($GET(SDUP))
- QUIT
- Begin DoDot:4
- +10 SET SDXSTOP=0
- +11 FOR
- SET SDXSTOP=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXCLIN,SDXNM,SDXSTOP))
- if 'SDXSTOP!($GET(SDUP))
- QUIT
- Begin DoDot:5
- +12 SET SDATE=0
- +13 FOR
- SET SDATE=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXCLIN,SDXNM,SDXSTOP,SDATE))
- if 'SDATE!($GET(SDUP))
- QUIT
- Begin DoDot:6
- +14 IF $DATA(^TMP(NAMSPC1,$JOB,SDXDIV,SDXCLIN,SDXNM,SDXSTOP,SDATE))
- DO PRT
- End DoDot:6
- End DoDot:5
- End DoDot:4
- End DoDot:3
- End DoDot:2
- +15 IF SDTL="STOP"
- NEW SDXSTOPN
- Begin DoDot:2
- +16 SET SDXSTOP=0
- +17 FOR
- SET SDXSTOP=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSTOP))
- if SDXSTOP']""!($GET(SDUP))
- QUIT
- Begin DoDot:3
- +18 SET SDXNM=""
- +19 FOR
- SET SDXNM=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSTOP,SDXNM))
- if SDXNM']""!($GET(SDUP))
- QUIT
- Begin DoDot:4
- +20 SET SDXCLIN=""
- +21 FOR
- SET SDXCLIN=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSTOP,SDXNM,SDXCLIN))
- if SDXCLIN']""!($GET(SDUP))
- QUIT
- Begin DoDot:5
- +22 SET SDATE=0
- +23 FOR
- SET SDATE=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSTOP,SDXNM,SDXCLIN,SDATE))
- if 'SDATE!($GET(SDUP))
- QUIT
- Begin DoDot:6
- +24 IF $DATA(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSTOP,SDXNM,SDXCLIN,SDATE))
- SET SDXSTOPN=$PIECE(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSTOP,SDXNM,SDXCLIN,SDATE),"^",6)
- DO PRT
- End DoDot:6
- End DoDot:5
- End DoDot:4
- End DoDot:3
- End DoDot:2
- +25 IF SDTL="MEN"
- Begin DoDot:2
- +26 SET SDXREM=""
- +27 FOR
- SET SDXREM=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXREM))
- if SDXREM']""!($GET(SDUP))
- QUIT
- Begin DoDot:3
- +28 SET SDXCLIN=""
- +29 FOR
- SET SDXCLIN=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXREM,SDXCLIN))
- if SDXCLIN']""!($GET(SDUP))
- QUIT
- Begin DoDot:4
- +30 SET SDXNM=""
- +31 FOR
- SET SDXNM=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXREM,SDXCLIN,SDXNM))
- if SDXNM']""!($GET(SDUP))
- QUIT
- Begin DoDot:5
- +32 SET SDATE=0
- +33 FOR
- SET SDATE=$ORDER(^TMP(NAMSPC1,$JOB,SDXDIV,SDXREM,SDXCLIN,SDXNM,SDATE))
- if 'SDATE!($GET(SDUP))
- QUIT
- Begin DoDot:6
- +34 IF $DATA(^TMP(NAMSPC1,$JOB,SDXDIV,SDXREM,SDXCLIN,SDXNM,SDATE))
- SET SDXSTOP=$PIECE(^TMP(NAMSPC1,$JOB,SDXDIV,SDXREM,SDXCLIN,SDXNM,SDATE),"^",6)
- DO PRT
- End DoDot:6
- End DoDot:5
- End DoDot:4
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +35 if SDUP
- QUIT
- +36 IF $DATA(^TMP(NAMSPC1,$JOB))
- SET SDTOTPG=1
- DO HEAD^SDMHAD
- DO TOTAL1^SDMHNS
- +37 QUIT
- +38 ;
- +39 ;
- PRT ;Print report
- +1 ;
- +2 IF '$DATA(SDXFLG(SDXDIV))
- DO HEAD^SDMHAD
- SET SDXFLG(SDXDIV)=1
- if SDTL'="STOP"
- SET SDXFLG(SDXDIV,SDXCLIN)=1
- if SDTL="STOP"
- SET SDXFLG(SDXDIV,SDXSTOP,SDXSTOPN)=1
- +3 IF SDTL="CLIN"
- IF $DATA(SDXFLG(SDXDIV))
- IF '$DATA(SDXFLG(SDXDIV,SDXCLIN))
- WRITE !!
- DO HEAD1^SDMHAD
- SET SDXFLG(SDXDIV,SDXCLIN)=1
- +4 IF SDTL="STOP"
- IF $DATA(SDXFLG(SDXDIV))
- IF '$DATA(SDXFLG(SDXDIV,SDXSTOP,SDXSTOPN))
- WRITE !!
- DO HEAD1^SDMHAD
- SET SDXFLG(SDXDIV,SDXSTOP,SDXSTOPN)=1
- +5 DO COUNT^SDMHNS
- +6 NEW SDXNODE,SDXID,SDXDT,SDXSTAT,SDXSORT1,SDXSORT2,SDXCLIEN,SDDSS,SDXRLL,SDXZERO,SDPROV
- +7 SET SDPROV=0
- +8 SET SDXSORT1=$SELECT(SDTL="MEN":SDXREM,SDTL="STOP":SDXSTOP,1:SDXCLIN)
- +9 SET SDXSORT2=$SELECT(SDTL="CLIN":SDXSTOP,1:SDXCLIN)
- +10 IF SDTL="MEN"
- SET SDXNODE=$GET(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSORT1,SDXSORT2,SDXNM,SDATE))
- +11 IF SDTL'="MEN"
- SET SDXNODE=$GET(^TMP(NAMSPC1,$JOB,SDXDIV,SDXSORT1,SDXNM,SDXSORT2,SDATE))
- +12 SET SDXDFN=$PIECE(SDXNODE,"^",1)
- if SDXDFN']""
- QUIT
- +13 SET SDXID=$EXTRACT($PIECE(SDXNODE,"^",4),1,5)
- +14 SET SDXDT=$PIECE(SDXNODE,"^",2)
- +15 SET SDXSTAT=$PIECE(SDXNODE,"^",3)
- +16 SET SDXCLIEN=$PIECE(SDXNODE,"^",5)
- +17 SET SDDSS=$PIECE($GET(^DIC(40.7,+$PIECE(SDXNODE,"^",6),0)),"^",2)
- +18 SET SDXDT=$$FMTE^XLFDT(SDXDT,"5")
- WRITE !!,SDCOUNT,?4,$EXTRACT($PIECE(^DPT(SDXDFN,0),"^",1),1,20),?25,SDXID,?31,SDXDT,?49,$EXTRACT(SDXCLIN,1,30)
- +19 WRITE !?47,$EXTRACT("*"_SDXSTAT,1,5)
- DO PROV
- WRITE ?53,$EXTRACT(SDPROV,1,26)
- DO RET
- if SDUP
- QUIT
- IF SDCOUNT=$PIECE($GET(TOTAL(SDXDIV,SDXCLIN)),"^",1)
- SET SDCOUNT=0
- +20 ;D PROV Q:SDUP
- DO RET
- if SDUP
- QUIT
- +21 DO PATINFO
- if SDUP
- QUIT
- +22 DO RET
- if SDUP
- QUIT
- DO NOK
- if SDUP
- QUIT
- +23 DO RET
- if SDUP
- QUIT
- DO EC
- if SDUP
- QUIT
- +24 ;D RET Q:SDUP D PROV Q:SDUP
- +25 DO RET
- if SDUP
- QUIT
- DO MHTC
- if SDUP
- QUIT
- +26 DO RET
- if SDUP
- QUIT
- DO FUT
- if SDUP
- QUIT
- +27 DO RET
- if SDUP
- QUIT
- DO RESULTS
- if SDUP
- QUIT
- +28 QUIT
- +29 ;
- +30 ;
- PATINFO ;Patients home, cell and office phones
- +1 NEW SDPHON,VAROOT,VAOA,SDEC6,SDEC5,DFN
- +2 SET DFN=SDXDFN
- SET VAROOT="SDEC6"
- DO ADD^VADPT
- +3 IF $DATA(SDEC6)
- Begin DoDot:1
- +4 SET SDPHON("HOME")=SDEC6(8)
- End DoDot:1
- +5 SET DFN=SDXDFN
- SET VAOA("A")=5
- SET VAROOT="SDEC5"
- DO OAD^VADPT
- +6 IF $DATA(SDEC5)
- Begin DoDot:1
- +7 SET SDPHON("WORK")=SDEC5(8)
- End DoDot:1
- +8 DO GETS^DIQ(2,SDXDFN_",",".134","E","SDPHON")
- +9 IF $DATA(SDPHON(2,SDXDFN_","))
- Begin DoDot:1
- +10 SET SDPHON("CELL")=$GET(SDPHON(2,SDXDFN_",",".134","E"))
- End DoDot:1
- +11 IF $DATA(SDPHON("HOME"))
- IF SDPHON("HOME")]""
- WRITE !,?5,"Home: ",$$HLPHONE^HLFNC(SDPHON("HOME"),,)
- DO RET
- if SDUP
- QUIT
- +12 IF $DATA(SDPHON("WORK"))
- IF SDPHON("WORK")]""
- WRITE !,?5,"Work: ",$$HLPHONE^HLFNC(SDPHON("WORK"),,)
- DO RET
- if SDUP
- QUIT
- +13 IF $DATA(SDPHON("CELL"))
- IF SDPHON("CELL")]""
- WRITE !,?5,"Cell: ",$$HLPHONE^HLFNC(SDPHON("CELL"),,)
- DO RET
- if SDUP
- QUIT
- +14 QUIT
- +15 ;
- +16 ;
- NOK ; Next of Kin information
- +1 NEW SDNOK,SDNOK2,SDNOKNM,SDNOKNM2,SDNOKR,SDNOKR2,SDNOKPH,SDNOKPH2,SDNOKPO,SDNOKPO2,SDNOKFL,VAOA,VAROOT,SDEC3,SDEC4,SDPHON,DFN
- +2 SET DFN=SDXDFN
- SET VAROOT="SDEC3"
- DO OAD^VADPT
- +3 SET DFN=SDXDFN
- SET VAOA("A")=3
- SET VAROOT="SDEC4"
- DO OAD^VADPT
- +4 DO GETS^DIQ(2,SDXDFN_",",".21011;.211011","E","SDPHON")
- +5 IF $DATA(SDPHON(2,SDXDFN_","))
- Begin DoDot:1
- +6 SET SDPHON("K-WORK")=$GET(SDPHON(2,SDXDFN_",",".21011","E"))
- +7 SET SDPHON("K2-WORK")=$GET(SDPHON(2,SDXDFN_",",".211011","E"))
- End DoDot:1
- +8 IF $DATA(SDEC3)
- Begin DoDot:1
- +9 SET SDNOKNM=SDEC3(9)
- SET SDNOKR=SDEC3(10)
- SET SDNOKPH=SDEC3(8)
- SET SDNOKPO=SDPHON("K-WORK")
- End DoDot:1
- +10 IF $DATA(SDEC4)
- Begin DoDot:1
- +11 SET SDNOKNM2=SDEC4(9)
- SET SDNOKR2=SDEC4(10)
- SET SDNOKPH2=SDEC3(8)
- SET SDNOKPO2=SDPHON("K2-WORK")
- End DoDot:1
- +12 IF SDNOKNM]""!(SDNOKNM2]"")
- DO NOKFL
- DO RET
- if SDUP
- QUIT
- +13 IF SDNOKNM]""
- WRITE ?7,"NOK: "_SDNOKNM
- DO RET
- if SDUP
- QUIT
- +14 IF SDNOKNM2]""
- WRITE ?45,"NOK2: "_SDNOKNM2
- +15 IF SDNOKR]""!(SDNOKR2]"")
- Begin DoDot:1
- +16 IF '$DATA(SDNOKFL)
- DO NOKFL
- QUIT
- +17 WRITE !
- End DoDot:1
- DO RET
- if SDUP
- QUIT
- +18 IF SDNOKR]""
- WRITE ?7,"Relation: "_SDNOKR
- DO RET
- if SDUP
- QUIT
- +19 IF SDNOKR2]""
- WRITE ?45,"Relation: "_SDNOKR2
- +20 IF SDNOKPH]""!(SDNOKPH2]"")
- Begin DoDot:1
- +21 IF '$DATA(SDNOKFL)
- DO NOKFL
- QUIT
- +22 WRITE !
- End DoDot:1
- DO RET
- if SDUP
- QUIT
- +23 DO RET
- if SDUP
- QUIT
- +24 IF SDNOKPH]""
- WRITE ?7,"Phone: "_$$HLPHONE^HLFNC(SDNOKPH,,)
- +25 IF SDNOKPH2]""
- WRITE ?45,"Phone: "_$$HLPHONE^HLFNC(SDNOKPH2,,)
- +26 IF SDNOKPO]""!(SDNOKPO2]"")
- Begin DoDot:1
- +27 IF '$DATA(SDNOKFL)
- DO NOKFL
- QUIT
- +28 WRITE !
- End DoDot:1
- DO RET
- if SDUP
- QUIT
- +29 IF SDNOKPO]""
- WRITE ?7,"Work Phone: "_$$HLPHONE^HLFNC(SDNOKPO,,)
- +30 IF SDNOKPO2]""
- WRITE ?45,"Work Phone: "_$$HLPHONE^HLFNC(SDNOKPO2,,)
- +31 WRITE !
- DO RET
- if SDUP
- QUIT
- +32 QUIT
- +33 ;
- +34 ;
- NOKFL WRITE !!," Next of Kin:",!
- SET SDNOKFL=1
- +1 QUIT
- +2 ;
- +3 ;
- EC ;display emergency contact information
- +1 NEW SDEC1,SDEC2,SDPHON,VAROOT,VAOA
- +2 if '$GET(SDXDFN)
- QUIT
- +3 NEW DFN
- +4 SET DFN=SDXDFN
- +5 ; Get Primary EC
- SET VAOA("A")=1
- SET VAROOT="SDEC1"
- DO OAD^VADPT
- +6 ; Get Secondary EC
- SET VAOA("A")=4
- SET VAROOT="SDEC2"
- DO OAD^VADPT
- +7 DO GETS^DIQ(2,SDXDFN_",",".33011;.331011","E","SDPHON")
- +8 IF $DATA(SDPHON(2,SDXDFN_","))
- Begin DoDot:1
- +9 SET SDPHON("E-WORK")=$GET(SDPHON(2,SDXDFN_",",".33011","E"))
- +10 SET SDPHON("E2-WORK")=$GET(SDPHON(2,SDXDFN_",",".331011","E"))
- End DoDot:1
- +11 IF SDEC1(9)]""
- Begin DoDot:1
- +12 DO RET
- if SDUP
- QUIT
- IF $DATA(SDEC1)!($DATA(SDEC2))
- WRITE !,?5,"Emergency Contact:"
- DO RET
- if SDUP
- QUIT
- +13 ;Contacts name and realtionship
- +14 IF SDEC1(9)]""
- WRITE !?7,"E-Cont.: ",SDEC1(9)
- +15 IF SDEC2(9)]""
- IF SDEC2(9)]""
- WRITE ?45,"E2-Cont.: ",SDEC2(9)
- +16 DO RET
- if SDUP
- QUIT
- IF SDEC1(10)]""
- WRITE !,?7,"Relation: ",SDEC1(10)
- +17 IF SDEC2(10)]""
- WRITE ?45,"Relation: ",SDEC2(10)
- +18 ;ECs address lines 1, 2 and 3
- +19 DO RET
- if SDUP
- QUIT
- IF SDEC1(1)]""
- WRITE !,?9,SDEC1(1)
- +20 IF SDEC1(1)']""
- IF SDEC2(1)]""
- DO RET
- if SDUP
- QUIT
- WRITE !
- +21 IF SDEC2(1)]""
- WRITE ?47,SDEC2(1)
- +22 DO RET
- if SDUP
- QUIT
- IF SDEC1(2)]""
- WRITE !,?9,SDEC1(2)
- +23 IF SDEC1(2)']""
- IF SDEC2(2)]""
- DO RET
- if SDUP
- QUIT
- WRITE !
- +24 IF SDEC2(2)]""
- WRITE ?47,SDEC2(2)
- +25 DO RET
- if SDUP
- QUIT
- IF SDEC1(3)]""
- WRITE !,?9,SDEC1(3)
- +26 IF SDEC1(3)']""
- IF SDEC2(3)]""
- DO RET
- if SDUP
- QUIT
- WRITE !
- +27 IF SDEC2(3)]""
- WRITE ?47,SDEC2(3)
- +28 ;Emergency Contact 1 City, State an Zip+4
- +29 IF SDEC1(4)]""
- Begin DoDot:2
- +30 DO RET
- if SDUP
- QUIT
- WRITE !,?9,SDEC1(4)
- +31 IF SDEC1(5)]""
- WRITE ", "_$$GET1^DIQ(5,+SDEC1(5),1)
- +32 WRITE " ",$PIECE(SDEC1(11),"^",2)
- End DoDot:2
- +33 ;Emergency Contact 2 City State and Zip+4
- +34 IF SDEC2(4)]""
- Begin DoDot:2
- +35 DO RET
- if SDUP
- QUIT
- IF SDEC1(4)']""
- WRITE !
- +36 WRITE ?47,SDEC2(4)
- +37 IF SDEC2(5)]""
- WRITE ", "_$$GET1^DIQ(5,+SDEC2(5),1)
- +38 WRITE " ",$PIECE(SDEC2(11),"^",2)
- End DoDot:2
- +39 ;Home and work phones
- +40 DO RET
- if SDUP
- QUIT
- IF SDEC1(8)]""
- WRITE !,?7,"Phone: "_$$HLPHONE^HLFNC(SDEC1(8),,)
- +41 IF SDEC2(8)]""
- WRITE ?45,"Phone: "_$$HLPHONE^HLFNC(SDEC2(8),,)
- +42 ;,$S($P(^DPT(DFN,.33),U,11)]"":$P(^DPT(DFN,.33),U,11),1:"UNSPECIFIED")
- DO RET
- if SDUP
- QUIT
- IF SDPHON("E-WORK")]""
- WRITE !?7,"Work Phone: "_$$HLPHONE^HLFNC(SDPHON("E-WORK"),,)
- +43 ;,$S($P(^DPT(DFN,.331),U,11)]"":$P(^DPT(DFN,.331),U,11),1:"UNSPECIFIED")
- IF SDPHON("E2-WORK")]""
- WRITE ?45,"Work Phone: "_$$HLPHONE^HLFNC(SDPHON("E2-WORK"),,)
- End DoDot:1
- +44 DO KVAR^VADPT
- +45 QUIT
- +46 ;
- +47 ;
- PROV ;Clinic Default Provider
- +1 NEW SDPNUM,SDPNODE
- +2 SET SDPNUM=0
- +3 FOR SDPNUM=0:0
- SET SDPNUM=$ORDER(^SC(SDXCLIEN,"PR",SDPNUM))
- if '(+SDPNUM)
- QUIT
- IF $DATA(^SC(SDXCLIEN,"PR",SDPNUM,0))
- SET SDPNODE=^SC(SDXCLIEN,"PR",SDPNUM,0)
- IF $PIECE(SDPNODE,"^",1)&($PIECE(SDPNODE,"^",2))
- Begin DoDot:1
- +4 ;D RET
- SET SDPROV=$EXTRACT($PIECE(^VA(200,$PIECE(SDPNODE,"^",1),0),"^",1),1,25)
- End DoDot:1
- if SDUP
- QUIT
- +5 ;.W !,?5,"Provider: "_$P(^VA(200,$P(SDPNODE,"^",1),0),"^",1) D RET
- +6 QUIT
- +7 ;
- +8 ;
- MHTC ;Mental Health Treatment Coordinator
- +1 ;Q:'$T(START^SCMCMHTC)
- +2 WRITE !
- +3 NEW SDMHTC,MHTC,SDMHTEAM
- +4 SET SDMHTC=$$START^SCMCMHTC(SDXDFN)
- SET SDMHTEAM=$PIECE($GET(SDMHTC),"^",5)
- SET SDMHTC=$PIECE($GET(SDMHTC),"^",2)
- +5 IF SDMHTC]""
- WRITE !,?5,"MHTC: "_SDMHTC_" ("_SDMHTEAM_$SELECT(SDMHTEAM["TEAM":"",1:" TEAM")_")"
- DO RET
- +6 QUIT
- +7 ;
- +8 ;
- FUT ; FUTURE SCHEDULED APPTS.
- +1 WRITE !,?5,"Future Scheduled Appointments: "
- +2 NEW SDARRAY,SDCOUNT,SDX,X1,X2,X
- +3 SET X1=DT
- SET X2=$SELECT($DATA(SDFUTNUM):SDFUTNUM,1:30)
- DO C^%DTC
- SET SDX=X
- +4 SET SDARRAY(1)=DT_";"_SDX
- +5 SET SDARRAY("SORT")="P"
- +6 SET SDARRAY(3)="NT;R"
- +7 SET SDARRAY(4)=SDXDFN
- +8 SET SDARRAY("FLDS")="1;2;3;4;10;13"
- +9 SET SDCOUNT=$$SDAPI^SDAMA301(.SDARRAY)
- +10 IF SDCOUNT>0
- Begin DoDot:1
- +11 ;Get info on future scheduled appointments and display it
- +12 ;,SDFUTCNT
- NEW SDFA,SDFNODE,SDFUTDT
- +13 ;S SDFUTCNT=0 ;List up to 6 future appts. for a patient.
- +14 SET SDFA=0
- FOR
- SET SDFA=$ORDER(^TMP($JOB,"SDAMA301",SDXDFN,SDFA))
- if SDFA=""!(SDUP)
- QUIT
- Begin DoDot:2
- +15 ;S SDFUTCNT=SDFUTCNT+1
- SET SDFUTDT=$$FMTE^XLFDT(SDFA,"5")
- SET SDFNODE=^TMP($JOB,"SDAMA301",SDXDFN,SDFA)
- WRITE !,?7,SDFUTDT,?26,$EXTRACT($PIECE($PIECE(SDFNODE,"^",2),";",2),1,30)
- +16 DO RET
- if SDUP
- QUIT
- End DoDot:2
- if SDUP
- QUIT
- +17 QUIT
- End DoDot:1
- if SDUP
- QUIT
- +18 IF SDCOUNT'>0
- Begin DoDot:1
- +19 WRITE "NO APPOINTMENTS SCHEDULED WITHIN "_SDFUTNUM_$SELECT(SDFUTNUM=1:" DAY",1:" DAYS")
- End DoDot:1
- if SDUP
- QUIT
- +20 KILL ^TMP($JOB,"SDAMA301")
- +21 QUIT
- +22 ;
- +23 ;
- RESULTS ;Reminder information
- +1 WRITE !,?5,"Results: "
- +2 KILL ^TMP("PXRHM",$JOB),^TMP("PXRM",$JOB)
- +3 NEW SDCR
- +4 ;S SDCR=$O(^PXD(811.9,"B","VA-MH HIGH RISK NO-SHOW FOLLOW-UP",0))
- +5 SET SDCR=$ORDER(^PXD(811.9,"B","VA-MH HIGH RISK NO-SHOW ADHOC RPT",0))
- +6 ; N DEFARR,FIEVAL
- +7 ; Load the definition into DEFARR.
- +8 ; D DEF^PXRMLDR(SDCR,.DEFARR)
- +9 ; D EVAL^PXRM(SDXDFN,.DEFARR,5,0,.FIEVAL,$P(SDXNODE,"^",2))
- +10 DO MAINDF^PXRM(SDXDFN,SDCR,5,$PIECE(SDXNODE,"^",2))
- +11 NEW SDTXT,SDTXTR,SDRNODE
- +12 SET (SDTXT,SDTXTR)=0
- +13 FOR SDTXT=0:0
- SET SDTXT=$ORDER(^TMP("PXRHM",$JOB,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT))
- if 'SDTXT!(SDTXTR)
- QUIT
- SET SDRNODE=$GET(^TMP("PXRHM",$JOB,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT))
- IF SDRNODE["Resolution:"!(SDRNODE["Information:")
- Begin DoDot:1
- +14 ;N SDTNODE
- +15 WRITE !,?5,^TMP("PXRHM",$JOB,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)
- DO RET
- if SDUP
- QUIT
- Begin DoDot:2
- +16 FOR SDTXT=SDTXT:0
- SET SDTXT=$ORDER(^TMP("PXRHM",$JOB,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT))
- if 'SDTXT
- QUIT
- IF $DATA(^TMP("PXRHM",$JOB,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT))
- Begin DoDot:3
- +17 WRITE !,?5,^TMP("PXRHM",$JOB,SDCR,"High Risk MH No-Show Adhoc Rpt","TXT",SDTXT)
- +18 DO RET
- if SDUP
- QUIT
- QUIT
- End DoDot:3
- +19 SET SDTXTR=1
- +20 ;K ^TMP("PXRHM",$J),^TMP("PXRM",$J) Q
- End DoDot:2
- End DoDot:1
- +21 DO RET
- if SDUP
- QUIT
- +22 KILL ^TMP("PXRHM",$JOB),^TMP("PXRM",$JOB)
- +23 QUIT
- +24 ;
- +25 ;
- PID(DFN) ; Return PID
- +1 ; INPUT - DFN
- +2 ; OUTPUT - PID or 'UNKNOWN'
- +3 NEW VA
- +4 DO PID^VADPT6
- +5 QUIT $SELECT(VA("BID")]"":VA("BID"),1:"UNKNOWN")
- +6 ;
- +7 ;
- RET ;
- +1 IF $EXTRACT(IOST,1,2)="C-"
- IF ($Y+6)>IOSL
- Begin DoDot:1
- +2 SET DIR(0)="E"
- +3 DO ^DIR
- KILL DIR
- +4 IF 'Y
- SET SDUP=1
- QUIT
- +5 KILL SDXFLG(SDXDIV)
- +6 DO HEAD^SDMHAD
- SET SDXFLG(SDXDIV)=1
- SET SDXFLG(SDXDIV,SDXCLIN)=1
- SET SDXFLG(SDXDIV,SDXSTOP)=1
- End DoDot:1
- if SDUP
- QUIT