1 | TIUPRPN5 ;SLC/MJC-Sort PNs for Prting by Location;6/26/01
|
---|
2 | ;;1.0;TEXT INTEGRATION UTILITIES;**100,121**;Jun 20, 1997
|
---|
3 | ;
|
---|
4 | LOC ;sorts PNs for prting by CLINIC location
|
---|
5 | ;these notes are chartable contiguous or separate
|
---|
6 | ;this option is screened to exclude WARDs
|
---|
7 | ;sites should use the [TIU PRINT PN WARD] option which sorts
|
---|
8 | ;by BED NUMBER for current inpts on that ward for INPT notes
|
---|
9 | ;[TIU PRINT PN OUTPT LOC]
|
---|
10 | ;
|
---|
11 | N DIC,Y,TIUQT,TIULOC
|
---|
12 | D SETUP^TIUPRPN3("Print Progress Notes for OUTPATIENT LOCATION")
|
---|
13 | DIC F D Q:$D(TIUQT)
|
---|
14 | .S DIC=8925.93,DIC(0)="AEQMNZ",DIC("A")="Select OUTPATIENT location: "
|
---|
15 | .S DIC("S")="I $P($G(^SC(+$P($G(^TIU(8925.93,+Y,0)),U),0)),U,3)'=""W"""
|
---|
16 | .W ! D ^DIC K DIC("S") I Y<0 S TIUQT=1 Q
|
---|
17 | .S TIULOC=+Y(0)_U_+Y_U_Y(0,0)
|
---|
18 | .I '$D(^TIU(8925,"ALOCP",+TIULOC)) D Q
|
---|
19 | ..W !,$C(7),"There are no signed Progress Notes for this location!!"
|
---|
20 | .D NOTES(TIULOC)
|
---|
21 | Q
|
---|
22 | ;
|
---|
23 | NOTES(TIULOC) ;returns date/time;ien of last note prted
|
---|
24 | N OLD,NEW,Y,BEG,IFN,TIUSPG,CTR,TIULAST,ANS,MSG,TIUQT,DFN,SORT
|
---|
25 | K ^TMP("TIUREPLACE",$J)
|
---|
26 | S MSG=1,TIULAST=$P($G(^TIU(8925.93,+$P(TIULOC,U,2),1)),U,2)
|
---|
27 | I TIULAST]"" D Q:$D(TIUQT)
|
---|
28 | .I '+$G(TIULAST)!'$P(TIULAST,";",2)!('$D(^TIU(8925,"ALOCP",+TIULOC,+TIULAST,+$P(TIULAST,";",2)))) S $P(^TIU(8925.93,+$P(TIULOC,U,2),1),U,2)="",MSG=2 Q
|
---|
29 | .S BEG=+TIULAST
|
---|
30 | .W !!,"The last note printed for this location using this option was "
|
---|
31 | .W !,"signed ",$$FMTE^XLFDT(BEG,"1P"),!!
|
---|
32 | .S ANS=$$READ^TIUU("YA","Print from this point on? ","YES","^D HELP^TIUPRPN5")
|
---|
33 | .I $D(DIRUT) S TIUQT=1 Q
|
---|
34 | .I +$G(ANS) S IFN=$P(TIULAST,U,2) Q
|
---|
35 | .S $P(^TIU(8925.93,+$P(TIULOC,U,2),1),U,2)="",MSG=3
|
---|
36 | I $P($G(^TIU(8925.93,+$P(TIULOC,U,2),1)),U,2)']"" D Q:$D(TIUQT)
|
---|
37 | .D @MSG ;writes message to explain date selection
|
---|
38 | RANGE .S OLD=$O(^TIU(8925,"ALOCP",+TIULOC,0))
|
---|
39 | .S NEW=$O(^TIU(8925,"ALOCP",+TIULOC,9999999),-1)
|
---|
40 | .W !," The OLDEST note was signed: ",$$FMTE^XLFDT(OLD,"1P")
|
---|
41 | .W !,"The MOST RECENT note was signed: ",$$FMTE^XLFDT(NEW,"1P"),!
|
---|
42 | .W !,"Select a date and I will print all signed notes for "
|
---|
43 | .W !,$P(TIULOC,U,3)," from this date until NOW.",!
|
---|
44 | DATE .S %DT="AEPX",%DT(0)="-NOW",%DT("A")="Print Notes Beginning: "
|
---|
45 | .D ^%DT K %DT I $D(DTOUT)!(Y<0) S TIUQT=1 Q
|
---|
46 | .I Y>NEW W $C(7),!?5,"Pick a date between the OLDEST and the MOST "
|
---|
47 | .I W "RECENT." G DATE
|
---|
48 | .S BEG=Y
|
---|
49 | S CTR=0 F S BEG=$O(^TIU(8925,"ALOCP",+TIULOC,BEG)) Q:'BEG D
|
---|
50 | .I '$D(IFN) S IFN=0
|
---|
51 | .F S IFN=$O(^TIU(8925,"ALOCP",+TIULOC,BEG,IFN)) Q:'IFN D
|
---|
52 | ..W "." D REPLACE^TIUPRPN3(IFN,BEG,1501)
|
---|
53 | S IFN=0 F S IFN=$O(^TMP("TIUREPLACE",$J,IFN)) Q:'IFN D
|
---|
54 | .S DFN=$P(^TIU(8925,IFN,0),U,2),SORT=$P(^DPT(DFN,0),U)_";"_DFN
|
---|
55 | .S BEG=^TMP("TIUREPLACE",$J,IFN,"DT")
|
---|
56 | .S ^TMP("TIUPR",$J,SORT,BEG,IFN)="Vice SF 509"
|
---|
57 | .S TIULAST=BEG_";"_IFN
|
---|
58 | S CTR=+$G(^TMP("TIUREPLACE",$J))
|
---|
59 | I CTR=0 W $C(7),!!,"No notes have been signed for this location since "
|
---|
60 | I W $$FMTE^XLFDT(+TIULAST,"1P") G NOTESX
|
---|
61 | W !,">> "_CTR_" note"_$S(CTR>1:"s",1:"")_" found for "_$P(TIULOC,U,3)
|
---|
62 | I CTR'>1 S TIUSPG=1
|
---|
63 | E S TIUSPG=$$PAGE^TIUPRPN3 G:TIUSPG']"" NOTESX S TIUSPG=$S(+$G(TIUSPG):0,1:1)
|
---|
64 | DEV S %ZIS("B")=$P($G(^%ZIS(1,+$P($G(^TIU(8925.93,$P(TIULOC,U,2),1)),U,3),0),""),U) ;brings up default prter from param file
|
---|
65 | W ! S %ZIS="Q" D ^%ZIS I POP K POP G EXIT
|
---|
66 | I $E(IOST)="C" W $C(7),$C(7),!?5,"You must select a "
|
---|
67 | I W "printer for this option!!" G DEV
|
---|
68 | S $P(^TIU(8925.93,$P(TIULOC,U,2),0),U,4)=""
|
---|
69 | I $D(IO("Q")) K IO("Q") D G EXIT
|
---|
70 | .S ZTRTN="PRINT^TIUPRPN5",ZTSAVE("^TMP(""TIUPR"",$J,")=""
|
---|
71 | .S ZTSAVE("TIUSPG")="",ZTSAVE("TIULAST")="",ZTSAVE("TIULOC")=""
|
---|
72 | .S ZTDESC="TIU PRT PNS BY LOCATION"
|
---|
73 | .D ^%ZTLOAD W !,$S($D(ZTSK):"Request Queued!",1:"Request Canceled!")
|
---|
74 | .K ZTSK,ZTDESC,ZTDTH,ZTIO,ZTRTN,ZTSAVE,%ZIS,TIULAST,TIUSPG,TIULOC
|
---|
75 | .D HOME^%ZIS
|
---|
76 | U IO D PRINT,^%ZISC
|
---|
77 | NOTESX ;
|
---|
78 | K ^TMP("TIUREPLACE",$J)
|
---|
79 | Q
|
---|
80 | PRINT ;
|
---|
81 | K ^TMP("TIULQ",$J)
|
---|
82 | I $D(ZTQUEUED) S ZTREQ="@"
|
---|
83 | D PRINT^TIUPRPN1(1,$G(TIUSPG))
|
---|
84 | S $P(^TIU(8925.93,$P(TIULOC,U,2),1),U,2)=TIULAST
|
---|
85 | EXIT K ^TMP("TIULQ",$J),^TMP("TIUPR",$J),^TMP("TIUREPLACE",$J)
|
---|
86 | Q
|
---|
87 | ;
|
---|
88 | 1 W !!,"I don't seem to have any record of you having used this option "
|
---|
89 | W !,"to print progress notes for this location.",!
|
---|
90 | Q
|
---|
91 | 2 W !!,"I could not determine what the last note printed for this "
|
---|
92 | W !,"location was."
|
---|
93 | W !!,"Please select a date and all notes from that date to NOW will be"
|
---|
94 | W !,"printed. The last note printed will become the new base date.",!
|
---|
95 | Q
|
---|
96 | 3 W !!,"OK- then select a different date.",!
|
---|
97 | Q
|
---|
98 | HELP ; help for continue from this point prompt
|
---|
99 | W !!,"Every note that has been signed since this date (last time this"
|
---|
100 | W !,"notes were printed using this option) until NOW will be printed."
|
---|
101 | Q
|
---|