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

ECXNUTDP.m

Go to the documentation of this file.
  1. ECXNUTDP ;ALB/JRC - Nut Division Worksheet Print ; 2/18/09 1:47pm
  1. ;;3.0;DSS EXTRACTS;**92,104,119**;Dec 22, 1997;Build 19
  1. ;
  1. EN ;entry point from option
  1. ;Queue Report
  1. N ZTDESC,ZTIO,ZTSAVE
  1. S ZTIO=""
  1. S ZTDESC="Nutrition Division Worksheet for DSS"
  1. D EN^XUTMDEVQ("EN1^ECXNUTDP",ZTDESC,.ZTSAVE)
  1. Q
  1. EN1 ;Tasked entry point
  1. ;Declare variables
  1. N STOP,PAGENUM,LN,LTYPE
  1. S (STOP,PAGENUM,LTYPE)=0,LN=""
  1. K ^TMP($J)
  1. F LTYPE="119.71","119.72" D I STOP D EXIT Q
  1. .D HEADER I STOP D EXIT Q
  1. .D GETDATA
  1. .I '$D(^TMP($J,"ECX",LTYPE)) D Q
  1. ..W !
  1. ..W !,"***********************************************"
  1. ..W !,"* NOTHING TO REPORT FOR "_$S(LTYPE=119.71:"PRODUCTION LOCATIONS",LTYPE=119.72:"DELIVERY LOCATIONS ",1:"")_" *"
  1. ..W !,"***********************************************"
  1. ..D WAIT
  1. .D DETAIL I STOP D EXIT Q
  1. .D FOOTER I STOP D EXIT Q
  1. .D WAIT Q:STOP
  1. .K ^TMP($J)
  1. EXIT K ^TMP("ECXDSS",$J)
  1. Q
  1. GETDATA ;Get data
  1. ;Init variables
  1. N DIV,IEN,PLIEN,IENS,LOCATION,CNT,PDIV,FILE
  1. S (DIV,LOCATION,PDIV)="",(IEN,PLIEN,IENS,CNT)=0
  1. S DIV="" F S DIV=$O(^ECX(728.46,"B",DIV)) Q:DIV="" D
  1. . ;Q:LTYPE'=$E(DIV,6,11)
  1. . Q:LTYPE'=$E($P(DIV,"(",2),1,6)
  1. . S IEN=$O(^ECX(728.46,"B",DIV,0)) Q:'IEN D
  1. .. ;S PLIEN=$P(DIV,";",1),FILE=$E(DIV,6,11),CNT=$G(CNT)+1
  1. .. S PLIEN=$P(DIV,";",1),FILE=$E($P(DIV,"(",2),1,6),CNT=$G(CNT)+1
  1. .. I FILE'=LTYPE Q
  1. .. S IENS=""_PLIEN_","_""
  1. .. S LOCATION=$$GET1^DIQ(FILE,""_IENS_","_"",.01,"E")
  1. .. S PDIV=$$GET1^DIQ(728.46,IEN,1,"I")
  1. .. S PDIV=$$RADDIV^ECXDEPT(PDIV)
  1. .. S ^TMP($J,"ECX",FILE)="1"
  1. .. S ^TMP($J,"ECX",FILE,PLIEN)=PLIEN_U_LOCATION_U_PDIV
  1. Q
  1. N TYPE
  1. S PAGENUM=$G(PAGENUM)+1
  1. S $P(LN,"=",9)="",TYPE=$S(LTYPE=119.71:"PRODUCTION",LTYPE=119.72:"DELIVERY",1:"")
  1. W @IOF
  1. W ?1,"RUN DATE: ",$$FMTE^XLFDT(DT,"5H"),?70,"PAGE ",PAGENUM
  1. W !,?23,"NUTRITION DIVISION WORKSHEET"
  1. W !!,?27,TYPE_" LOCATIONS"
  1. W:TYPE="DELIVERY" !!,?2,TYPE
  1. W:TYPE="PRODUCTION" !!,?1,TYPE
  1. W ?26,TYPE,?50,"ASSIGNED"
  1. W !,?1,"LOCATION #",?26,"LOCATIONS",?50,"DIVISION"
  1. W !,?1,LN_"===",?26,LN,LN,?47,LN,LN
  1. Q
  1. ;
  1. DETAIL ;Print detailed line
  1. ;Input : ^TMP("ECXDSS",$J) full global reference
  1. ; PLIEN - File 119.71 or 119.72 IEN
  1. ; LOCATION - File 119.71 or 119.72 NAME
  1. ; DIVISION - Assigned production division
  1. ;Output : None
  1. N TYPE,FILE,NODE,PIEN,CNT,X1,X2
  1. S TYPE=$S(LTYPE=119.71:"PRODUCTION",1:"DELIVERY LOCATIONS")
  1. S FILE=0 F S FILE=$O(^TMP($J,"ECX",FILE)) Q:'FILE!STOP D
  1. .S PIEN=0 F S PIEN=$O(^TMP($J,"ECX",FILE,PIEN)) Q:'PIEN!STOP D
  1. ..S NODE=^TMP($J,"ECX",FILE,PIEN)
  1. ..W !?3,$$RJ^XLFSTR($P(NODE,U),U,6),?26,$P(NODE,U,2),?50,$$RJ^XLFSTR($P(NODE,U,3),U,6)
  1. ..I $Y>(IOSL-5) D WAIT Q:STOP D HEADER
  1. ..Q
  1. S CNT=0
  1. W !!,"The following "_TYPE_" are missing in the DSS Worksheets"
  1. W !!?3,TYPE,?26,"INACTIVE FLAG",!?3,"----",?26,"-------------",!
  1. F IEN=0:0 S IEN=$O(^FH(LTYPE,IEN)) Q:'IEN D
  1. . I '$D(^ECX(728.46,"B",IEN_";FH("_LTYPE_",")) D
  1. .. S X1=$$GET1^DIQ(LTYPE,""_IEN_","_"",.01,"E")
  1. .. S X2=$$GET1^DIQ(LTYPE,IEN,99,"E")
  1. .. W !?3,X1,?26,X2 S CNT=CNT+1
  1. I CNT=0 W !!?3,"NOTHING TO REPORT... YOUR FILES ARE CLEAN!"
  1. Q
  1. ;
  1. WAIT ;End of page logic
  1. ;Input ; None
  1. ;Output ; STOP - Flag indicating if printing should continue
  1. ; 1 = Stop 0 = Continue
  1. ;
  1. S STOP=0
  1. ;CRT - Prompt for continue
  1. I $E(IOST,1,2)="C-"&(IOSL'>24) D Q
  1. .F Q:$Y>(IOSL-3) W !
  1. .N DIR,X,Y,DTOUT,DUOUT,DIRUT,DIROUT
  1. .S DIR(0)="E"
  1. .D ^DIR
  1. .S STOP=$S(Y'=1:1,1:0)
  1. ;Background task - check taskman
  1. S STOP=$$S^%ZTLOAD()
  1. I STOP D
  1. .W !,"*********************************************"
  1. .W !,"* PRINTING OF REPORT STOPPED AS REQUESTED *"
  1. .W !,"*********************************************"
  1. Q
  1. N DIV,IEN
  1. S DIV="",IEN=0
  1. W !!!,?1,"INSTITUTION",!,"FILE/DIVISIONS",!,LN,LN
  1. F S DIV=$O(^DG(40.8,"B",DIV)) Q:DIV=""!STOP D
  1. .F S IEN=$O(^DG(40.8,"B",DIV,IEN)) Q:'IEN!STOP D Q:STOP
  1. ..W !,?3,$$RJ^XLFSTR($$GETDIV^ECXDEPT(IEN),U,8)
  1. ..I $Y>(IOSL-5) D WAIT Q:STOP D HEADER,FHEADER
  1. Q
  1. FHEADER ;Footer header
  1. W !!!,?1,"INSTITUTION",!,"FILE/DIVISIONS",!,LN,LN
  1. Q