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

SDWLEC.m

Go to the documentation of this file.
  1. SDWLEC ;;IOFO BAY PINES/ESW - CLOSED WAITING LIST-EDIT;06/12/2002; Compiled April 17, 2009 14:22:44
  1. ;;5.3;scheduling;**446,539**;AUG 13 1993;Build 24
  1. ;
  1. ;modified SDWLE
  1. ;******************************************************************
  1. ; CHANGE LOG
  1. ;
  1. ; DATE PATCH DESCRIPTION
  1. ; ---- ----- -----------
  1. ; 09JUN2005 446 Inter-Facility Transfer.
  1. ;
  1. ;
  1. EN ;ENTRY POINT - INTIALIZE VARIABLES
  1. N DTOUT,%,SDWLHDR,SDWLNAM,SDWLSSN,SDWLTEM,SDWLPOS,VADM,VA,X,SDWLPS
  1. I $D(SDWLOPT),SDWLOPT G OPT
  1. I $D(SDWLLIST),SDWLLIST,$D(DFN),DFN<0 K SDWLLIST
  1. N SDWLDFN
  1. I $D(SDWLLIST),SDWLLIST,$D(DFN),DFN'="" S SDWLDFN=DFN D 1^VADPT S (SDWLTEM,SDWLPOS)=0 D HD,SB1 G EN1:'$D(DUOUT) W !,"PATIENT: ",VADM(1),?40,VA("PID") W !,*7,"PATIENT'S DATE OF DEATH HAS BEEN RECORDED" S DIR(0)="E" D ^DIR G END
  1. K ^TMP("SDWLD",$J) D HD
  1. D PAT G END:DFN<0
  1. OPT ;
  1. N SDWLDFN,SDWLNEW,SDWLERR,SDWLCN,SDWLWTE,SDWLPS
  1. S SDWLDFN=DFN
  1. D 1^VADPT
  1. S (SDWLTEM,SDWLPOS)=0
  1. EN1 S (SDWLNEW,SDWLERR,SDWLCN,SDWLWTE)=0
  1. D DIS
  1. I $D(^SDWL(409.3,"B",DFN)),'SDWLCN W !!,"PATIENT: ",VADM(1),?40,VA("PID")
  1. S SDWLPS=$S(SDWLCN>1:1,SDWLCN=1:2,1:3)
  1. I $D(SDWLOPT),SDWLOPT,SDWLPS=3 S X="Y" G ENO
  1. I SDWLPS=1 S DIR(0)="FOA^^" S DIR("A")="Select Wait List (1-"_SDWLCN_") or '^' to Quit ? ",DIR("?")="Enter a Valid Number or '^' to Quit."
  1. I SDWLPS=2 S DIR(0)="FOA^^" S DIR("A")="Select Wait List (1) or '^' to Quit ? ",DIR("?")="Enter a '1' or '^' to Quit."
  1. I SDWLPS=3 S DIR(0)="YAO^^S X=""Y""" S DIR("A")="No closed EWL entries for this range of dates. Do you wish to continue with this patient? Yes// "
  1. W ! D ^DIR W ! K DIR
  1. G END:$D(DUOUT),END:$D(DTOUT)
  1. I SDWLPS=1 D G END:SDWLERR=1 I SDWLERR=2 W *7," ??" G EN1
  1. .S SDWLERR=$S(X="":2,X["^":1,$D(^TMP("SDWLD",$J,DFN,+X)):0,1:2) Q
  1. I SDWLPS=2 D G END:SDWLERR=1 I SDWLERR=2 W *7," ??" G EN1
  1. .S SDWLERR=$S(X="":2,$D(DUOUT):1,X["^":1,$D(^TMP("SDWLD",$J,DFN,+X)):0,1:2) Q
  1. ENO I SDWLPS=3 D G EN:SDWLERR=1 I SDWLERR=2 G EN1
  1. .S SDWLERR=$S(X="":2,X?1"Y".E:2,X?1"y".E:2,$D(DUOUT):1,X["^":1,1:1)
  1. .I SDWLERR=1 K DFN Q
  1. N SDCAN I SDWLPS=1!(SDWLPS=2),X?1N.N D
  1. .N DA S (DA,SDWLDA)=$P($G(^TMP("SDWLD",$J,DFN,+X)),"~",2),SDWLEDIT=""
  1. .;
  1. .;LOCK DATA FILE
  1. .;
  1. .L +^SDWL(409.3,SDWLDA):$S($G(DILOCKTM)>5:DILOCKTM,1:5) I '$T W !,"ANOTHER TERMINAL IS EDITING THIS ENTRY. TRY LATER." S DUOUT=1
  1. .I $D(DUOUT) Q
  1. .D EN^SDWLE10
  1. .D EDITC(SDWLDA,.SDCAN) L -^SDWL(409.3,SDWLDA) S SDWLERR=1 K SDWLEDIT
  1. .I SDCAN W !,"This process has been canceled."
  1. .E W !,"The requested entry has been opened."
  1. D END
  1. Q
  1. END ;
  1. D EN^SDWLKIL
  1. Q
  1. ;
  1. ;
  1. PAT ;SELECT PATIENT
  1. ;
  1. N DIC S DIC(0)="EMNZAQ",DIC=2 D ^DIC S (SDWLDFN,DFN)=$P(Y,U,1) G PAT1:DFN<0
  1. S X=$$GET1^DIQ(2,DFN_",",".351") I X'="" W !,*7,"PATIENT'S DATE OF DEATH HAS BEEN RECORDED" G PAT
  1. S SDWLSSN=$G(VA("PID")),SDWLNAM=$G(VA(1))
  1. PAT1 K VADM,VAIN,VAERR,VA Q
  1. ;
  1. DIS ;DISPLAY DATA FOR PATIENT
  1. ;
  1. S SDWLHDR="Wait List OPEN CLOSED ENTRY"
  1. D EN^SDWLD(DFN,VA("PID"),VADM(1),"C")
  1. D PCM^SDWLE1,PCMD^SDWLE1
  1. Q
  1. ;
  1. EDITC(SDWLDA,SDCAN) ;edit closed entry
  1. N SDCLR S SDCLR=$P(^SDWL(409.3,SDWLDA,"DIS"),U,3) I SDCLR="ER"!(SDCLR="D") S SDCAN=1 D S SDCAN=1 Q
  1. .I SDCLR="ER" W !," ENTERED IN ERROR - NOT TO BE OPENED"
  1. W !,"Reopen comment required to open this entry. Reopen reason: O - Other.",!
  1. ;Reopen comment
  1. N DIR,Y S Y=0,SDCAN=0
  1. F Q:$L(Y)>10!(Y="^") S DIR(0)="FAOU^^",DIR("A")="Comments or '^' to cancel this process: ",DIR("B")="" D ^DIR D
  1. .I $L(Y)<11 W !,"At least 10 char comment required" Q
  1. .I X="^" Q
  1. I Y="^" S SDCAN=1 Q
  1. N SDWLCM S SDWLCM=$E(Y,1,70)
  1. N DIE,DR,DA
  1. S DIE="^SDWL(409.3,",DA=SDWLDA,DR="23////^S X=""O""" D ^DIE
  1. S DR="28///^S X=$G(DUZ);29////^S X=""O""" D ^DIE ; REOPEN REASON - OTHER
  1. S DR="19///@;20///@;21///@;30///^S X=SDWLCM" D ^DIE
  1. S DR="13///@;13.1////@;13.2///@;13.3///@;13.4///@;13.5///@;13.6///@;13.8///@;13.7///@" D ^DIE ;SD/467
  1. Q
  1. SB1 S X=$$GET1^DIQ(2,DFN_",",".351") I X'="" S DUOUT=""
  1. Q
  1. HD W:$D(IOF) @IOF W !,?80-$L("Scheduling/PCMM Open Closed Wait Entry")\2,"Scheduling/PCMM Open Closed Wait List Entry",!!
  1. I $D(DFN),DFN'="",'$D(^SDWL(409.3,"B",DFN)),$D(SDWLLIST),SDWLLIST D
  1. .W !!,"PATIENT: ",VADM(1),?40,VA("PID")
  1. Q