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

NURACE1.m

Go to the documentation of this file.
  1. NURACE1 ;HIRMFO/RM/MD-PATIENT CLASSIFICATION DRIVER-cont ;11/4/87
  1. ;;4.0;NURSING SERVICE;;Apr 25, 1997
  1. EN1 ;BEGIN PRINTING PATIENT INFO
  1. W !,?13,"PATIENT CLASSIFICATION ",NURSBSF
  1. S NPWARD=NURSWARD D EN6^NURSAUTL W !!,"Patient: ",NURSNAM," SSN: ",SSN," Admission Date: ",$S('PADMDT:"NO MAS ADMISSION DATE",1:PADMDT),!,"Unit: ",NPWARD," Room/Bed: ",NURSRMBD," Bed Section: ",NURSBSF
  1. I NURSBS'=11 W !,"FACTORS:" G NURSWBYP
  1. NURSWBYP ;PRINT REST OF PATIENT INFO
  1. D FACTPRNT Q:OUTSW
  1. I CLASSX="" G EDITIT1:'CLASSREV,PRTREV
  1. I NURSBS=11 D EN5^NURACE8 G PRTREV:CLASSREV,PRTCONT
  1. W !!,?8,"Current Classification: ",CLASSX," Factors: ",FACTX," (",CONFIGX,")"
  1. I $E(CONFIGX,1)="U" S NURSTCLS=CLASSX,NURSNSW=1 D FACTCK S NURSNSW=0 W !,?8,"Computer's Classification for Factors would have been: ",CLASSX S XCLAS=CLASSX,CLASSX=NURSTCLS K NURSTCLS
  1. W !,?8,"Comments: ",COMMENTX
  1. W !,?8,"Last user to classify: ",USERX
  1. W !,?8,"Last date/time classified: "
  1. I DATEX'="" S Y=DATEX D:+Y D^DIQ W Y
  1. I NURSBS=4,FACTORS="N/A" S (CLASSX,FACTX)="",REENTSW=0 G EDITCONT
  1. G:CLASSREV=0 PRTCONT
  1. PRTREV ;PRINT REVIEW INFO IF REVIEWING
  1. I ((CLASSX="")&(FACTX="")) G EDITIT1
  1. W !,?8,"Last reviewed by: ",REVIEWER
  1. W !,?8,"Last date/time reviewed: "
  1. I REVDATE'="" S Y=REVDATE D:+Y D^DIQ W Y
  1. PRTREV1 ;
  1. W !!,"Do you wish to override this classification" S %=2 D YN^DICN
  1. I %=-1 D EN4^NURACE8 L -^NURSF(214,DFN) S OUTSW=1 Q
  1. I %=0 W !,"ANSWER YES OR NO" G PRTREV1
  1. I %=1 G EDITIT1
  1. S NOREVSW=1
  1. Q
  1. PRTCONT ;FINISH PRINTING PATIENT INFO
  1. I CLASSX="" G EDITIT1
  1. PRTCONT1 ;
  1. W !,"Do you wish to retain this as the current classification" S %=1 D YN^DICN
  1. I %=-1 D EN4^NURACE8 S OUTSW=1 Q
  1. I %=1 S NURSRTSW=1 Q
  1. I %=2 G EDITIT1
  1. W !,"ANSWER YES OR NO" G PRTCONT1
  1. EDITIT1 ;GO TO EDIT PATIENT CLASSIFICATION
  1. S REENTSW=0
  1. I CLASSX=""&(CLASSREV=1) W !,*7,"** NO FACTORS OR CLASSIFICATION ENTERED FOR THIS PATIENT **" W !!,"Do you wish to enter in a classification" S %=1 D YN^DICN G EDITIT2
  1. G EDITCONT
  1. EDITIT2 ;
  1. I %=-1!(%=2) S OUTSW=1 D EN4^NURACE8 Q
  1. I %=1 S CLASSREV=0 G EDITCONT
  1. W !,"ANSWER YES OR NO" G EDITIT1
  1. EDITCONT ;
  1. L +^NURSF(214,DFN):0 I '$T W !!,$C(7),"THIS PATIENT IS BEING EDITED, TRY LATER!!" S OUTSW=1 Q
  1. I (NURSBS=11) D EN6^NURACE8 L -^NURSF(214,DFN) Q
  1. W !!,"PATIENT: ",NURSNAM," SSN: ",SSN
  1. I NURSBS=5!(NURSBS=9) W !,"Choose one factor from each group."
  1. W !,"Enter Factors: " W:(FACTX'="") FACTX,"// "
  1. K FACT S FACT="",CK=""
  1. R FACT:DTIME S FACT=$E(FACT,1,30)
  1. I (FACT="^")!('$T) D EN4^NURACE8 L -^NURSF(214,DFN) S OUTSW=1 Q
  1. I $L(FACT)>20 W !,$C(7),"This is an invalid response!" G EDITCONT
  1. F I=1:1:$L(FACT) S:$E(FACT,I)'="," CK=CK_$E(FACT,I)
  1. S FACT=CK
  1. D EN1^NURACE6:(NURSBS=5!(NURSBS=9)),EN1^NURACE4:(NURSBS=1),EN1^NURACE5:(NURSBS=7),EN5^NURACE8:NURSBS=11,EN1^NURACE2:(NURSBS=3!(NURSBS=2)),EN1^NURACE9:NURSBS=4
  1. I OUTSW L -^NURSF(214,DFN) Q
  1. I '(NURSBS=11),REENTSW L -^NURSF(214,DFN) G EDITIT1
  1. Q
  1. FACTCK ;
  1. D EN2^NURACE4:NURSBS=1,EN2^NURACE6:NURSBS=5!(NURSBS=9),EN2^NURACE5:NURSBS=7,EN2^NURACE2:NURSBS=3!(NURSBS=2),EN2^NURACE9:NURSBS=4
  1. Q
  1. FACTPRNT ; PRINT FACTOR LISTS
  1. D EN2^NURACE3:NURSBS=3!(NURSBS=2),EN4^NURACE3:NURSBS=9!(NURSBS=5),EN1^NURACE3:NURSBS=1,EN3^NURACE3:NURSBS=7,EN5^NURACE3:NURSBS=4
  1. Q