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

FHOMTK1.m

Go to the documentation of this file.
  1. FHOMTK1 ;Hines OIFO/RTK OUTPATIENT MEALS TRAY TICKETS ;7/02/03 14:05
  1. ;;5.5;DIETETICS;**5**;Jan 28, 2005;Build 53
  1. ;
  1. START S RM="",FHBY=$E($G(FHBY),1) I FHBY="" Q
  1. S FHDTE=D1
  1. S X1=D1,X2=-1 D C^%DTC S FHRMDTE=X
  1. S X1=D1,X2=1 D C^%DTC S FHDTQ=X
  1. ;NEW CODE FOR SORTING
  1. BLDTMP ; First build data in ^TMP global
  1. K ^TMP($J,"OPTX")
  1. ; Recurring Meals
  1. F FHOMDT=FHRMDTE:0 S FHOMDT=$O(^FHPT("RM",FHOMDT)) Q:FHOMDT=""!(FHOMDT'<FHDTQ) D
  1. .F FHDFN=0:0 S FHDFN=$O(^FHPT("RM",FHOMDT,FHDFN)) Q:FHDFN="" D
  1. ..D PATNAME^FHOMUTL I DFN'="" I $G(^DPT(DFN,.1))'="" Q
  1. ..F FHRNUM=0:0 S FHRNUM=$O(^FHPT("RM",FHOMDT,FHDFN,FHRNUM)) Q:FHRNUM="" D
  1. ...S FHZN=$G(^FHPT(FHDFN,"OP",FHRNUM,0)),FHLOC=$P(FHZN,U,3) Q:FHLOC=""
  1. ...S FHSTAT=$P(FHZN,U,15) Q:FHSTAT="C"
  1. ...S FHMEAL=$P(FHZN,U,4)
  1. ...I FHOMEAL'="A",FHOMEAL'[FHMEAL Q
  1. ...I FHBY="P",FHDFN'=FHTTDFN Q
  1. ...I FHBY="L",W1'=FHLOC Q
  1. ...I FHBY="C" S FHCOMM=$P($G(^FH(119.6,FHLOC,0)),U,8) I FHP'=FHCOMM Q
  1. ...S FHLOCNM=$P($G(^FH(119.6,FHLOC,0)),U,1) I FHMEAL="E" S FHMEAL="Z"
  1. ...I SRT="R" S ^TMP($J,"OPTX",FHLOCNM,FHMEAL_"~"_FHPTNM_"~"_FHDFN_"~R~"_FHRNUM)=FHZN
  1. ...I SRT'="R" S ^TMP($J,"OPTX",FHPTNM,FHMEAL_"~"_FHLOCNM_"~"_FHDFN_"~R~"_FHRNUM)=FHZN
  1. ...Q
  1. ..Q
  1. .Q
  1. ; Special Meals
  1. F FHOMDT=FHDTE:0 S FHOMDT=$O(^FHPT("SM",FHOMDT)) Q:FHOMDT=""!(FHOMDT>FHDTQ) D
  1. .F FHDFN=0:0 S FHDFN=$O(^FHPT("SM",FHOMDT,FHDFN)) Q:FHDFN="" D
  1. ..D PATNAME^FHOMUTL I DFN'="" I $G(^DPT(DFN,.1))'="" Q
  1. ..S FHZN=$G(^FHPT(FHDFN,"SM",FHOMDT,0)),FHLOC=$P(FHZN,U,3) Q:FHLOC=""
  1. ..S FHSTAT=$P(FHZN,U,2) Q:FHSTAT'="A"
  1. ..S FHMEAL=$P(FHZN,U,9)
  1. ..I FHOMEAL'="A",FHOMEAL'[FHMEAL Q
  1. ..I FHBY="P",FHDFN'=FHTTDFN Q
  1. ..I FHBY="L",W1'=FHLOC Q
  1. ..I FHBY="C" S FHCOMM=$P($G(^FH(119.6,FHLOC,0)),U,8) I FHP'=FHCOMM Q
  1. ..S FHLOCNM=$P($G(^FH(119.6,FHLOC,0)),U,1) I FHMEAL="E" S FHMEAL="Z"
  1. ..I SRT="R" S ^TMP($J,"OPTX",FHLOCNM,FHMEAL_"~"_FHPTNM_"~"_FHDFN_"~S")=FHZN
  1. ..I SRT'="R" S ^TMP($J,"OPTX",FHPTNM,FHMEAL_"~"_FHLOCNM_"~"_FHDFN_"~S")=FHZN
  1. ..Q
  1. .Q
  1. ; Guest Meals
  1. F FHOMDT=FHDTE:0 S FHOMDT=$O(^FHPT("GM",FHOMDT)) Q:FHOMDT=""!(FHOMDT>FHDTQ) D
  1. .F FHDFN=0:0 S FHDFN=$O(^FHPT("GM",FHOMDT,FHDFN)) Q:FHDFN="" D
  1. ..D PATNAME^FHOMUTL I DFN'="" I $G(^DPT(DFN,.1))'="" Q
  1. ..S FHZN=$G(^FHPT(FHDFN,"GM",FHOMDT,0)),FHLOC=$P(FHZN,U,5) Q:FHLOC=""
  1. ..S FHSTAT=$P(FHZN,U,9) Q:FHSTAT="C"
  1. ..S FHMEAL=$P(FHZN,U,3)
  1. ..I FHOMEAL'="A",FHOMEAL'[FHMEAL Q
  1. ..I FHBY="P",FHDFN'=FHTTDFN Q
  1. ..I FHBY="L",W1'=FHLOC Q
  1. ..I FHBY="C" S FHCOMM=$P($G(^FH(119.6,FHLOC,0)),U,8) I FHP'=FHCOMM Q
  1. ..S FHLOCNM=$P($G(^FH(119.6,FHLOC,0)),U,1) I FHMEAL="E" S FHMEAL="Z"
  1. ..I SRT="R" S ^TMP($J,"OPTX",FHLOCNM,FHMEAL_"~"_FHPTNM_"~"_FHDFN_"~G")=FHZN
  1. ..I SRT'="R" S ^TMP($J,"OPTX",FHPTNM,FHMEAL_"~"_FHLOCNM_"~"_FHDFN_"~G")=FHZN
  1. ..Q
  1. .Q
  1. ;
  1. ;Now process sorted OM tray tickets
  1. I '$D(^TMP($J,"OPTX")) Q
  1. S FHINDX="" F S FHINDX=$O(^TMP($J,"OPTX",FHINDX)) Q:FHINDX="" D
  1. .S FHINDX2="" F S FHINDX2=$O(^TMP($J,"OPTX",FHINDX,FHINDX2)) Q:FHINDX2="" D
  1. ..S FHZN=$G(^TMP($J,"OPTX",FHINDX,FHINDX2)),FHOMDT=$P(FHZN,U,1)
  1. ..S FHMEAL=$P(FHINDX2,"~",1) I FHMEAL="Z" S FHMEAL="E" ;for sorting
  1. ..S FHDFN=$P(FHINDX2,"~",3),FHOMTYP=$P(FHINDX2,"~",4)
  1. ..S FHLOC=$P(FHZN,U,3) I FHOMTYP="G" S FHLOC=$P(FHZN,U,5)
  1. ..I FHOMTYP="R" S FHRNUM=$P(FHINDX2,"~",5)
  1. ..I UPD,FHOMTYP="R",$P(FHZN,U,16)<$P(FHZN,U,13) Q
  1. ..I UPD,FHOMTYP="S",$P(FHZN,U,10)'="" Q
  1. ..I FHOMEAL'="A" D BLD^FHOMTK2 Q
  1. ..S MEAL=FHMEAL D BLD^FHOMTK2
  1. ..Q
  1. .Q
  1. I $G(NBR) D PRT^FHMTK1C Q
  1. K FHTTDFN Q