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

FHWORI.m

Go to the documentation of this file.
  1. FHWORI ; HISC/NCA - Initial Master File Population ;10/1/96 13:12
  1. ;;5.5;DIETETICS;;Jan 28, 2005
  1. DO ; Code Diet Order
  1. S PKG=$O(^DIC(9.4,"C","FH",0)) Q:'PKG
  1. S VER=$P($G(^DIC(9.4,PKG,22,0)),"^",3) Q:'VER
  1. S VER=+$G(^DIC(9.4,PKG,22,VER,0))
  1. K ^TMP($J,"FHUPD"),MSG
  1. S FILE="111",FILNM=$P($G(^FH(111,0)),"^",1),EVENT="REP",ACT="MAD"
  1. F IEN=0:0 S IEN=$O(^FH(111,IEN)) Q:IEN<1 S X=$G(^(IEN,0)) S:$G(^("I"))="Y" ^TMP($J,"FHUPD",IEN)="" D CODE,D1
  1. K ACT,EVENT,FHK,FILE,FILNM,IEN,IEN1,NAM,N1,N2,PREC,SYN,SYN1,X
  1. TF ; Code Tubefeeding
  1. K ^TMP($J,"FHUPT")
  1. S FILE="118.2",FILNM=$P($G(^FH(118.2,0)),"^",1),EVENT="REP",ACT="MAD" D CODE
  1. F IEN=0:0 S IEN=$O(^FH(118.2,IEN)) Q:IEN<1 S X=$G(^(IEN,0)) S:$G(^("I"))="Y" ^TMP($J,"FHUPT",IEN)="" D CODE,T1
  1. K ACT,EVENT,FILE,FILNM,IEN,IEN1,NAM,N1,N2,PKG,SYN,VER,X
  1. INACTD ; Code Update Inactive Diet Orders
  1. G:'$D(^TMP($J,"FHUPD")) INACTT
  1. S FILE="111",FILNM=$P($G(^FH(111,0)),"^",1),EVENT="UPD",ACT="MDC" D CODE
  1. F IEN=0:0 S IEN=$O(^TMP($J,"FHUPD",IEN)) Q:IEN<1 S X=$G(^FH(111,IEN,0)) D CODE,D1
  1. K ^TMP($J,"FHUPD"),ACT,EVENT,FILE,FILNM,IEN,NAM,N1,N2,PREC,SYN,X
  1. INACTT ; Code Update Inactive Tubefeedings
  1. Q:'$D(^TMP($J,"FHUPT"))
  1. S FILE="118.2",FILNM=$P($G(^FH(118.2,0)),"^",1),EVENT="UPD",ACT="MDC" D CODE
  1. F IEN=0:0 S IEN=$O(^TMP($J,"FHUPT",IEN)) Q:IEN<1 S X=$G(^FH(118.2,IEN,0)) D CODE,T1
  1. K ^TMP($J,"FHUPT"),ACT,EVENT,FILE,FILNM,IEN,IEN1,NAM,N1,N2,SYN,X
  1. Q
  1. CODE ; Code MSH for Orderable Items
  1. S N1=1
  1. S MSG(N1)="MSH|^~\&|DIETETICS|"_^DD("SITE",1)_"|||||MFN"
  1. ; code MFI
  1. S N1=N1+1
  1. S MSG(N1)="MFI|"_FILE_"^"_FILNM_"^99DD||"_EVENT_"|||NE"
  1. Q
  1. D1 ; Code MFE, ZFH, and ZSY for Diet Orders
  1. S NAM=$P(X,"^",1) Q:NAM="" S PREC=$P(X,"^",4) Q:'PREC
  1. S SYN=$P(X,"^",2),N1=N1+1
  1. S MSG(N1)="MFE|"_ACT_"|||^^^"_IEN_"^"_NAM_"^99FHD"
  1. S N1=N1+1,MSG(N1)="ZFH|D|"_PREC_"||"_$P(X,"^",3)
  1. S FHK=0 F IEN1=0:0 S IEN1=$O(^FH(111,IEN,"AN",IEN1)) Q:IEN1<1 S SYN1=$G(^(IEN1,0)) D
  1. .S FHK=IEN1,SYN1=$P(SYN1,"^",1) Q:SYN1="" S N1=N1+1
  1. .S MSG(N1)="ZSY|"_IEN1_"|"_SYN1 Q
  1. I SYN'="" S N1=N1+1,MSG(N1)="ZSY|"_(FHK+1)_"|"_SYN
  1. D SEND
  1. Q
  1. T1 ; Code MFE, ZFH, and ZSY for Tubefeedings
  1. S NAM=$P(X,"^",1) Q:NAM="" S N1=N1+1
  1. S MSG(N1)="MFE|"_ACT_"|||^^^"_IEN_"^"_NAM_"^99FHT"
  1. S N1=N1+1,MSG(N1)="ZFH|T"
  1. F IEN1=0:0 S IEN1=$O(^FH(118.2,IEN,1,IEN1)) Q:IEN1<1 S SYN=$G(^(IEN1,0)) D
  1. .S SYN=$P(SYN,"^",1) Q:SYN="" S N1=N1+1
  1. .S MSG(N1)="ZSY|"_IEN1_"|"_SYN Q
  1. D SEND
  1. Q
  1. SEND ; Send Message to OE/RR
  1. D MSG^XQOR("FH ORDERABLE ITEM UPDATE",.MSG)
  1. K MSG Q