source: FOIAVistA/trunk/r/DSS_EXTRACTS-ECX/ECXNUTDP.m@ 868

Last change on this file since 868 was 628, checked in by George Lilly, 15 years ago

initial load of FOIAVistA 6/30/08 version

File size: 3.5 KB
Line 
1ECXNUTDP ;ALB/JRC - Nut Division Worksheet Print ; 11/2/06 8:41am
2 ;;3.0;DSS EXTRACTS;**92,104**;Dec 22, 1997;Build 8
3 ;
4EN ;entry point from option
5 ;Queue Report
6 N ZTDESC,ZTIO,ZTSAVE
7 S ZTIO=""
8 S ZTDESC="Nutrition Division Worksheet for DSS"
9 D EN^XUTMDEVQ("EN1^ECXNUTDP",ZTDESC,.ZTSAVE)
10 Q
11EN1 ;Tasked entry point
12 ;Declare variables
13 N STOP,PAGENUM,LN,LTYPE
14 S (STOP,PAGENUM,LTYPE)=0,LN=""
15 K ^TMP($J)
16 F LTYPE="119.71","119.72" D I STOP D EXIT Q
17 .D HEADER I STOP D EXIT Q
18 .D GETDATA
19 .I '$D(^TMP($J,"ECX",LTYPE)) D Q
20 ..W !
21 ..W !,"***********************************************"
22 ..W !,"* NOTHING TO REPORT FOR "_$S(LTYPE=119.71:"PRODUCTION LOCATIONS",LTYPE=119.72:"DELIVERY LOCATIONS ",1:"")_" *"
23 ..W !,"***********************************************"
24 ..D WAIT
25 .D DETAIL I STOP D EXIT Q
26 .D FOOTER I STOP D EXIT Q
27 .D WAIT Q:STOP
28 .K ^TMP($J)
29EXIT K ^TMP("ECXDSS",$J)
30 Q
31GETDATA ;Get data
32 ;Init variables
33 N DIV,IEN,PLIEN,IENS,LOCATION,CNT,PDIV,FILE
34 S (DIV,LOCATION,PDIV)="",(IEN,PLIEN,IENS,CNT)=0
35 S DIV="" F S DIV=$O(^ECX(728.46,"B",DIV)) Q:DIV="" D
36 . ;Q:LTYPE'=$E(DIV,6,11)
37 . Q:LTYPE'=$E($P(DIV,"(",2),1,6)
38 . S IEN=$O(^ECX(728.46,"B",DIV,0)) Q:'IEN D
39 .. ;S PLIEN=$P(DIV,";",1),FILE=$E(DIV,6,11),CNT=$G(CNT)+1
40 .. S PLIEN=$P(DIV,";",1),FILE=$E($P(DIV,"(",2),1,6),CNT=$G(CNT)+1
41 .. I FILE'=LTYPE Q
42 .. S IENS=""_PLIEN_","_""
43 .. S LOCATION=$$GET1^DIQ(FILE,""_IENS_","_"",.01,"E")
44 .. S PDIV=$$GET1^DIQ(728.46,IEN,1,"I")
45 .. S PDIV=$$RADDIV^ECXDEPT(PDIV)
46 .. S ^TMP($J,"ECX",FILE)="1"
47 .. S ^TMP($J,"ECX",FILE,PLIEN)=PLIEN_U_LOCATION_U_PDIV
48 Q
49HEADER ;print header
50 N TYPE
51 S PAGENUM=$G(PAGENUM)+1
52 S $P(LN,"=",9)="",TYPE=$S(LTYPE=119.71:"PRODUCTION",LTYPE=119.72:"DELIVERY",1:"")
53 W @IOF
54 W ?1,"RUN DATE: ",$$FMTE^XLFDT(DT,"5H"),?70,"PAGE ",PAGENUM
55 W !,?23,"NUTRITION DIVISION WORKSHEET"
56 W !!,?27,TYPE_" LOCATIONS"
57 W:TYPE="DELIVERY" !!,?2,TYPE
58 W:TYPE="PRODUCTION" !!,?1,TYPE
59 W ?26,TYPE,?50,"ASSIGNED"
60 W !,?1,"LOCATION #",?26,"LOCATIONS",?50,"DIVISION"
61 W !,?1,LN_"===",?26,LN,LN,?47,LN,LN
62 Q
63 ;
64DETAIL ;Print detailed line
65 ;Input : ^TMP("ECXDSS",$J) full global reference
66 ; PLIEN - File 119.71 or 119.72 IEN
67 ; LOCATION - File 119.71 or 119.72 NAME
68 ; DIVISION - Assigned production division
69 ;Output : None
70 N FILE,NODE,PIEN
71 S FILE=0 F S FILE=$O(^TMP($J,"ECX",FILE)) Q:'FILE!STOP D
72 .S PIEN=0 F S PIEN=$O(^TMP($J,"ECX",FILE,PIEN)) Q:'PIEN!STOP D
73 ..S NODE=^TMP($J,"ECX",FILE,PIEN)
74 ..W !?3,$$RJ^XLFSTR($P(NODE,U),U,6),?26,$P(NODE,U,2),?50,$$RJ^XLFSTR($P(NODE,U,3),U,6)
75 ..I $Y>(IOSL-5) D WAIT Q:STOP D HEADER
76 ..Q
77 Q
78 ;
79WAIT ;End of page logic
80 ;Input ; None
81 ;Output ; STOP - Flag indicating if printing should continue
82 ; 1 = Stop 0 = Continue
83 ;
84 S STOP=0
85 ;CRT - Prompt for continue
86 I $E(IOST,1,2)="C-"&(IOSL'>24) D Q
87 .F Q:$Y>(IOSL-3) W !
88 .N DIR,X,Y,DTOUT,DUOUT,DIRUT,DIROUT
89 .S DIR(0)="E"
90 .D ^DIR
91 .S STOP=$S(Y'=1:1,1:0)
92 ;Background task - check taskman
93 S STOP=$$S^%ZTLOAD()
94 I STOP D
95 .W !,"*********************************************"
96 .W !,"* PRINTING OF REPORT STOPPED AS REQUESTED *"
97 .W !,"*********************************************"
98 Q
99FOOTER ;Print footer
100 N DIV,IEN
101 S DIV="",IEN=0
102 W !!!,?1,"INSTITUTION",!,"FILE/DIVISIONS",!,LN,LN
103 F S DIV=$O(^DG(40.8,"B",DIV)) Q:DIV=""!STOP D
104 .F S IEN=$O(^DG(40.8,"B",DIV,IEN)) Q:'IEN!STOP D Q:STOP
105 ..W !,?3,$$RJ^XLFSTR($$GETDIV^ECXDEPT(IEN),U,8)
106 ..I $Y>(IOSL-5) D WAIT Q:STOP D HEADER,FHEADER
107 Q
108FHEADER ;Footer header
109 W !!!,?1,"INSTITUTION",!,"FILE/DIVISIONS",!,LN,LN
110 Q
Note: See TracBrowser for help on using the repository browser.