1 | PPPPRT11 ;ALB/JFP - DISPLAY LOG FILE ENTRIES ; 3/20/92
|
---|
2 | ;;V1.0;PHARMACY PRESCRIPTION PRACTICE;;APR 7,1995
|
---|
3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | ; -- This routine displays entries in the PPP Log file
|
---|
6 | ;
|
---|
7 | DSPLOG(IDATE) ; -- List processor entry point
|
---|
8 | ;
|
---|
9 | ; This is the main entry point for calling the list manager
|
---|
10 | ;
|
---|
11 | ; Parameters:
|
---|
12 | ; IDATE - The the report will start displaying data from.
|
---|
13 | ;
|
---|
14 | N LSTARRAY,IDXARRAY,VALMCNT,STRTDTE
|
---|
15 | ;
|
---|
16 | ;
|
---|
17 | S STRTDTE=IDATE
|
---|
18 | S Y=STRTDTE D DD^%DT S BDATE=Y
|
---|
19 | S Y=DT D DD^%DT S EDATE=Y
|
---|
20 | ;
|
---|
21 | K XQORS,VALMEVL
|
---|
22 | D EN^VALM("PPP LOG DISPL")
|
---|
23 | Q
|
---|
24 | ;
|
---|
25 | INIT ; -- Collects all the data and builds the display array
|
---|
26 | ;
|
---|
27 | N X,Y,CNT,LOGDFN,LOGND,RTN,MSG,ICODE,CODE,DATE
|
---|
28 | N IUSER,EUSER,USER,TXTLINE
|
---|
29 | ;
|
---|
30 | ;
|
---|
31 | S LSTARRAY="^TMP(""PPPL5"",$J)"
|
---|
32 | S IDXARRAY="^TMP(""PPPIDX"",$J)"
|
---|
33 | ;
|
---|
34 | K @LSTARRAY,@IDXARRAY
|
---|
35 | ;
|
---|
36 | S (VALMCNT,CNT)=0
|
---|
37 | W !!,"Building display...this may take a moment"
|
---|
38 | F D D:CNT=0 NUL Q:(IDATE="")
|
---|
39 | .S IDATE=$O(^PPP(1020.4,"C",IDATE)) Q:IDATE=""
|
---|
40 | .S LOGDFN=0
|
---|
41 | .F D Q:(LOGDFN="")
|
---|
42 | ..S LOGDFN=$O(^PPP(1020.4,"C",IDATE,LOGDFN)) Q:LOGDFN=""
|
---|
43 | ..S LOGND(0)=$G(^PPP(1020.4,LOGDFN,0))
|
---|
44 | ..S RTN=$G(^PPP(1020.4,LOGDFN,1))
|
---|
45 | ..S MSG=$G(^PPP(1020.4,LOGDFN,2))
|
---|
46 | ..S ICODE=$P(LOGND(0),"^",1),CODE=""
|
---|
47 | ..S:ICODE'="" CODE=$P($G(^PPP(1020.6,ICODE,0)),"^",2)
|
---|
48 | ..S Y=$P(LOGND(0),"^",3)
|
---|
49 | ..D DD^%DT S DATE=Y
|
---|
50 | ..S IUSER=$P(LOGND(0),"^",4),EUSER=""
|
---|
51 | ..S:IUSER'="" USER=$P($G(^VA(200,IUSER,0)),"^",1)
|
---|
52 | ..D SETD
|
---|
53 | Q
|
---|
54 | ;
|
---|
55 | HDR ; -- Builds Header
|
---|
56 | S VALMHDR(1)=""
|
---|
57 | S VALMHDR(2)="Data extracted for "_BDATE_" to "_EDATE
|
---|
58 | Q
|
---|
59 | ;
|
---|
60 | NUL ; -- Sets null message
|
---|
61 | ;
|
---|
62 | S @LSTARRAY@(1,0)=""
|
---|
63 | S @LSTARRAY@(2,0)=" No entries found for "_BDATE_" to "_EDATE
|
---|
64 | S @LSTARRAY@(3,0)=""
|
---|
65 | S @LSTARRAY@(4,0)=" Press <RETURN> to continue"
|
---|
66 | S VALMCNT=4
|
---|
67 | Q
|
---|
68 | FNL ; -- Clean up
|
---|
69 | ;
|
---|
70 | K @LSTARRAY,@IDXARRAY
|
---|
71 | K IDATE,BDATE,EDATE
|
---|
72 | Q
|
---|
73 | ;
|
---|
74 | SETD ; -- Sets up display for line for list processor
|
---|
75 | S TXTLINE=" "
|
---|
76 | S CNT=CNT+1
|
---|
77 | S TXTLINE=$$SETFLD^VALM1(""_DATE,TXTLINE,"DATE")
|
---|
78 | S TXTLINE=$$SETFLD^VALM1(USER,TXTLINE,"USER")
|
---|
79 | S TXTLINE=$$SETFLD^VALM1(RTN,TXTLINE,"ROUTINE")
|
---|
80 | D SETL
|
---|
81 | S TXTLINE=$$SETSTR^VALM1(CODE_" "_MSG,"",1,79)
|
---|
82 | D SETL
|
---|
83 | S TXTLINE=$$SETSTR^VALM1(" ","",1,79)
|
---|
84 | D SETL
|
---|
85 | Q
|
---|
86 | ;
|
---|
87 | SETL ; -- Sets up list manager display array
|
---|
88 | S VALMCNT=VALMCNT+1
|
---|
89 | S @LSTARRAY@(VALMCNT,0)=$E(TXTLINE,1,79)
|
---|
90 | S @LSTARRAY@("IDX",VALMCNT,CNT)=""
|
---|
91 | S @IDXARRAY@(CNT)=VALMCNT
|
---|
92 | Q
|
---|
93 | ;
|
---|
94 | END ; -- End of code
|
---|
95 | Q
|
---|
96 | ;
|
---|