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

GMRAMCB.m

Go to the documentation of this file.
  1. GMRAMCB ;HIRMFO/WAA-MARK CHART & ID BAND FIELD EDIT ;01-May-2012 14:18;DU
  1. ;;4.0;Adverse Reaction Tracking;**21,36,1002,1006**;Mar 29, 1996;Build 29
  1. EN3 ;Entry for EDIT CHART & ID BAND option
  1. K GMRALL S GMRAOUT=0 D GETAL^GMRAMCB1 I GMRAOUT!'$D(GMRALL) L:DFN>0 -^GMR(120.8,"B",DFN) G Q3
  1. D EN5 D:'GMRAOUT EN7
  1. L -^GMR(120.8,"B",DFN)
  1. G Q3
  1. EN4(GMRALL,DFN) ;THIS IS THE ENTRY POINT IF YOU KNOW THE ALLERGIES AND PATIENT
  1. D EN5 D:'GMRAOUT EN7 Q
  1. EN5 ;THIS IS THE ENTRY POINT TO BY PASS THE FORMAL LIST AGAIN
  1. D VAD^GMRAUTL1(DFN,"",.GMRALOC,.GMRANAM,"",.GMRASSN)
  1. N REQ S REQ=0,GMRAPA=0 F S GMRAPA=$O(GMRALL(GMRAPA)) Q:'+GMRAPA!(REQ) S:'$O(^GMR(120.8,GMRAPA,14,0)) REQ=1 ;36
  1. S GMRATYPE="B",I=0,GMRAPA=0 W !,"This session you have CHOSEN:" F S GMRAPA=$O(GMRALL(GMRAPA)) Q:GMRAPA<1 S I=I+1 W !,?5,$P($G(^GMR(120.8,GMRAPA,0)),U,2)
  1. W ! D SITE^GMRAUTL S GMRASITE(0)=$G(^GMRD(120.84,+GMRASITE,0)),GMRAOUT=0
  1. F GMRAMARK="13^Chart(s)","14^ID Band" S GMRAM2=$P(GMRAMARK,"^",2),GMRAM1=$P(GMRAMARK,"^") D Q:GMRAOUT
  1. .I GMRAM1=14,($P(GMRASITE(0),U,5)=0!(GMRALOC=""))!('REQ) Q ;36
  1. .S GMRANULL=0 F S %=0 D I %!(%Y="") Q
  1. ..I GMRAM1=13 S %=1,%Y="Y" Q ;21 Marked on chart set to YES automatically
  1. ..W !,$S(GMRAM1=14:"Has",1:"Have")," the "_GMRAM2_" been marked or unmarked for",$S(I>1:" these CAUSATIVE AGENTS",1:" this CAUSATIVE AGENT") D YN^DICN
  1. ..Q:%Y=""
  1. ..S:%<0 %=2,GMRAOUT=1 Q:% W !?4,"ANSWER YES IF THE "_GMRAM2_" HAS BEEN MARKED, ELSE ANSWER NO."
  1. ..Q
  1. .I %=2!(%Y="") Q
  1. .S GMRAPA=0 F S GMRAPA=$O(GMRALL(GMRAPA)) Q:GMRAPA<1 D
  1. ..I '$D(^GMR(120.8,GMRAPA,GMRAM1,0)) S ^(0)="^120.8"_GMRAM1_"DA^^"
  1. ..D NOW^%DTC K DO,DD,DINUM S X=%,DIC="^GMR(120.8,"_GMRAPA_","_GMRAM1_",",DIC(0)="L",DLAYGO=120.8,DA(1)=GMRAPA,DIC("DR")="1////"_DUZ D FILE^DICN K DIC,DLAYGO
  1. ..Q
  1. .Q
  1. Q
  1. EN6(GMRALL,DFN,GMRATYPE) ;THIS IS THE ENTRY POINT IF YOU KNOW THE ALLERGIES AND PATIENT
  1. N GMRAOUT,%,%Y S GMRAOUT=0
  1. D SITE^GMRAUTL S GMRASITE(0)=$G(^GMRD(120.84,+GMRASITE,0))
  1. EN7 I $D(%Y),%Y="" Q
  1. S GMRAPA=0 F S GMRAPA=$O(GMRALL(GMRAPA)) Q:GMRAPA<1 D
  1. .I $O(^GMR(120.8,GMRAPA,13,0))&($P(GMRASITE(0),U,5)=0!$O(^GMR(120.8,GMRAPA,14,0))!(GMRALOC="")) Q
  1. .S GMRAPA(0)=$G(^GMR(120.8,GMRAPA,0)) D BULLT^GMRASEND
  1. .Q
  1. Q
  1. Q3 ; CLEAN UP AFTER EN3
  1. K GMRACB1
  1. D KILL^XUSCLEAN
  1. Q
  1. HELP ;THIS ROUTINE WILL LIST ALL THE SELECTED ALLERGIES AND ALL THE
  1. ;CURRENT SELECTED ALLERGIES
  1. S GMRAPA=0 I '$D(GMRALL) W !,"No CAUSATIVE AGENTS have been selected for this patient."
  1. E W !,"You have selected the following CAUSATIVE AGENTS:",! S GMRAPA=0 F S GMRAPA=$O(GMRALL(GMRAPA)) Q:GMRAPA<1 W !,?5,$P($G(^GMR(120.8,GMRAPA,0)),U,2)
  1. K GMRAPA
  1. D HANGT^GMRAPEH0
  1. HLP1 ;LIST ALL ALLERGIES
  1. W !,"You may choose CAUSATIVE AGENTS from the following list for this patient:"
  1. N DIC
  1. I '$D(^GMR(120.8,"B",DFN)) W !?4,"There are no reactions on file for this patient." Q
  1. D HLP12085^GMRAU851(DFN,"'+$G(^GMR(120.8,+GMRAX,""ER""))")
  1. D HANGT^GMRAPEH0
  1. Q