- SDES852P ;ALB/BWF - SD*5.3*852 Post Init Routine ; May 24, 2023
- ;;5.3;SCHEDULING;**852**;AUG 13, 1993;Build 3
- ;;Per VHA Directive 6402, this routine should not be modified
- ;
- Q
- ;
- EN ; Scheduling Consult Clean-up
- D TASK
- Q
- ;
- TASK ;
- D MES^XPDUTL("")
- D MES^XPDUTL(" SD*5.3*852 Pre-Install is being queued to run in the background.")
- D MES^XPDUTL(" This PRE-install will report consult requests for appointments that")
- D MES^XPDUTL(" have been cancelled, where the consult request was not properly re-opened")
- D MES^XPDUTL(" due to a <PARAMETER> error during appointment cancellation.")
- D MES^XPDUTL(" This report will be sent to your Mailman Mailbox.")
- D MES^XPDUTL("")
- N ZTDESC,ZTRTN,ZTIO,ZTSK,X,ZTDTH,ZTSAVE
- S ZTDESC="SD*5.3*852 Post Install Routine"
- D NOW^%DTC S ZTDTH=X,ZTIO="",ZTRTN="FIXCONSREQS^SDES852P",ZTSAVE("*")="" D ^%ZTLOAD
- I $D(ZTSK) D
- . D MES^XPDUTL(" >>>Task "_ZTSK_" has been queued.")
- . D MES^XPDUTL("")
- I '$D(ZTSK) D
- . D MES^XPDUTL(" UNABLE TO QUEUE THIS JOB.")
- . D MES^XPDUTL(" Please contact the National Help Desk to report this issue.")
- Q
- FIXCONSREQS ; fix consult requests that were not correctly re-opened
- N CANDTTM,POINTER,CONSIEN,CPRSSTAT,APPTSTARTTIME,APPTIEN,DFN,REQUESTIEN,PROVIEN,NOTE
- N RESOURCE,CANBYCLINORPAT,CLINICIEN,APPTLENGTH,SDATA,RETURN,BEFOREDATA,CNT,PATNM,SDLINE,TOTCNT
- N RESPAPPTIEN,SCHIEN,ORDERIEN
- S (TOTCNT,CNT)=0
- K ^XTMP("SDES852P")
- S ^XTMP("SDES852P",0)=$$FMADD^XLFDT(DT,30)_"^"_DT_"^SD*5.3*852 Post Install Data report"
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)="******************** IMPORTANT *****************************"
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)="PLEASE SEND THIS REPORT TO YOUR LOCAL SCHEDULING STAFF TO"
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)="RESOLVE ACTIVE CONSULTS AND CONSULTS IN A SCHEDULED STATUS"
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)="WITHOUT A LINKED SCHEDULED APPOINTMENT."
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)="****************************************************************"
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)=""
- ;
- S $P(SDLINE,"-",80)=""
- S SCHIEN=$O(^ORD(100.01,"B","SCHEDULED",0)) Q:'SCHIEN
- S ORDERIEN=0 F S ORDERIEN=$O(^GMR(123,"D",SCHIEN,ORDERIEN)) Q:'ORDERIEN D
- .S DFN=$$GET1^DIQ(123,ORDERIEN,.02,"I") Q:'DFN
- .S POINTER=ORDERIEN_";GMR(123,"
- .; check if this has been re-scheduled
- .S RESCHED=$$RESCHEDULED(DFN,POINTER)
- .I $P(RESCHED,U)=1 Q
- .; appointment responsible for the incorrect consult status
- .S RESPAPPTIEN=$P(RESCHED,U,2) Q:'RESPAPPTIEN
- .; SETUP REQUIRED VARIABLES
- .S APPTSTARTTIME=$$GET1^DIQ(409.84,RESPAPPTIEN,.01,"I")
- .S NOTE="Re-opened request - SD*5.3*852"
- .S REQUESTIEN=ORDERIEN
- .S CANBYCLINORPAT=$$GET1^DIQ(409.84,RESPAPPTIEN,.17,"I")
- .S RESOURCE=$$GET1^DIQ(409.84,RESPAPPTIEN,.07,"I") Q:'RESOURCE
- .S CLINICIEN=$$GET1^DIQ(409.831,RESOURCE,.04,"I") Q:'CLINICIEN
- .; PROVIEN is not used by the api, just set to null
- .S PROVIEN=""
- .; only fix entries cancelled by SDESOITEAS,SRV
- .I $$GET1^DIQ(409.84,RESPAPPTIEN,.121,"E")="SDESOITEAS,SRV" D
- ..S BEFOREDATA=$$BEFOREEVENT($G(DFN),$G(APPTSTARTTIME),$G(CLINICIEN),.SDATA)
- ..; re-open the consult request - cancelled appointment
- ..D REQSET^SDESCONSULTUPD(REQUESTIEN,PROVIEN,"",2,CANBYCLINORPAT,NOTE,APPTSTARTTIME,RESOURCE)
- ..; update contact main sequence upon re-open
- ..D UPDCONTSEQ^SDESCONTACTS($G(DFN),$G(REQUESTIEN))
- ..S APPTLENGTH=$$GET1^DIQ(409.84,RESPAPPTIEN,.18,"I")
- ..; update clinic availability
- ..D AVUPDT^SDEC08A(CLINICIEN,APPTSTARTTIME,APPTLENGTH)
- ..D AFTEREVENT($G(DFN),$G(APPTSTARTTIME),$G(CLINICIEN),$G(BEFOREDATA),.SDATA)
- ..; Update AMIE C&P EXAM TRACKING (#396.95) record if this appointment is a Compensation and Pension appointment
- ..I $$GET1^DIQ(409.84,RESPAPPTIEN,.06,"E")="COMPENSATION & PENSION" D AMIECAN^SDESCOMPPEN(.RETURN,DFN,APPTSTARTTIME)
- .S TOTCNT=TOTCNT+1
- .S PATNM=$$GET1^DIQ(2,DFN,.01,"E")
- .S CNT=CNT+1
- .S ^XTMP("SDES852P",CNT)=""
- .S CNT=CNT+1
- .S ^XTMP("SDES852P",CNT)="Appointment Date/Time : "_$$FMTE^XLFDT(APPTSTARTTIME)
- .S CNT=CNT+1
- .S ^XTMP("SDES852P",CNT)="Appointment IEN : "_RESPAPPTIEN
- .S CNT=CNT+1
- .S ^XTMP("SDES852P",CNT)="Consult IEN : "_ORDERIEN
- .S CNT=CNT+1
- .S ^XTMP("SDES852P",CNT)="Consult Status : "_$$GET1^DIQ(123,ORDERIEN,8,"E")
- .I $$GET1^DIQ(409.84,RESPAPPTIEN,.12,"I") D
- ..S CNT=CNT+1
- ..S ^XTMP("SDES852P",CNT)="Canceled Date/Time : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.12,"E")
- ..S CNT=CNT+1
- ..S ^XTMP("SDES852P",CNT)="Canceled By : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.121,"E")
- .I $$GET1^DIQ(409.84,RESPAPPTIEN,.1,"I") D
- ..S CNT=CNT+1
- ..S ^XTMP("SDES852P",CNT)="Noshow Date/Time : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.101,"E")
- ..S CNT=CNT+1
- ..S ^XTMP("SDES852P",CNT)="Noshow By : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.102,"E")
- .S CNT=CNT+1
- .S ^XTMP("SDES852P",CNT)=SDLINE
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)=""
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)=SDLINE
- S CNT=CNT+1
- S ^XTMP("SDES852P",CNT)="Total: "_TOTCNT
- D MAIL
- Q
- RESCHEDULED(DFN,VARPTR) ;
- N DTLOOP,CHECKAPTIEN,CHKPTR,RESCHED,CANDT,NOSHOWDT,LASTNOSHOWCAN,NOSHOWCANAPTIEN
- K ^TMP("SDES852P",$J)
- S RESCHED=0
- S DTLOOP=0 F S DTLOOP=$O(^SDEC(409.84,"APTDT",DFN,DTLOOP)) Q:'DTLOOP D
- .S CHECKAPTIEN=0 F S CHECKAPTIEN=$O(^SDEC(409.84,"APTDT",DFN,DTLOOP,CHECKAPTIEN)) Q:'CHECKAPTIEN D
- ..; only records that point to the same consult
- ..S CHKPTR=$$GET1^DIQ(409.84,CHECKAPTIEN,.22,"I")
- ..I CHKPTR'=VARPTR Q
- ..; cancellation date/time
- ..S CANDT=$$GET1^DIQ(409.84,CHECKAPTIEN,.12,"I")
- ..; no-show date/time
- ..S NOSHOWDT=$$GET1^DIQ(409.84,CHECKAPTIEN,.1,"I")
- ..;log cancel and no-show dates with appointmet IEN
- ..I CANDT S ^TMP("SDES852P",$J,CANDT,CHECKAPTIEN)=""
- ..I NOSHOWDT S ^TMP("SDES852P",$J,NOSHOWDT,CHECKAPTIEN)=""
- ..I 'CANDT,'NOSHOWDT S RESCHED=CHECKAPTIEN
- I 'RESCHED D Q 0_U_$G(NOSHOWCANAPTIEN)
- .S LASTNOSHOWCAN=$O(^TMP("SDES852P",$J,999999999),-1)
- .I $G(LASTNOSHOWCAN) S NOSHOWCANAPTIEN=$O(^TMP("SDES852P",$J,LASTNOSHOWCAN,0))
- K ^TMP("SDES852P",$J)
- Q 1_U_RESCHED
- ;
- AFTEREVENT(DFN,APPTSTARTTIME,CLINICIEN,SDDA,SDATA) ;
- N SDCPHDL
- S SDCPHDL=$$HANDLE^SDAMEVT(1)
- S SDATA=SDDA_U_DFN_U_APPTSTARTTIME_U_CLINICIEN
- D CANCEL^SDAMEVT(.SDATA,DFN,APPTSTARTTIME,CLINICIEN,SDDA,2,SDCPHDL)
- Q
- BEFOREEVENT(DFN,APPTSTARTTIME,CLINICIEN,SDATA) ;
- N SDDA,SDCPHDL
- S SDDA=$$SCIEN^SDECU2(DFN,CLINICIEN,APPTSTARTTIME)
- S SDCPHDL=$$HANDLE^SDAMEVT(1),SDATA=SDDA_U_DFN_U_APPTSTARTTIME_U_CLINICIEN
- D BEFORE^SDAMEVT(.SDATA,DFN,APPTSTARTTIME,CLINICIEN,SDDA,SDCPHDL)
- Q $G(SDDA)
- MAIL ;
- ; Get Station Number
- ;
- N STANUM,MESS1,XMTEXT,XMSUB,XMY,XMDUZ,DIFROM
- S STANUM=$$KSP^XUPARAM("INST")_","
- S STANUM=$$GET1^DIQ(4,STANUM,99)
- S MESS1="Station: "_STANUM_" - "
- ;
- ; Send MailMan message
- S XMDUZ=DUZ
- S XMTEXT="^XTMP(""SDES852P"","
- S XMSUB=MESS1_"SD*5.3*852 post install - Re-opened Consults Report"
- S XMDUZ=.5,XMY(DUZ)="",XMY(XMDUZ)=""
- S XMY("DUNNAM.DAVID W@DOMAIN.EXT")=""
- S XMY("REESE,DARRYL M@DOMAIN.EXT")=""
- S XMY("FISHER.BRADLEY@DOMAIN.EXT")=""
- D ^XMD
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HSDES852P 7119 printed Feb 19, 2025@00:21:41 Page 2
- SDES852P ;ALB/BWF - SD*5.3*852 Post Init Routine ; May 24, 2023
- +1 ;;5.3;SCHEDULING;**852**;AUG 13, 1993;Build 3
- +2 ;;Per VHA Directive 6402, this routine should not be modified
- +3 ;
- +4 QUIT
- +5 ;
- EN ; Scheduling Consult Clean-up
- +1 DO TASK
- +2 QUIT
- +3 ;
- TASK ;
- +1 DO MES^XPDUTL("")
- +2 DO MES^XPDUTL(" SD*5.3*852 Pre-Install is being queued to run in the background.")
- +3 DO MES^XPDUTL(" This PRE-install will report consult requests for appointments that")
- +4 DO MES^XPDUTL(" have been cancelled, where the consult request was not properly re-opened")
- +5 DO MES^XPDUTL(" due to a <PARAMETER> error during appointment cancellation.")
- +6 DO MES^XPDUTL(" This report will be sent to your Mailman Mailbox.")
- +7 DO MES^XPDUTL("")
- +8 NEW ZTDESC,ZTRTN,ZTIO,ZTSK,X,ZTDTH,ZTSAVE
- +9 SET ZTDESC="SD*5.3*852 Post Install Routine"
- +10 DO NOW^%DTC
- SET ZTDTH=X
- SET ZTIO=""
- SET ZTRTN="FIXCONSREQS^SDES852P"
- SET ZTSAVE("*")=""
- DO ^%ZTLOAD
- +11 IF $DATA(ZTSK)
- Begin DoDot:1
- +12 DO MES^XPDUTL(" >>>Task "_ZTSK_" has been queued.")
- +13 DO MES^XPDUTL("")
- End DoDot:1
- +14 IF '$DATA(ZTSK)
- Begin DoDot:1
- +15 DO MES^XPDUTL(" UNABLE TO QUEUE THIS JOB.")
- +16 DO MES^XPDUTL(" Please contact the National Help Desk to report this issue.")
- End DoDot:1
- +17 QUIT
- FIXCONSREQS ; fix consult requests that were not correctly re-opened
- +1 NEW CANDTTM,POINTER,CONSIEN,CPRSSTAT,APPTSTARTTIME,APPTIEN,DFN,REQUESTIEN,PROVIEN,NOTE
- +2 NEW RESOURCE,CANBYCLINORPAT,CLINICIEN,APPTLENGTH,SDATA,RETURN,BEFOREDATA,CNT,PATNM,SDLINE,TOTCNT
- +3 NEW RESPAPPTIEN,SCHIEN,ORDERIEN
- +4 SET (TOTCNT,CNT)=0
- +5 KILL ^XTMP("SDES852P")
- +6 SET ^XTMP("SDES852P",0)=$$FMADD^XLFDT(DT,30)_"^"_DT_"^SD*5.3*852 Post Install Data report"
- +7 SET CNT=CNT+1
- +8 SET ^XTMP("SDES852P",CNT)="******************** IMPORTANT *****************************"
- +9 SET CNT=CNT+1
- +10 SET ^XTMP("SDES852P",CNT)="PLEASE SEND THIS REPORT TO YOUR LOCAL SCHEDULING STAFF TO"
- +11 SET CNT=CNT+1
- +12 SET ^XTMP("SDES852P",CNT)="RESOLVE ACTIVE CONSULTS AND CONSULTS IN A SCHEDULED STATUS"
- +13 SET CNT=CNT+1
- +14 SET ^XTMP("SDES852P",CNT)="WITHOUT A LINKED SCHEDULED APPOINTMENT."
- +15 SET CNT=CNT+1
- +16 SET ^XTMP("SDES852P",CNT)="****************************************************************"
- +17 SET CNT=CNT+1
- +18 SET ^XTMP("SDES852P",CNT)=""
- +19 ;
- +20 SET $PIECE(SDLINE,"-",80)=""
- +21 SET SCHIEN=$ORDER(^ORD(100.01,"B","SCHEDULED",0))
- if 'SCHIEN
- QUIT
- +22 SET ORDERIEN=0
- FOR
- SET ORDERIEN=$ORDER(^GMR(123,"D",SCHIEN,ORDERIEN))
- if 'ORDERIEN
- QUIT
- Begin DoDot:1
- +23 SET DFN=$$GET1^DIQ(123,ORDERIEN,.02,"I")
- if 'DFN
- QUIT
- +24 SET POINTER=ORDERIEN_";GMR(123,"
- +25 ; check if this has been re-scheduled
- +26 SET RESCHED=$$RESCHEDULED(DFN,POINTER)
- +27 IF $PIECE(RESCHED,U)=1
- QUIT
- +28 ; appointment responsible for the incorrect consult status
- +29 SET RESPAPPTIEN=$PIECE(RESCHED,U,2)
- if 'RESPAPPTIEN
- QUIT
- +30 ; SETUP REQUIRED VARIABLES
- +31 SET APPTSTARTTIME=$$GET1^DIQ(409.84,RESPAPPTIEN,.01,"I")
- +32 SET NOTE="Re-opened request - SD*5.3*852"
- +33 SET REQUESTIEN=ORDERIEN
- +34 SET CANBYCLINORPAT=$$GET1^DIQ(409.84,RESPAPPTIEN,.17,"I")
- +35 SET RESOURCE=$$GET1^DIQ(409.84,RESPAPPTIEN,.07,"I")
- if 'RESOURCE
- QUIT
- +36 SET CLINICIEN=$$GET1^DIQ(409.831,RESOURCE,.04,"I")
- if 'CLINICIEN
- QUIT
- +37 ; PROVIEN is not used by the api, just set to null
- +38 SET PROVIEN=""
- +39 ; only fix entries cancelled by SDESOITEAS,SRV
- +40 IF $$GET1^DIQ(409.84,RESPAPPTIEN,.121,"E")="SDESOITEAS,SRV"
- Begin DoDot:2
- +41 SET BEFOREDATA=$$BEFOREEVENT($GET(DFN),$GET(APPTSTARTTIME),$GET(CLINICIEN),.SDATA)
- +42 ; re-open the consult request - cancelled appointment
- +43 DO REQSET^SDESCONSULTUPD(REQUESTIEN,PROVIEN,"",2,CANBYCLINORPAT,NOTE,APPTSTARTTIME,RESOURCE)
- +44 ; update contact main sequence upon re-open
- +45 DO UPDCONTSEQ^SDESCONTACTS($GET(DFN),$GET(REQUESTIEN))
- +46 SET APPTLENGTH=$$GET1^DIQ(409.84,RESPAPPTIEN,.18,"I")
- +47 ; update clinic availability
- +48 DO AVUPDT^SDEC08A(CLINICIEN,APPTSTARTTIME,APPTLENGTH)
- +49 DO AFTEREVENT($GET(DFN),$GET(APPTSTARTTIME),$GET(CLINICIEN),$GET(BEFOREDATA),.SDATA)
- +50 ; Update AMIE C&P EXAM TRACKING (#396.95) record if this appointment is a Compensation and Pension appointment
- +51 IF $$GET1^DIQ(409.84,RESPAPPTIEN,.06,"E")="COMPENSATION & PENSION"
- DO AMIECAN^SDESCOMPPEN(.RETURN,DFN,APPTSTARTTIME)
- End DoDot:2
- +52 SET TOTCNT=TOTCNT+1
- +53 SET PATNM=$$GET1^DIQ(2,DFN,.01,"E")
- +54 SET CNT=CNT+1
- +55 SET ^XTMP("SDES852P",CNT)=""
- +56 SET CNT=CNT+1
- +57 SET ^XTMP("SDES852P",CNT)="Appointment Date/Time : "_$$FMTE^XLFDT(APPTSTARTTIME)
- +58 SET CNT=CNT+1
- +59 SET ^XTMP("SDES852P",CNT)="Appointment IEN : "_RESPAPPTIEN
- +60 SET CNT=CNT+1
- +61 SET ^XTMP("SDES852P",CNT)="Consult IEN : "_ORDERIEN
- +62 SET CNT=CNT+1
- +63 SET ^XTMP("SDES852P",CNT)="Consult Status : "_$$GET1^DIQ(123,ORDERIEN,8,"E")
- +64 IF $$GET1^DIQ(409.84,RESPAPPTIEN,.12,"I")
- Begin DoDot:2
- +65 SET CNT=CNT+1
- +66 SET ^XTMP("SDES852P",CNT)="Canceled Date/Time : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.12,"E")
- +67 SET CNT=CNT+1
- +68 SET ^XTMP("SDES852P",CNT)="Canceled By : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.121,"E")
- End DoDot:2
- +69 IF $$GET1^DIQ(409.84,RESPAPPTIEN,.1,"I")
- Begin DoDot:2
- +70 SET CNT=CNT+1
- +71 SET ^XTMP("SDES852P",CNT)="Noshow Date/Time : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.101,"E")
- +72 SET CNT=CNT+1
- +73 SET ^XTMP("SDES852P",CNT)="Noshow By : "_$$GET1^DIQ(409.84,RESPAPPTIEN,.102,"E")
- End DoDot:2
- +74 SET CNT=CNT+1
- +75 SET ^XTMP("SDES852P",CNT)=SDLINE
- End DoDot:1
- +76 SET CNT=CNT+1
- +77 SET ^XTMP("SDES852P",CNT)=""
- +78 SET CNT=CNT+1
- +79 SET ^XTMP("SDES852P",CNT)=SDLINE
- +80 SET CNT=CNT+1
- +81 SET ^XTMP("SDES852P",CNT)="Total: "_TOTCNT
- +82 DO MAIL
- +83 QUIT
- RESCHEDULED(DFN,VARPTR) ;
- +1 NEW DTLOOP,CHECKAPTIEN,CHKPTR,RESCHED,CANDT,NOSHOWDT,LASTNOSHOWCAN,NOSHOWCANAPTIEN
- +2 KILL ^TMP("SDES852P",$JOB)
- +3 SET RESCHED=0
- +4 SET DTLOOP=0
- FOR
- SET DTLOOP=$ORDER(^SDEC(409.84,"APTDT",DFN,DTLOOP))
- if 'DTLOOP
- QUIT
- Begin DoDot:1
- +5 SET CHECKAPTIEN=0
- FOR
- SET CHECKAPTIEN=$ORDER(^SDEC(409.84,"APTDT",DFN,DTLOOP,CHECKAPTIEN))
- if 'CHECKAPTIEN
- QUIT
- Begin DoDot:2
- +6 ; only records that point to the same consult
- +7 SET CHKPTR=$$GET1^DIQ(409.84,CHECKAPTIEN,.22,"I")
- +8 IF CHKPTR'=VARPTR
- QUIT
- +9 ; cancellation date/time
- +10 SET CANDT=$$GET1^DIQ(409.84,CHECKAPTIEN,.12,"I")
- +11 ; no-show date/time
- +12 SET NOSHOWDT=$$GET1^DIQ(409.84,CHECKAPTIEN,.1,"I")
- +13 ;log cancel and no-show dates with appointmet IEN
- +14 IF CANDT
- SET ^TMP("SDES852P",$JOB,CANDT,CHECKAPTIEN)=""
- +15 IF NOSHOWDT
- SET ^TMP("SDES852P",$JOB,NOSHOWDT,CHECKAPTIEN)=""
- +16 IF 'CANDT
- IF 'NOSHOWDT
- SET RESCHED=CHECKAPTIEN
- End DoDot:2
- End DoDot:1
- +17 IF 'RESCHED
- Begin DoDot:1
- +18 SET LASTNOSHOWCAN=$ORDER(^TMP("SDES852P",$JOB,999999999),-1)
- +19 IF $GET(LASTNOSHOWCAN)
- SET NOSHOWCANAPTIEN=$ORDER(^TMP("SDES852P",$JOB,LASTNOSHOWCAN,0))
- End DoDot:1
- QUIT 0_U_$GET(NOSHOWCANAPTIEN)
- +20 KILL ^TMP("SDES852P",$JOB)
- +21 QUIT 1_U_RESCHED
- +22 ;
- AFTEREVENT(DFN,APPTSTARTTIME,CLINICIEN,SDDA,SDATA) ;
- +1 NEW SDCPHDL
- +2 SET SDCPHDL=$$HANDLE^SDAMEVT(1)
- +3 SET SDATA=SDDA_U_DFN_U_APPTSTARTTIME_U_CLINICIEN
- +4 DO CANCEL^SDAMEVT(.SDATA,DFN,APPTSTARTTIME,CLINICIEN,SDDA,2,SDCPHDL)
- +5 QUIT
- BEFOREEVENT(DFN,APPTSTARTTIME,CLINICIEN,SDATA) ;
- +1 NEW SDDA,SDCPHDL
- +2 SET SDDA=$$SCIEN^SDECU2(DFN,CLINICIEN,APPTSTARTTIME)
- +3 SET SDCPHDL=$$HANDLE^SDAMEVT(1)
- SET SDATA=SDDA_U_DFN_U_APPTSTARTTIME_U_CLINICIEN
- +4 DO BEFORE^SDAMEVT(.SDATA,DFN,APPTSTARTTIME,CLINICIEN,SDDA,SDCPHDL)
- +5 QUIT $GET(SDDA)
- MAIL ;
- +1 ; Get Station Number
- +2 ;
- +3 NEW STANUM,MESS1,XMTEXT,XMSUB,XMY,XMDUZ,DIFROM
- +4 SET STANUM=$$KSP^XUPARAM("INST")_","
- +5 SET STANUM=$$GET1^DIQ(4,STANUM,99)
- +6 SET MESS1="Station: "_STANUM_" - "
- +7 ;
- +8 ; Send MailMan message
- +9 SET XMDUZ=DUZ
- +10 SET XMTEXT="^XTMP(""SDES852P"","
- +11 SET XMSUB=MESS1_"SD*5.3*852 post install - Re-opened Consults Report"
- +12 SET XMDUZ=.5
- SET XMY(DUZ)=""
- SET XMY(XMDUZ)=""
- +13 SET XMY("DUNNAM.DAVID W@DOMAIN.EXT")=""
- +14 SET XMY("REESE,DARRYL M@DOMAIN.EXT")=""
- +15 SET XMY("FISHER.BRADLEY@DOMAIN.EXT")=""
- +16 DO ^XMD
- +17 QUIT