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

SDECRECREQ.m

Go to the documentation of this file.
SDECRECREQ   ;ALB/SAT/JSM,WTC,LAB,LEG,KML - VISTA SCHEDULING RPCS (SOURCE FROM SDEC08) ;April 20, 2022
 ;;5.3;Scheduling;**790,792,805,815**;Aug 13, 1993;Build 4
 ;;Per VHA Directive 2004-038, this routine should not be modified
 ;
 ; Reference to ^DPT (Patient File) is supported by IA #7030
 Q
 ;
RECREQ(SDECY,SDECAPTID,SDAPTYP,NEWPID,SDECTYP) ;for Recall Requests
 ; VSE-863; 6/6/2021 ; create new "APPT" Request if A "RECALL" Appt is Cancelled
 ;I $P(SDAPTYP,";",2)="SD(403.5," D  ; RECALL
 N PTR,SD40350PRV,SD40350REC,SD40354PRV,SD4035IEN,SD409840REC,SD409842REC,SDCLN,SDCLNR,SDPROVNAM,IEN40985,SD409841COM
 N CANCHANGEPID,PIDH,RECOPENYN
 S SD409840REC=^SDEC(409.84,SDECAPTID,0) ; APPT
 ; Only re-open Appt Request for approved Cancellation Reasons VSE-1112
 S RECOPENYN=$$GET1^DIQ(409.2,$P(SD409840REC,U,22),5,"I")
 Q:RECOPENYN=0
 S SD409842REC=$G(^SDEC(409.84,SDECAPTID,2)) ; REQ record
 ; start COMMENTS multiple process ;VSE-1218;**792
 S SD409841COM=$G(^SDEC(409.84,SDECAPTID,1,1,0))
 N I,L,ZZ
 S L=$L(SD409841COM,$C(13,10))
 I L>1 F I=1:1:L S $P(ZZ," | ",I)=$P(SD409841COM,$C(13,10),I) I I=L S:$L(ZZ)>80 ZZ=$E(ZZ,1,77)_"..." S SD409841COM=ZZ
 ; end COMMENTS multiple process
 S PTR=$P(SD409842REC,";",1)
 S SDCLNR=$P(SD409840REC,U,7)
 S SDCLN=$$GET1^DIQ(409.831,SDCLNR,.04,"I")
 S SDECFDA(409.85,"+1,",.01)=$P(SD409840REC,U,5) ;     DFN
 S SDECFDA(409.85,"+1,",1)=$P($$NOW^XLFDT,".",1)
 S SDECFDA(409.85,"+1,",2)=$$GET1^DIQ(44,SDCLN,3,"I") ;INSTIT
 S SDECFDA(409.85,"+1,",4)="APPT"
 S SDECFDA(409.85,"+1,",8.7)=$P(SD409840REC,U,6) ;     REQ APPT TIME
 S SDECFDA(409.85,"+1,",.02)=$P(SD409842REC,U,2) ;     PAT STATUS
 S SDECFDA(409.85,"+1,",8)=SDCLN ;                     REQ SPECIFIC CLINIC
 S SDECFDA(409.85,"+1,",9)=DUZ ;                       ORIG USER
 S SDECFDA(409.85,"+1,",10)="F" ;                      PRIORITY
 S SDECFDA(409.85,"+1,",11)=1 ;                        REQ BY
 S SDECFDA(409.85,"+1,",12)=$P(SD409840REC,"^",16) ;   PROV
 I $G(NEWPID)="" D
 .S SDECFDA(409.85,"+1,",22)=$P(SD409840REC,U,20) ;    PID
 I $G(NEWPID)'="" D
 .S SDECFDA(409.85,"+1,",22)=NEWPID
 S SDECFDA(409.85,"+1,",23)="O" ;                      STATUS
 S SDECFDA(409.85,"+1,",25)=SD409841COM ;VSE-1218;**792
 ;**790 corrected REQUEST ptr and added Contact Attempts
 S CANCHANGEPID=$S($G(SDECTYP)="PC":1,$G(SDECTYP)="C":0,1:"")
 S SDECFDA(409.85,"+1,",49)=CANCHANGEPID
 D UPDATE^DIE("","SDECFDA","IEN40985")
 ;I $G(NEWPID)'="" D
 I $G(NEWPID)="" S PIDH=$P(SD409840REC,U,20)
 I $G(NEWPID)'="" S PIDH=$G(NEWPID)
 S FDA(409.854,"+1,"_IEN40985(1)_",",.01)=$$NOW^XLFDT
 S FDA(409.854,"+1,"_IEN40985(1)_",",1)=$G(PIDH)
 S FDA(409.854,"+1,"_IEN40985(1)_",",2)=$$GET1^DIQ(200,DUZ,.01,"E")
 D UPDATE^DIE(,"FDA","PIDHIEN","ERR") K FDA
 S IEN40985=IEN40985(1)
 N REQLINK,DFN40985
 D APPREQLINK
 D CONTACTLINK
 Q
 S DFN40985=$P(SD409840REC,U,5)
 S REQLINK=IEN40985_";SDEC(409.85,"
 S $P(^SDEC(409.84,SDECAPTID,2),"^",1)=REQLINK
 Q
 N IEN40986,REC409860,REC
 S IEN40986="",REC=0
 F  S IEN40986=$O(^SDEC(409.86,"B",DFN40985,IEN40986)) Q:IEN40986=""!(REC=1)  D
 .S REC409860=$G(^SDEC(409.86,IEN40986,0))
 .I PTR'=+$P(REC409860,"^",7) Q  ; SDEC Req
 .K SDECFDA
 .S SDECFDA(409.86,IEN40986_",",2.1)="A"
 .S SDECFDA(409.86,IEN40986_",",2.2)=$P(^SDEC(409.86,IEN40986,1,0),"^",3)+1 ;**792 ;Main Sequence
 .S SDECFDA(409.86,IEN40986_",",2.3)=REQLINK
 .D UPDATE^DIE("","SDECFDA")
 .S REC=1
 Q