| 1 | SCMCQK ;ALB/REW - Single Pt Tm/Pt Tm Pos Assign and Discharge ; 1 Jul 1998
|
---|
| 2 | ;;5.3;Scheduling;**148,177,297**;AUG 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | EN ; - main call
|
---|
| 5 | W !,"Primary Care Team/PC Assignment/Unassignment",!
|
---|
| 6 | W !,?6,"Prior to using this option, PCMM's Graphical User Interface (GUI)"
|
---|
| 7 | W !,?6,"must be used to:"
|
---|
| 8 | W !,?10,"1) Setup active primary care and non-primary care team(s)"
|
---|
| 9 | W !,?10,"2) Setup active PC and non-primary care Practitioner position(s)"
|
---|
| 10 | W !,?10,"3) Setup any necessary preceptor/preceptee relationships"
|
---|
| 11 | W !,?10,"4) Assign practitioner to position(s)"
|
---|
| 12 | W !!?6,"A patient can only have one PC team and one"
|
---|
| 13 | W !?6,"PC Position assignment on a given day. The patient must be"
|
---|
| 14 | W !?6,"assigned to a position's team to be assigned to the position."
|
---|
| 15 | W !!?6,"Note: You must use the PCMM GUI if the patient was:"
|
---|
| 16 | W !?10,"o unassigned from PC assignment today or in the future"
|
---|
| 17 | W !?10,"o assigned to a future PC assignment."
|
---|
| 18 | N DFN
|
---|
| 19 | F S DFN=$$PATIENT() Q:DFN<0 D PAT
|
---|
| 20 | Q
|
---|
| 21 | ;
|
---|
| 22 | PAT ;process patient
|
---|
| 23 | Q:'$G(DFN)
|
---|
| 24 | N SCTPSTAT,SCTMSTAT,SCSTAT,SCTM,SCTP
|
---|
| 25 | W !,"Checking PC Team and Position Status...",!
|
---|
| 26 | ;display PC info, check if patient has a current PC team
|
---|
| 27 | D PCMM^SCRPU4(DFN,DT)
|
---|
| 28 | D DSPL^SCMCQK2
|
---|
| 29 | N DATA
|
---|
| 30 | S DATA=$$IU^SCMCTSK1(DFN)
|
---|
| 31 | I $E(DATA)=1 I $D(^XUSEC("SC PCMM SETUP",+$G(DUZ))) D
|
---|
| 32 | .W !,"This patient was inactivated from "_$P(DATA,"~",2)_" TEAM"
|
---|
| 33 | .W !,$P(DATA,"~",4)_" Position"
|
---|
| 34 | .W !,"Do you wish to reactivate" S %=2 D YN^DICN
|
---|
| 35 | .I %=1 D FILEIN^SCMCTSK3(.DATA,+$P(DATA,"~",6))
|
---|
| 36 | W !,"Do you want to make a primary care assignment/unassignment" S %=1 D YN^DICN Q:%<0
|
---|
| 37 | I %=2 G NPC^SCMCQK2
|
---|
| 38 | ;below functions return status^message^pointer
|
---|
| 39 | S SCTMSTAT=$$YSPTTMPC^SCMCTMU2(DFN,DT) ;ok to assign new PC team?
|
---|
| 40 | S SCTPSTAT=$$YSPTTPPC^SCMCTPU2(DFN,DT,1) ;ok to assign new PC prac?
|
---|
| 41 | ;what is current/future PC assignment status?
|
---|
| 42 | S SCSTAT=$S((SCTMSTAT&SCTPSTAT):"NONE",('SCTMSTAT&SCTPSTAT):"TEAM",('SCTMSTAT&'SCTPSTAT):"BOTH",1:"ERROR") ;error if PC pract w/o PC team assignment
|
---|
| 43 | W:SCSTAT="NONE" !,"No current PC Team/PC Practitioner Assignments"
|
---|
| 44 | IF $S(SCTMSTAT:0,(SCTMSTAT["future"):1,1:0) W !,$P(SCTMSTAT,U,2) S SCSTAT="FUTURE"
|
---|
| 45 | IF $S(SCTPSTAT:0,(SCTPSTAT["future"):1,1:0) W !,$P(SCTPSTAT,U,2) S SCSTAT="FUTURE"
|
---|
| 46 | S SCTM=$P(SCTMSTAT,U,3)
|
---|
| 47 | S SCTP=$P(SCTPSTAT,U,3)
|
---|
| 48 | D @SCSTAT
|
---|
| 49 | D BREAK
|
---|
| 50 | Q
|
---|
| 51 | ;
|
---|
| 52 | BREAK ;
|
---|
| 53 | N DIR,X,Y
|
---|
| 54 | S DIR(0)="EA",DIR("A",1)="",DIR("A")="Press enter to continue."
|
---|
| 55 | D ^DIR
|
---|
| 56 | Q
|
---|
| 57 | ;
|
---|
| 58 | NONE ;
|
---|
| 59 | N SCASSDT
|
---|
| 60 | D ASTM^SCMCQK1
|
---|
| 61 | Q
|
---|
| 62 | TEAM ;
|
---|
| 63 | N DIR,X,Y,SCDISCH,SCASSDT,SCSELECT
|
---|
| 64 | S DIR(0)="SO^1:POSITION ASSIGNMENT - BY PRACTITIONER NAME;2:POSITION ASSIGNMENT - BY POSITION NAME;3:TEAM UNASSIGNMENT"
|
---|
| 65 | D ^DIR
|
---|
| 66 | IF $P(Y,U,1)=1!($P(Y,U,1)=2) D
|
---|
| 67 | .S SCSELECT=$S($P(Y,U,1)=1:"PRACT",1:"POSIT")
|
---|
| 68 | .D ASTP^SCMCQK1
|
---|
| 69 | ELSE D:$P(Y,U,1)=3 UNTM^SCMCQK1
|
---|
| 70 | Q
|
---|
| 71 | ;
|
---|
| 72 | BOTH ;
|
---|
| 73 | N DIR,X,Y,SCDISCH
|
---|
| 74 | S DIR(0)="SO^1:PC ASSIGNMENT UNASSIGNMENT;2:TEAM UNASSIGNMENT"
|
---|
| 75 | D ^DIR
|
---|
| 76 | IF $P(Y,U,1)=1 D
|
---|
| 77 | .D UNTP^SCMCQK1
|
---|
| 78 | ELSE D:$P(Y,U,1)=2 UNTM^SCMCQK1
|
---|
| 79 | Q
|
---|
| 80 | ;
|
---|
| 81 | FUTURE ;
|
---|
| 82 | W !,"This patient has future assignments for Primary Care"
|
---|
| 83 | W !,"Team and/or Practitioner"
|
---|
| 84 | W !!!,"You must use PCMM's Graphical User Interface to change"
|
---|
| 85 | Q
|
---|
| 86 | ;
|
---|
| 87 | ERROR ;
|
---|
| 88 | W !,"This patient has NO active Primary Care Team, but does have"
|
---|
| 89 | W !,"an active PC Position Assignment"
|
---|
| 90 | W !!!,"You must use PCMM's Graphical User Interface to correct"
|
---|
| 91 | Q
|
---|
| 92 | ;
|
---|
| 93 | PATIENT() ;Return Patient DFN or -1
|
---|
| 94 | ;
|
---|
| 95 | N DIC,X,Y
|
---|
| 96 | W !!!
|
---|
| 97 | S DIC=2
|
---|
| 98 | S DIC(0)="AEMQZ"
|
---|
| 99 | D ^DIC
|
---|
| 100 | Q $S($D(DTOUT):-1,$D(DUOUT):-1,(Y<0):-1,1:+Y)
|
---|