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

SCMCMU11.m

Go to the documentation of this file.
  1. SCMCMU11 ;ALB/MJK - PCMM Mass Team/Position Unassignment ; 10-JUL-1998
  1. ;;5.3;Scheduling;**148,1015**;AUG 13, 1993;Build 21
  1. ;
  1. ;
  1. PTTPLST(SCTEAM,SCDATE,SCPTTP) ; -- create list of patients assigned to team positions
  1. ; -- sort list by dfn and position ien
  1. N SCPOS,SCDTE,SCPR,SCPRX
  1. ;
  1. ; -- check for patient-position assignments
  1. D DATE^SCMCMU1(SCDATE,.SCDTE)
  1. S SCPOS=$NA(^TMP("SCMU",$J,"POSITION"))
  1. ;
  1. ; -- get list of positions for team
  1. K @SCPOS
  1. IF '$$TPTM^SCAPMC24(SCTEAM,SCDTE,"","",SCPOS) S Y=-1 G PTTPLSTQ
  1. S SCPR=0
  1. F S SCPR=$O(@SCPOS@(SCPR)) Q:'SCPR D
  1. . S SCPRX=@SCPOS@(SCPR)
  1. . ; -- create sorted list of dfn by position ien
  1. . D PTTP(+SCPRX,SCDATE,SCPTTP)
  1. . Q
  1. PTTPLSTQ K @SCPOS
  1. Q
  1. ;
  1. PTTP(SCPOS,SCDATE,SCPTTP) ; -- create list of pats assigned to position sort by dfn, position
  1. N SCPAT,SCPATX,SCPATS,SCDTE
  1. D DATE^SCMCMU1(SCDATE,.SCDTE)
  1. S SCPATS=$NA(^TMP("SCMU",$J,"PATIENT"))
  1. K @SCPATS
  1. IF '$$PTTP^SCAPMC(SCPOS,SCDTE,SCPATS) S SCOK=0 G PTTPQ
  1. S SCPAT=0
  1. F S SCPAT=$O(@SCPATS@(SCPAT)) Q:'SCPAT D
  1. . S SCPATX=@SCPATS@(SCPAT)
  1. . ; -- store by dfn / pos data
  1. . S @SCPTTP@(+SCPATX,SCPOS)=SCPATX
  1. . Q
  1. PTTPQ K @SCPATS
  1. Q
  1. ;
  1. UNASSIGN ; -- unassign selected
  1. ; protocol: SCMC MU UNASSIGN PATIENTS
  1. N DIR,Y
  1. IF 'SCSELCNT D G UNQ
  1. . W !!,"No patients have been selected.",!
  1. . D PAUSE^SCMCMU1
  1. . D BACK^SCMCMU1("")
  1. . Q
  1. ELSE D
  1. . D FULL^VALM1
  1. . W @IOF
  1. . S DIR(0)="YA"
  1. . D SET("----------------------------------------------------------------------------")
  1. . D SET(" Team"_$S(SCMUTYPE="P":" Position",1:"")_" Unassignment Definition")
  1. . D SET("----------------------------------------------------------------------------")
  1. . D SET(" Team : "_$P($G(^SCTM(404.51,SCTEAM,0),"Unknown"),U))
  1. . IF SCMUTYPE="P" D SET(" Position : "_$P($G(^SCTM(404.57,SCPOS,0),"Unknown"),U))
  1. . D SET(" Effective Date : "_$$FMTE^XLFDT($E(SCDATE,1,7),"5Z"))
  1. . D SET(" # of Patients : "_SCSELCNT)
  1. . D CLINIC
  1. . D SET(" ")
  1. . S DIR("A")="Are you sure you want to continue? "
  1. . S DIR("B")="No"
  1. . D ^DIR
  1. . IF Y=1 D
  1. . . N DIR,SCTSK
  1. . . S SCTSK=$$QUE^SCMCMU2()
  1. . . IF SCTSK="" D
  1. . . . D BACK^SCMCMU1("R")
  1. . . ELSE D
  1. . . . W !!,"Task#: ",SCTSK,!
  1. . . D PAUSE^SCMCMU1
  1. . . Q
  1. . ELSE D
  1. . . D BACK^SCMCMU1("R")
  1. . . Q
  1. . Q
  1. UNQ Q
  1. ;
  1. CLINIC ; -- display clinic to be discharged from
  1. N SCPOS,SCX,Y
  1. D SET(" ")
  1. IF '$O(SCTPDIS(0)) D G CLINICQ
  1. . D SET(" Clinic Discharges: None")
  1. ;
  1. S Y=""
  1. S Y=$$SETSTR^VALM1("Clinic Discharges:",Y,5,20)
  1. S Y=$$SETSTR^VALM1("Position",Y,25,25)
  1. S Y=$$SETSTR^VALM1("Associated Clinic",Y,55,25)
  1. D SET(Y)
  1. S Y=""
  1. S Y=$$SETSTR^VALM1("--------",Y,25,25)
  1. S Y=$$SETSTR^VALM1("-----------------",Y,55,25)
  1. D SET(Y)
  1. ;
  1. S SCPOS=0
  1. F S SCPOS=$O(SCTPDIS(SCPOS)) Q:'SCPOS D
  1. . S SCX=$G(^SCTM(404.57,SCPOS,0),"Unknown")
  1. . S Y=""
  1. . S Y=$$SETSTR^VALM1($E($P(SCX,U),1,25),Y,25,25)
  1. . S Y=$$SETSTR^VALM1($E($P($G(^SC(+$P(SCX,U,9),0),"Unknown"),U),1,25),Y,55,25)
  1. . D SET(Y)
  1. . Q
  1. ;
  1. CLINICQ Q
  1. ;
  1. SET(X) ; -- set DIR text
  1. S DIR("A",$O(DIR("A",""),-1)+1)=X
  1. Q
  1. ;
  1. QUIT ; -- quit logic
  1. ; protocol: SCMC MU QUIT
  1. N DIR,Y
  1. S Y=0
  1. IF SCSELCNT D
  1. . W !
  1. . S DIR(0)="YA"
  1. . S DIR("A",1)="You have "_SCSELCNT_" patient"_$S(SCSELCNT=1:"",1:"s")_" selected."
  1. . S DIR("A",2)=" "
  1. . S DIR("A")="Are you sure you want to quit? "
  1. . S DIR("B")="No"
  1. . D ^DIR
  1. . IF Y'=1 D BACK^SCMCMU1("")
  1. . Q
  1. Q
  1. ;