[613] | 1 | SCMCBK6 ;bp/cmf - multiple patient assignments mail queue - RPCVersion = 1 ;;Aug 7, 1998
|
---|
| 2 | ;;5.3;Scheduling;**148,177,210**;AUG 13, 1993
|
---|
| 3 | Q
|
---|
| 4 | ;
|
---|
| 5 | YSPTTMPC(DFN,SCACT) ;is it ok to give patient a new pc team?
|
---|
| 6 | ; Return [OK:1,Not OK: 0^Message]
|
---|
| 7 | N SCOK,SCX,SCTM
|
---|
| 8 | ;
|
---|
| 9 | ;does pt have a current pc team?
|
---|
| 10 | S SCTM=$$GETPCTM^SCAPMCU2(DFN,DT,1)
|
---|
| 11 | I SCTM>0 D SCOK(2) G QTOKPC
|
---|
| 12 | ;;;IF SCTM>0 S SCOK="0^Pt has current PC Team Assignment"_U_SCTM G QTOKPC
|
---|
| 13 | ;
|
---|
| 14 | ;does pt have a future pc team?
|
---|
| 15 | S SCX=$O(^SCPT(404.42,"APCTM",DFN,1,SCACT))
|
---|
| 16 | IF SCX D SCOK(3) G QTOKPC
|
---|
| 17 | ;;;.S SCTM=$O(^SCPT(404.42,"APCTM",DFN,1,+SCX,0))
|
---|
| 18 | ;;;.S SCOK="0^Patient has future PC Assignment to the "_$P($G(^SCTM(404.51,+SCTM,0)),U,1)_" team."_U_SCTM
|
---|
| 19 | ;;;.D SCOK(3)
|
---|
| 20 | ;
|
---|
| 21 | S SCOK=1
|
---|
| 22 | QTOKPC Q SCOK
|
---|
| 23 | ;
|
---|
| 24 | OKPTTMPC(DFN,SCTM,DATE) ; like OKPTTMPC^SCMCTMU2
|
---|
| 25 | ; ;;; supports meaningful reject messages
|
---|
| 26 | ; ;;; for PHASE II enhancement??
|
---|
| 27 | ; Return [OK:1,Not OK: 0^Message]
|
---|
| 28 | N SCOK,SCPCTM,SCL
|
---|
| 29 | S SCOK=1
|
---|
| 30 | ;
|
---|
| 31 | ;is this a possible pc team?
|
---|
| 32 | ;;;I '$P($G(^SCTM(404.51,+$G(SCTM),0)),U,5) S SCOK=0 G QTOKTM
|
---|
| 33 | I '$P($G(^SCTM(404.51,+$G(SCTM),0)),U,5) D SCOK(5) G QTOKTM
|
---|
| 34 | S SCPCTM=$$GETPCTM^SCAPMCU2(DFN,DATE,1)
|
---|
| 35 | I SCPCTM,SCPCTM'=SCTM D SCOK(7) G QTOKTM
|
---|
| 36 | ;;;.I SCPCTM'=SCTM D
|
---|
| 37 | ;;;..S SCOK=0
|
---|
| 38 | ;;;;..D SCOK(7)
|
---|
| 39 | E D
|
---|
| 40 | .S SCOK=$$YSPTTMPC(DFN,DATE)
|
---|
| 41 | QTOKTM Q SCOK
|
---|
| 42 | ;
|
---|
| 43 | DP(DFN) ;output: boolean, is patient(DFN) dead?
|
---|
| 44 | Q $P($G(^DPT(DFN,.35)),U)'=""
|
---|
| 45 | ;
|
---|
| 46 | SCOK(SCL) ;
|
---|
| 47 | ;input SCL = Text Line
|
---|
| 48 | ;output = SCOK
|
---|
| 49 | S SCOK="0^"_$$S(SCL)_U_$G(SCTM)
|
---|
| 50 | Q
|
---|
| 51 | ;
|
---|
| 52 | S(SCL) ;output: text string
|
---|
| 53 | Q $P($T(T+SCL),";;",2)
|
---|
| 54 | ;
|
---|
| 55 | T ;;
|
---|
| 56 | 1 ;;Pt is deceased;;
|
---|
| 57 | 2 ;;Pt has current PC assignment;;
|
---|
| 58 | 3 ;;Pt has future PC assignment;;
|
---|
| 59 | 4 ;;Pt has future team assignment;;
|
---|
| 60 | 5 ;;Not PC team;;
|
---|
| 61 | 6 ;;Team inactive;;
|
---|
| 62 | 7 ;;Pt has PC assignment;;
|
---|
| 63 | ;;
|
---|
| 64 | 9 ;;Invalid setup;;
|
---|
| 65 | 10 ;;Pt already assigned;;
|
---|
| 66 | 11 ;;Filer error;;
|
---|
| 67 | 12 ;;PC role not assignable;;
|
---|
| 68 | 13 ;;Invalid position list;;
|
---|
| 69 | 14 ;;Pt not added to team;;
|
---|
| 70 | 15 ;;Pt being assigned by another PCMM process;;
|
---|
| 71 | ;;
|
---|