Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: SDESEDITAPPTREQ

SDESEDITAPPTREQ.m

Go to the documentation of this file.
  1. SDESEDITAPPTREQ ;ALB/BLB,MGD,TJB,BWF,TJB,BLB,LAB,JAS,JAS,JAS,ANU,LAB - SCHEDULING EDIT APPT REQUEST; MAY 10,2024@08:27PM
  1. ;;5.3;Scheduling;**823,826,837,845,846,847,864,871,873,875,877**;Aug 13, 1993;Build 14
  1. ;;Per VHA Directive 6402, this routine should not be modified
  1. ;
  1. ; SDES EDIT APPT REQ
  1. ;
  1. Q
  1. ;
  1. EDITREQUEST(JSONRETURN,REQUEST) ;
  1. N REQIEN,ERRORS,RETURN,ISAPPREQIENVALID,ISDFNVALID,ISDATETIMEVALID,ISEASVALID,INSTITUTIONIEN
  1. N ISCLINSTOPVALID,ISMODALINVALID,ISREQUESTBYVALID,ISPROVIDERVALID,ISPIDVALID,ISPRIGROUPVALID
  1. N ISREQTYPEVALID,ISPRIORITYVALID,ISSERVCONNVALID,ISAPPTTYPEVALID,ISPATSTATVALID
  1. N ISDATEPREFVALID,ISMTRCDATAVALID,ISCPRSDATAVALID
  1. ;
  1. D VALIDATE(.REQUEST,.ERRORS)
  1. I $D(ERRORS) M RETURN=ERRORS D BUILDJSON^SDESBUILDJSON(.JSONRETURN,.RETURN) Q
  1. ;
  1. S RETURN("Request","IEN")=$$BUILDER(.REQUEST)
  1. ;
  1. D BUILDJSON^SDESBUILDJSON(.JSONRETURN,.RETURN)
  1. Q
  1. ;
  1. VALIDATE(REQUEST,ERRORS) ;
  1. ;
  1. S ISAPPREQIENVALID=$$VALIDATEAPPTREQ^SDESEDITAPREQVAL(.ERRORS,$G(REQUEST("REQUEST IEN")))
  1. ;
  1. S ISDFNVALID=$$VALIDATEDFN^SDESEDITAPREQVAL(.ERRORS,$G(REQUEST("DFN")))
  1. ;
  1. S ISDATETIMEVALID=$$VALIDATEDATETIME^SDESEDITAPREQVAL(.ERRORS,.REQUEST)
  1. ;
  1. S ISREQTYPEVALID=$$VALIDATEREQTYPE^SDESEDITAPREQVAL(.ERRORS,$G(REQUEST("REQUEST SUB TYPE")))
  1. ;
  1. S INSTITUTIONIEN=$$STATIONTOINST^SDESEDITAPREQVAL(.ERRORS,$G(REQUEST("STATION NUMBER")),$G(REQUEST("INSTITUTION NAME")))
  1. ;
  1. S ISCLINSTOPVALID=$$VALIDATECLINSTOP^SDESEDITAPREQVAL(.ERRORS,.REQUEST,$G(REQUEST("CLINIC IEN")),$G(REQUEST("STOP CODE")),$G(REQUEST("SECONDARY STOP CODE")))
  1. ;
  1. S ISREQUESTBYVALID=$$VALIDATEREQBY^SDESEDITAPREQVAL(.ERRORS,$G(REQUEST("REQUESTED BY")))
  1. I ISREQUESTBYVALID S REQUEST("REQUESTED BY")=$$SOCEXT2INT^SDESUTIL(409.85,11,$G(REQUEST("REQUESTED BY")))
  1. ;
  1. I $G(REQUEST("REQUESTED BY"))="PROVIDER" S ISPROVIDERVALID=$$VALIDATEPROVIDER(.ERRORS,$G(REQUEST("PROVIDER IEN")))
  1. ;
  1. S ISPIDVALID=$$VALIDATEPID(.ERRORS,.REQUEST)
  1. ;
  1. S ISEASVALID=$$VALIDATEEAS(.ERRORS,$G(REQUEST("EAS")))
  1. ;
  1. I $L($G(REQUEST("MODALITY"))) S ISMODALINVALID=$$VALIDATEMODALITY^SDESINPUTVALUTL(.ERRORS,$G(REQUEST("MODALITY")))
  1. ;
  1. S ISPRIORITYVALID=$$VALIDATEPRIORITY(.ERRORS,$G(REQUEST("PRIORITY")))
  1. I ISPRIORITYVALID S REQUEST("PRIORITY")=$$SOCEXT2INT^SDESUTIL(409.85,10,$G(REQUEST("PRIORITY")))
  1. ;
  1. I $L($G(REQUEST("PRIORITY GROUP"))) S ISPRIGROUPVALID=$$VALIDATEPRIGROUP(.ERRORS,$G(REQUEST("PRIORITY GROUP")))
  1. ;
  1. S ISSERVCONNVALID=$$VALIDATESERVCONN^SDESCREATEAPPREQ(.ERRORS,$G(REQUEST("SERVICE CONNECTED")),$G(REQUEST("SERVICE CONNECTED PERCENTAGE")))
  1. ;
  1. ; Evaluate Appt Type IEN and Appt Type Name together
  1. N SDIEN,SDNAME
  1. S SDIEN=$G(REQUEST("APPOINTMENT TYPE IEN")),SDNAME=$G(REQUEST("APPOINTMENT TYPE NAME"))
  1. S ISAPPTTYPEVALID=$$VALIDATEAPPTTYPE^SDESCREATEAPPREQ(.ERRORS,.SDIEN,SDNAME)
  1. S REQUEST("APPOINTMENT TYPE IEN")=SDIEN
  1. ;
  1. I $L($G(REQUEST("PATIENT STATUS"))) S ISPATSTATVALID=$$VALIDATEPATSTAT(.ERRORS,$G(REQUEST("PATIENT STATUS")))
  1. ;
  1. I $D(REQUEST("PATIENT PREFERRED START DATE")),$D(REQUEST("PATIENT PREFERRED END DATE")) D VALIDATEDATEPREF^SDESEDITAPPTREQ2(.ERRORS,.REQUEST)
  1. ;
  1. I $D(REQUEST("MRTC")) D VALIDATEMRTCDATA(.ERRORS,.REQUEST,$G(REQUEST("MRTC","PARENT REQUEST")),$G(REQUEST("MRTC","NEEDED")),$G(REQUEST("MRTC","DAYS BETWEEN APPTS")),$G(REQUEST("MRTC","HOW MANY NEEDED")))
  1. I $G(REQUEST("REQUEST COMMENT"))]"" D VALREQCOM(.ERRORS,.REQUEST)
  1. Q
  1. ;
  1. BUILDER(REQUEST) ;
  1. N FDA,FDAERR,RETURNIEN
  1. S REQIEN=$G(REQUEST("REQUEST IEN"))_","
  1. S FDA(409.85,REQIEN,.01)=$G(REQUEST("DFN"))
  1. S FDA(409.85,REQIEN,.02)=$G(REQUEST("PATIENT STATUS"))
  1. S FDA(409.85,REQIEN,1)=$G(REQUEST("CREATE DATE"))
  1. S FDA(409.85,REQIEN,2)=$G(INSTITUTIONIEN)
  1. S FDA(409.85,REQIEN,4)=$G(REQUEST("REQUEST SUB TYPE"))
  1. S FDA(409.85,REQIEN,5)=$G(REQUEST("VAOS GUID"))
  1. S FDA(409.85,REQIEN,6)=$G(REQUEST("MODALITY"))
  1. S FDA(409.85,REQIEN,8)=$G(REQUEST("CLINIC IEN"))
  1. S FDA(409.85,REQIEN,8.5)=$G(REQUEST("STOP CODE"))
  1. S FDA(409.85,REQIEN,8.6)=$G(REQUEST("SECONDARY STOP CODE"))
  1. S FDA(409.85,REQIEN,8.7)=$G(REQUEST("APPOINTMENT TYPE IEN"))
  1. S FDA(409.85,REQIEN,9)=$G(DUZ)
  1. S FDA(409.85,REQIEN,9.5)=$$NOW^XLFDT
  1. S FDA(409.85,REQIEN,10)=$G(REQUEST("PRIORITY"))
  1. S FDA(409.85,REQIEN,10.5)=$G(REQUEST("PRIORITY GROUP"))
  1. S FDA(409.85,REQIEN,11)=$G(REQUEST("REQUESTED BY"))
  1. S FDA(409.85,REQIEN,12)=$G(REQUEST("PROVIDER IEN"))
  1. S FDA(409.85,REQIEN,14)=$G(REQUEST("SERVICE CONNECTED PERCENTAGE"))
  1. S FDA(409.85,REQIEN,15)=$G(REQUEST("SERVICE CONNECTED"))
  1. ; Removed the update to PID since it occurs in ADDPIDHISTORY as well and the Original PID is needed for ADDPIDHISTORY
  1. ;S FDA(409.85,REQIEN,22)=$G(REQUEST("PATIENT INDICATED DATE"))
  1. S FDA(409.85,REQIEN,25)=$TR($G(REQUEST("REQUEST COMMENT")),"^"," ")
  1. S FDA(409.85,REQIEN,41)=$G(REQUEST("MRTC","NEEDED"))
  1. S FDA(409.85,REQIEN,42)=$G(REQUEST("MRTC","DAYS BETWEEN APPTS"))
  1. S FDA(409.85,REQIEN,43)=$G(REQUEST("MRTC","HOW MANY NEEDED"))
  1. I $G(REQUEST("MRTC","PARENT REQUEST"))'="" S FDA(409.85,REQIEN,43.8)=$G(REQUEST("MRTC","PARENT REQUEST"))
  1. S FDA(409.85,REQIEN,46)=$G(REQUEST("CPRS ORDER NUMBER"))
  1. S FDA(409.85,REQIEN,47)=$G(REQUEST("CPRS TIME SENSITIVE"))
  1. S FDA(409.85,REQIEN,100)=$G(REQUEST("EAS"))
  1. D FILE^DIE(,"FDA","FDAERR") K FDA
  1. ;
  1. D ADDPIDHISTORY^SDESCREATEAPPREQ($G(REQUEST("REQUEST IEN")),$G(REQUEST("PATIENT INDICATED DATE")))
  1. ;
  1. I $D(REQUEST("CPRS PREREQUISITES")) D EDITCPRSPREREQS(.REQUEST,$G(REQUEST("REQUEST IEN")))
  1. ;
  1. I $D(REQUEST("PATIENT COMMENT"))!($D(REQUEST("PATIENT PREFERRED START DATE"))) D BUILDCOMMENTS(.REQUEST,$G(REQUEST("REQUEST IEN")))
  1. ;
  1. I $D(REQUEST("MRTC","PATIENT INDICATED DATE")) D EDITMRTCPID(.REQUEST,$G(REQUEST("REQUEST IEN")))
  1. ;
  1. I $D(REQUEST("MRTC","CHILD REQUEST"))!($D(REQUEST("MRTC","MRTC APPOINTMENT"))) D EDITMRTCLINKS(.REQUEST,$G(REQUEST("REQUEST IEN")))
  1. ;
  1. D AUDIT($G(REQUEST("REQUEST IEN")),$G(REQUEST("CLINIC IEN")),$G(REQUEST("STOP CODE")))
  1. ;
  1. Q $G(REQUEST("REQUEST IEN"))
  1. ;
  1. ;877
  1. BUILDAPPTDATA(REQIEN,APPTDATETIME,CLINICIEN,SERVCONNPERC,SERVCONN,APPTTYPE,EAS,SDUSER,APPTMSG) ;
  1. N FDA,FDAERR,ERROR
  1. S REQIEN=$G(REQIEN)_","
  1. S FDA(409.85,REQIEN,8.7)=$G(APPTTYPE)
  1. S FDA(409.85,REQIEN,13)=$G(APPTDATETIME)
  1. S FDA(409.85,REQIEN,13.1)=$P($$NOW^XLFDT,".",1)
  1. S FDA(409.85,REQIEN,13.2)=$G(CLINICIEN)
  1. S FDA(409.85,REQIEN,13.3)=$$GET1^DIQ(44,$G(CLINICIEN),3,"I") ; appt institution ;
  1. S FDA(409.85,REQIEN,13.4)=$$GET1^DIQ(44,$G(CLINICIEN),8,"I") ; appt stop code
  1. S FDA(409.85,REQIEN,13.6)=$$GET1^DIQ(40.8,$$GET1^DIQ(44,$G(CLINICIEN),3.5,"I"),1,"I") ; appt station number
  1. ;
  1. S:$G(SDUSER)="" SDUSER=DUZ
  1. S FDA(409.85,REQIEN,13.7)=SDUSER
  1. S FDA(409.85,REQIEN,13.8)="R" ; 'R' FOR Scheduled/Kept;
  1. S FDA(409.85,REQIEN,14)=$G(SERVCONNPERC)
  1. S FDA(409.85,REQIEN,15)=$G(SERVCONN)
  1. S FDA(409.85,REQIEN,100)=$G(EAS)
  1. S FDA(409.85,REQIEN,19)=$P($$NOW^XLFDT,".",1)
  1. ;877
  1. S FDA(409.85,REQIEN,20)=SDUSER
  1. ;
  1. S FDA(409.85,REQIEN,21)=$$FIND1^DIC(409.853,,"B","REMOVED/SCHEDULED-ASSIGNED")
  1. S FDA(409.85,REQIEN,23)="C"
  1. D FILE^DIE(,"FDA","FDAERR") K FDA
  1. I $$GET1^DIQ(409.85,REQIEN,4,"I")="RTC" D UPDATEORDER(.APPTMSG,$P(REQIEN,",",1),SDUSER)
  1. ;
  1. N PARENTIEN
  1. S PARENTIEN=$$GET1^DIQ(409.85,REQIEN_",",43.8,"I")
  1. I PARENTIEN D
  1. . N CHILDIEN,FOUND
  1. . S CHILDIEN="",FOUND=0
  1. . F S CHILDIEN=$O(^SDEC(409.85,PARENTIEN,2,"B",CHILDIEN)) Q:(CHILDIEN="")!(FOUND) D
  1. . . S FOUND=($$GET1^DIQ(409.85,CHILDIEN_",",23,"E")="OPEN")
  1. . I 'FOUND D
  1. . . S FDA(409.85,PARENTIEN_",",20)=SDUSER
  1. . . S FDA(409.85,PARENTIEN_",",21)=$$FIND1^DIC(409.853,,"B","MRTC PARENT CLOSED")
  1. . . S FDA(409.85,PARENTIEN_",",23)="C"
  1. . . S FDA(409.85,PARENTIEN_",",19)=$P($$NOW^XLFDT,".",1)
  1. . . D FILE^DIE(,"FDA","ERROR") K FDA
  1. . . I $$GET1^DIQ(409.85,PARENTIEN,4,"I")="RTC" D UPDATEORDER(.APPTMSG,PARENTIEN,SDUSER)
  1. Q
  1. ;
  1. UPDATEORDER(APPTMSG,REQUESTIEN,SDUSER) ;Send HL7 to CPRS if RTC request
  1. D ARDISP^SDECHL7(REQUESTIEN,"",SDUSER)
  1. I $D(^TMP($J,"REJECT",REQUESTIEN)) D
  1. . S APPTMSG="Appointment created; however, ORDER status not updated. Please submit ticket."
  1. Q
  1. ;
  1. N NUM,FDA,FDAERR,SUBIEN
  1. S SUBIEN=0,NUM=0
  1. F S SUBIEN=$O(^SDEC(409.85,REQIEN,2,SUBIEN)) Q:'SUBIEN D
  1. .S NUM=NUM+1
  1. .S FDA(409.852,SUBIEN_","_REQIEN_",",.01)=$G(REQUEST("MRTC","CHILD REQUEST",NUM))
  1. .S FDA(409.852,SUBIEN_","_REQIEN_",",.02)=$G(REQUEST("MRTC","MRTC APPOINTMENT",NUM))
  1. .D FILE^DIE(,"FDA","FDAERR") K FDA
  1. Q
  1. ;
  1. EDITMRTCPID(REQUEST,REQIEN) ;
  1. N NUM,FDA,FDAERR,SUBIEN
  1. S SUBIEN=0,NUM=0
  1. F S SUBIEN=$O(^SDEC(409.85,REQIEN,5,SUBIEN)) Q:'SUBIEN D
  1. .S NUM=NUM+1
  1. .S FDA(409.851,SUBIEN_","_REQIEN_",",.01)=$G(REQUEST("MRTC","PATIENT INDICATED DATE",NUM))
  1. .D FILE^DIE(,"FDA","FDAERR") K FDA
  1. Q
  1. ;
  1. N FDA,FDAERR,SUBIEN
  1. S SUBIEN=$O(^SDEC(409.85,REQIEN,2,"B",REQUEST("MRTC","CHILD REQUEST"),0))
  1. S FDA(409.852,SUBIEN_","_REQIEN_",",.02)=$G(REQUEST("MRTC","MRTC APPOINTMENT"))
  1. D UPDATE^DIE(,"FDA",,"FDAERR") K FDA
  1. Q
  1. ;
  1. BUILDMRTCPID(REQUEST,REQIEN) ; called from SDESCREATEAPPT after appt is made from mrtc child
  1. N FDA,FDAERR,SDPID
  1. S SDPID=$G(REQUEST("MRTC","PATIENT INDICATED DATE"))
  1. S:SDPID="" SDPID=$$GET1^DIQ(409.85,REQIEN,22,"I")
  1. Q:$O(^SDEC(409.85,REQIEN,5,"B",SDPID,0))
  1. S FDA(409.851,"+1,"_REQIEN_",",.01)=SDPID
  1. D UPDATE^DIE(,"FDA",,"FDAERR") K FDA
  1. Q
  1. ;
  1. BUILDCOMMENTS(REQUEST,REQIEN) ;
  1. N REQCOMMS,NUM,NUM2,DONE,PREFDATES,PATCOMMS,RANGE,DATERANGE1,DATERANGE2,DATERANGE3,EDITPATCOM
  1. S NUM=0
  1. I $D(REQUEST("PATIENT COMMENT")) D
  1. .N PC S PC="PATIENT COMMENT"
  1. .I $G(REQUEST(PC))'["Patient preferred date range" S EDITPATCOM(1)=$G(REQUEST(PC)) D WP^DIE(409.85,REQIEN_",",60,"","EDITPATCOM") Q
  1. .S EDITPATCOM(1)=$P($G(REQUEST(PC)),"Patient preferred date range",1)
  1. .S DATERANGE1=$P($G(REQUEST(PC)),"Patient preferred date range",2) I $L($G(DATERANGE1)) S EDITPATCOM(2)="Patient preferred date range"_$P($G(REQUEST(PC)),"Patient preferred date range",2)
  1. .S DATERANGE2=$P($G(REQUEST(PC)),"Patient preferred date range",3) I $L($G(DATERANGE2)) S EDITPATCOM(3)="Patient preferred date range"_$P($G(REQUEST(PC)),"Patient preferred date range",3)
  1. .S DATERANGE3=$P($G(REQUEST(PC)),"Patient preferred date range",4) I $L($G(DATERANGE3)) S EDITPATCOM(4)="Patient preferred date range"_$P($G(REQUEST(PC)),"Patient preferred date range",4)
  1. .D WP^DIE(409.85,REQIEN_",",60,"","EDITPATCOM")
  1. Q
  1. ;
  1. EDITCPRSPREREQS(REQUEST,REQIEN) ;
  1. N NUM,FDA,FDAERR,SUBIEN
  1. I '$D(^SDEC(409.85,REQIEN,8)) D BUILDCPRSPREREQS^SDESCREATEAPPREQ(.REQUEST,REQIEN) Q
  1. S SUBIEN=0,NUM=0
  1. F S SUBIEN=$O(^SDEC(409.85,REQIEN,8,SUBIEN)) Q:'SUBIEN D
  1. .S NUM=NUM+1
  1. .S FDA(409.8548,SUBIEN_","_REQIEN_",",.01)=$G(REQUEST("CPRS PREREQUISITES",NUM))
  1. .D FILE^DIE(,"FDA","FDAERR") K FDA
  1. Q
  1. ;
  1. AUDIT(REQIEN,CLINICIEN,STOPCODE) ;
  1. N FDA,FDAERR
  1. S FDA(409.8545,"+1,"_REQIEN_",",.01)=$$NOW^XLFDT
  1. S FDA(409.8545,"+1,"_REQIEN_",",1)=$G(DUZ)
  1. S FDA(409.8545,"+1,"_REQIEN_",",2)=$G(CLINICIEN)
  1. S FDA(409.8545,"+1,"_REQIEN_",",3)=$G(STOPCODE)
  1. D UPDATE^DIE("","FDA",,"FDAERR") K FDA
  1. Q
  1. ;
  1. VALIDATEPROVIDER(ERRORS,PROVIDERIEN) ;
  1. I PROVIDERIEN="@" D ERRLOG^SDESJSON(.ERRORS,229) Q 0
  1. I PROVIDERIEN="" D ERRLOG^SDESJSON(.ERRORS,53) Q 0
  1. I PROVIDERIEN'="",'$D(^VA(200,PROVIDERIEN,0)) D ERRLOG^SDESJSON(.ERRORS,54) Q 0
  1. Q 1
  1. ;
  1. VALIDATEPID(ERRORS,REQUEST) ;
  1. N REQUESTIEN,OLDPID
  1. S REQUESTIEN=$G(REQUEST("REQUEST IEN"))
  1. S OLDPID=$$GET1^DIQ(409.85,REQUESTIEN,22,"I")
  1. I $G(REQUEST("PATIENT INDICATED DATE"))="@" D ERRLOG^SDESJSON(.ERRORS,229) Q 0
  1. I $G(REQUEST("PATIENT INDICATED DATE"))="" D ERRLOG^SDESJSON(.ERRORS,159) Q 0
  1. I $G(REQUEST("PATIENT INDICATED DATE"))'="" S REQUEST("PATIENT INDICATED DATE")=$$ISOTFM^SDAMUTDT($G(REQUEST("PATIENT INDICATED DATE")))
  1. I $G(REQUEST("PATIENT INDICATED DATE"))=-1 D ERRLOG^SDESJSON(.ERRORS,160) Q 0
  1. I REQUESTIEN,$$DUPPIDCHK^SDES2CANCELAPPT(REQUESTIEN,$G(REQUEST("PATIENT INDICATED DATE"))) D ERRLOG^SDESJSON(.ERRORS,545) Q 0
  1. Q 1
  1. ;
  1. VALIDATEEAS(ERRORS,EAS) ;
  1. I $L(EAS) S EAS=$$EASVALIDATE^SDESUTIL($G(EAS))
  1. I $P($G(EAS),U)=-1 D ERRLOG^SDESJSON(.ERRORS,142) Q 0
  1. Q 1
  1. ;
  1. VALIDATEPRIORITY(ERRORS,PRIORITY) ;
  1. I PRIORITY="" D ERRLOG^SDESJSON(.ERRORS,457) Q 0
  1. I PRIORITY'="ASAP",PRIORITY'="FUTURE" D ERRLOG^SDESJSON(.ERRORS,211) Q 0
  1. Q 1
  1. ;
  1. VALIDATEPRIGROUP(ERRORS,GROUP) ;
  1. N NUM,FOUND,GCHECK
  1. S NUM=0,FOUND=0
  1. F NUM=1:1:8 D
  1. .S GCHECK="GROUP "_NUM
  1. .I GROUP=GCHECK S REQUEST("PRIORITY GROUP")=NUM S FOUND=1
  1. I FOUND=0 D ERRLOG^SDESJSON(.ERRORS,199) Q 0
  1. Q 1
  1. ;
  1. VALIDATEPATSTAT(ERRORS,PATIENTSTATUS) ;
  1. I PATIENTSTATUS'="NEW",PATIENTSTATUS'="ESTABLISHED" D ERRLOG^SDESJSON(.ERRORS,203) Q 0
  1. S REQUEST("PATIENT STATUS")=$S(PATIENTSTATUS="NEW":"N",PATIENTSTATUS="ESTABLISHED":"E",1:"")
  1. Q 1
  1. ;
  1. VALIDATEMRTCDATA(ERRORS,REQUEST,PARENTREQUEST,NEEDED,DAYSBETWEEN,HOWMANY) ;
  1. N NUM,DONE,CNT
  1. I NEEDED'="YES" D Q ""
  1. .I $G(PARENTREQUEST)!($G(DAYSBETWEEN))!($G(HOWMANY)) D ERRLOG^SDESJSON(.ERRORS,233)
  1. I NEEDED'="",NEEDED'="YES",NEEDED'="NO" D ERRLOG^SDESJSON(.ERRORS,208) Q
  1. ;
  1. I PARENTREQUEST'="",('$D(^SDEC(409.85,PARENTREQUEST)))!(PARENTREQUEST=0) D ERRLOG^SDESJSON(.ERRORS,207)
  1. ;
  1. I DAYSBETWEEN'="" D
  1. .I '+DAYSBETWEEN!(DAYSBETWEEN'<366) D ERRLOG^SDESJSON(.ERRORS,209)
  1. ;
  1. I HOWMANY'="" D
  1. .I '+HOWMANY!(HOWMANY'<101) D ERRLOG^SDESJSON(.ERRORS,210)
  1. ;
  1. I $D(REQUEST("MRTC","PATIENT INDICATED DATE")) D
  1. .S NUM=0,DONE=0
  1. .F S NUM=$O(REQUEST("MRTC","PATIENT INDICATED DATE",NUM)) Q:'NUM!(DONE=1) D
  1. ..S REQUEST("MRTC","PATIENT INDICATED DATE",NUM)=$$ISOTFM^SDAMUTDT($G(REQUEST("MRTC","PATIENT INDICATED DATE",NUM)))
  1. ..I $G(REQUEST("MRTC","PATIENT INDICATED DATE",NUM))=-1 D ERRLOG^SDESJSON(.ERRORS,215) S DONE=1 Q
  1. ;
  1. I $D(REQUEST("MRTC","CHILD REQUEST"))!($D(REQUEST("MRTC","MRTC APPOINTMENT"))) D
  1. .S CNT=0,DONE=0
  1. .F S CNT=$O(REQUEST("MRTC","CHILD REQUEST",CNT)) Q:'CNT!(DONE=1) D
  1. ..I '$D(^SDEC(409.85,$G(REQUEST("MRTC","CHILD REQUEST",CNT)),0)) D ERRLOG^SDESJSON(.ERRORS,216) S DONE=1 Q
  1. ..I '$D(^SDEC(409.84,$G(REQUEST("MRTC","MRTC APPOINTMENT",CNT)),0)) D ERRLOG^SDESJSON(.ERRORS,217) S DONE=1 Q
  1. Q
  1. VALREQCOM(ERRORS,REQUEST) ;
  1. S REQUEST("REQUEST COMMENT")=$TR(REQUEST("REQUEST COMMENT"),"^"," ")
  1. I $L($G(REQUEST("REQUEST COMMENT")))>80 D ERRLOG^SDESJSON(.ERRORS,443)
  1. Q