1 | SCMCCON ;ALB/REW - Patient Consult MailMessages ; 26 Mar 1996
|
---|
2 | ;;5.3;Scheduling;**41,87,100,130**;AUG 13, 1993
|
---|
3 | ;1
|
---|
4 | MAIL(DFN,SCCLNM,ENORAP,DATE,SCTMCNA) ;Do Patient Team Changes MailMan Message
|
---|
5 | ; DFN - ien to PATIENT File
|
---|
6 | ; SCCLNM - Name of Clinic
|
---|
7 | ; ENORAP - Enrollment or Appointment? 1=Enrollment, 2=Appointment
|
---|
8 | ; DATE - Date of interest, Default =DT
|
---|
9 | ; SCTMCNA- Array of teams affected
|
---|
10 | ;
|
---|
11 | ; - called by SCMC PT TEAM CHANGES MAIL MESSAGE protocol
|
---|
12 | G:$G(SCNOMAIL) END ;- flag can be set to stop message generation
|
---|
13 | N XMDUZ,XMY,XMSUB,XMTEXT,VA,VAERR,XMZ,Y,SCCNXM
|
---|
14 | N SCTMAR,SCSTAT,SCNODE,SCY,SCSPACE,SCCNDTS,SCSTAT,SCTM
|
---|
15 | S SCCNDTS("BEGIN")=DATE,SCCNDTS("END")=DATE
|
---|
16 | S SCSTAT=$S(ENORAP=1:"Enrollment",(ENORAP=2):"Appointment",1:"")
|
---|
17 | S $P(SCSPACE," ",80)=""
|
---|
18 | ; SCTMAR - ARRAY OF TEAMS (before & after)
|
---|
19 | ;set xmy array for practitioners in positions receiving consult notices
|
---|
20 | G:'$$PCMMXMY^SCAPMC25(4,DFN,SCTMCNA,"SCCMDTS",0) END
|
---|
21 | D:'$G(DGQUIET) EN^DDIOL("Sending Patient-Consult "_SCSTAT_" Message")
|
---|
22 | D PID^VADPT6
|
---|
23 | S SCPTNM=$P(^DPT(DFN,0),U,1)
|
---|
24 | S XMSUB=SCSTAT_" PATIENT-CLINIC "_SCSTAT_" for Patient ("_$E(SCPTNM,1)_VA("BID")_")",XMTEXT="SCCNXM(",SCLNCNT=0
|
---|
25 | D SETLN("This notice is sent because:")
|
---|
26 | D SETLN(" The patient had an "_SCSTAT_" to "_$G(SCCLNM)_" and")
|
---|
27 | D SETLN(" has restricted consults due to the following team assignment(s):")
|
---|
28 | S SCTM=0
|
---|
29 | F S SCTM=$O(@SCTMCNA@(SCTM)) Q:'SCTM D
|
---|
30 | .D SETLN(" "_@SCTMCNA@(SCTM))
|
---|
31 | S SCLNCNT=$$PCMAIL^SCMCMM(DFN,"SCCNXM",DT)
|
---|
32 | S XMDUZ=$G(DUZ,.5)
|
---|
33 | S XMY(XMDUZ)=""
|
---|
34 | D ^XMD
|
---|
35 | END ;
|
---|
36 | Q
|
---|
37 | ;
|
---|
38 | SETLN(TEXT) ;
|
---|
39 | Q:$G(TEXT)=""
|
---|
40 | ; increments SCLNCNT, adds text to sccnxm(sclncnt)
|
---|
41 | S SCLNCNT=SCLNCNT+1
|
---|
42 | S SCCNXM(SCLNCNT)=TEXT
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | TEXT(SCFILE,SCNODE,SCPC,SCSPACE,SCLAB) ;returns fldname & external value
|
---|
46 | ;returns fldname & external value
|
---|
47 | ; Note- Only works for non wp fields of standard numbering conventions
|
---|
48 | ; SCFLILE =FILENUM
|
---|
49 | ; SCNODE = 0 NODE
|
---|
50 | ; SCPC = piece of node
|
---|
51 | ; SCSPACE = 80 SPACES
|
---|
52 | ; SCLAB = 1 if print field name
|
---|
53 | N SCX,SCINT,SCFLD
|
---|
54 | S SCX=""
|
---|
55 | S SCINT=$P(SCNODE,U,SCPC)
|
---|
56 | G:SCINT="" QTTXT
|
---|
57 | S SCFLD=SCPC*.01
|
---|
58 | ;;;
|
---|
59 | IF $G(SCLAB) D
|
---|
60 | .S SCX=$$DDNAME^SCMCTMM(SCFLD)_":"
|
---|
61 | .S:$G(SCLAB)=1 SCX=SCX_$E(SCSPACE,1,(23-$L(SCX)))
|
---|
62 | .S:$G(SCLAB)=2 SCX=SCX_$E(SCSPACE,1,(50-$L(SCX)))
|
---|
63 | S:SCINT]"" SCX=SCX_$$EXTERNAL^DILFD(SCFILE,SCFLD,"",SCINT)
|
---|
64 | QTTXT Q SCX
|
---|