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

SDWLE11.m

Go to the documentation of this file.
  1. SDWLE11 ;;IOFO BAY PINES/TEH - WAITING LIST-ENTER/EDIT - WAIT LIST TYPE/INSTUTITION;06/12/2002 ; 20 Aug 2002 2:10 PM ; Compiled May 25, 2007 16:20:20
  1. ;;5.3;scheduling;**263,485,497,446,1015**;AUG 13 1993;Build 21
  1. ;
  1. ;
  1. ;******************************************************************
  1. ; CHANGE LOG
  1. ;
  1. ; DATE PATCH DESCRIPTION
  1. ; ---- ----- -----------
  1. ; 05/09/2006 SD*5.3*485 CORRECT ENROLLMENT STATUS.
  1. ; 06/05/2006 SD*5.3*446 Scheduling reminder flag
  1. ;
  1. ;
  1. NEW ;ADD NEW PATIENT
  1. K DIC,DIR,DR,DIE N %H,SDWLDS,SDWLE,SDWLNEW,SDWLRNED,SDWLX,SDWLY
  1. S DIC(0)="LX",X=SDWLDFN,DIC="^SDWL(409.3," D FILE^DICN S (SDWLDA,DA)=+Y
  1. S SDWLNEW=1 K DIC
  1. L ^SDWL(409.3,SDWLDA)
  1. S DIE="^SDWL(409.3,",DR="1////^S X=DT"
  1. D:$G(SDWLACA) ; 446
  1. .W !,"Note: you are about to create an EWL entry to be used as a Scheduling Reminder."
  1. .S DR=DR_";33////^S X=""Y"""
  1. .Q
  1. D ^DIE
  1. ;
  1. ;DETERMINE ENROLLEE STATUS
  1. ;
  1. ;SDWLE=1 = NEW ENROLLEE
  1. ;SDWLE=2 = ESTABLISHED
  1. ;SDWLE=3 = PRIOR ENROLLEE
  1. ;SDWLE=4 = UNDETERMINED
  1. TST ;
  1. EN S SDWLDE=+$H,SDWLE=1,(SDWLEE,SDWLRNED,SDWLDB)=0 D SB1
  1. G SB0:SDWLE=2
  1. S SDWLRNE=$$ENROLL^EASWTAPI(SDWLDFN) G SB0:$P(SDWLRNE,U,4)="A" S SDWLRNED=$P(SDWLRNE,U,3)
  1. I SDWLRNED S X=SDWLRNED D H^%DTC S SDWLDS=%H S SDWLDE=+$H,SDWLDET=SDWLDE-SDWLDS,SDWLDB=2 I SDWLDET<366 S SDWLE=1
  1. I $D(SDWLDET),SDWLDET>365 S SDWLE=3
  1. I 'SDWLRNE S SDWLE=4
  1. SB0 I $D(SDWLRNE),$P(SDWLRNE,U,4)="A" D
  1. .I $D(SDWLEE),SDWLEE>730!(SDWLEE=730) S SDWLE=4 Q
  1. .I 'SDWLEE S SDWLE=4 Q
  1. S SDWLRNE=$S(SDWLE=1:"N",SDWLE=2:"E",SDWLE=3:"P",SDWLE=4:"U",1:"U")
  1. ;-Code here for filling in 409.3
  1. S DR="27////^S X=SDWLRNE",DIE="^SDWL(409.3,",DA=SDWLDA D ^DIE
  1. ;SAVE ENROLLEE CALCULATION DATE
  1. S DR="27.1////^S X=$S($G(SDWLRNED):SDWLRNED,$G(SDWLD):SDWLD,1:"""")" D ^DIE
  1. ;SAVE DATABASE FILE
  1. S DR="27.2////^S X=SDWLDB" D ^DIE
  1. S DR="9////^S X=DUZ" D ^DIE
  1. K SDWLRNE,SDWLD,SDWLDE,SDWLEE,SDWLDET,DIC,DIR,DR,DIE,X
  1. Q
  1. SB1 I '$D(^DGCN(391.91,"B",SDWLDFN)) N SDWLDB S SDWLE=3 Q
  1. S SDWLX="" F S SDWLX=$O(^DGCN(391.91,"B",SDWLDFN,SDWLX)) Q:SDWLX="" D
  1. .S SDWLY=$G(^DGCN(391.91,SDWLX,0)) D
  1. ..;CHECK FOR VALID TF
  1. ..I $$TF^XUAF4(+$P(SDWLY,U,2)) D
  1. ...;GET LIST OF DATES FOR TF
  1. ...S SDWLD=$P(SDWLY,U,3) I SDWLD S SDWLDTF(9999999-SDWLD)=SDWLX
  1. ;FIND LAST TREATMENT DATE
  1. I '$D(SDWLDTF) Q
  1. S SDWLDTF=$O(SDWLDTF(0)) I SDWLDTF S (SDWLD,X)=9999999-SDWLDTF D H^%DTC S SDWLEE=SDWLDE-%H,SDWLDB=1 I SDWLEE<730 S SDWLE=2
  1. I $D(SDWLEE),SDWLEE>730!(SDWLEE=730) S SDWLE=3
  1. K SDWLDTF
  1. END Q