1 | RMPORIP ;(NG)/DG/CAP/HINES CIOFO/HNC -INACTIVE HOME OXYGEN PATIENTS ; 5/18/00 9:35am
|
---|
2 | ;;3.0;PROSTHETICS;**29,49**;Feb 09, 1996
|
---|
3 | ;
|
---|
4 | SITE ; Initialize site variables
|
---|
5 | D HOSITE^RMPOUTL0 Q:'$D(RMPOXITE)
|
---|
6 | ;
|
---|
7 | FROM ; Ask starting date/oldest inactive date
|
---|
8 | K DIR S DIR(0)="D^^^P"
|
---|
9 | S DIR("A")="Start at INACTIVATION DATE"
|
---|
10 | S DIR("B")="T-180"
|
---|
11 | S DIR("?")="Enter the earliest INACTIVATION DATE to report on."
|
---|
12 | D ^DIR G:$D(DTOUT)!$D(DUOUT) EXIT
|
---|
13 | W " ("_Y(0)_")"
|
---|
14 | S FRMDT=Y,FDT=Y(0)
|
---|
15 | ;
|
---|
16 | TO ; Ask ending/newest inactivation date
|
---|
17 | K DIR S DIR(0)="D^^^P"
|
---|
18 | S DIR("A")="Ending INACTIVATION DATE"
|
---|
19 | S DIR("B")="T"
|
---|
20 | S DIR("?")="Enter the latest INACTIVATION DATE to report on."
|
---|
21 | D ^DIR G EXIT:$D(DTOUT),FROM:$D(DUOUT)
|
---|
22 | W " ("_Y(0)_")",!
|
---|
23 | ;
|
---|
24 | I Y<FRMDT D G TO
|
---|
25 | . W !,"Ending date must NOT be earlier than "_FDT_".",!
|
---|
26 | S TODT=Y,TDT=Y(0)
|
---|
27 | ;
|
---|
28 | LI ; List the sought patients
|
---|
29 | K DA,DASH S (COUNT,PAGE,RMEND,RMPORPT,L)=0
|
---|
30 | S $P(DASH,"-",79)=""
|
---|
31 | D NOW^%DTC S Y=% X ^DD("DD")
|
---|
32 | S RPTDT=$P(Y,"@",1)_" "_$P($P(Y,"@",2),":",1,2)
|
---|
33 | ;
|
---|
34 | S DIC="^RMPR(665,",BY="[RMPO-RPT-HOINACTIVE]"
|
---|
35 | S FR=","_$$DATE(FRMDT),TO=","_$$DATE(TODT)
|
---|
36 | S DIS(0)="I $P($G(^RMPR(665,D0,""RMPOA"")),U,7)=RMPOXITE"
|
---|
37 | S DHD="W ?0 D RPTHDR^RMPORIP"
|
---|
38 | S DIOEND="I $G(Y)'[U W !!,?53,""TOTAL PATIENTS: "",$J(COUNT,6) S RMEND=1 S:IOST[""P-"" RMPORPT=1"
|
---|
39 | S FLDS=".01;C1;L20;""PATIENT"",D SSN^RMPORIP W X;C22;R4;""SSN"",D SDT^RMPORIP W X;C28;L10;""START"""
|
---|
40 | S FLDS(2)="D EDT^RMPORIP W X;C40;L10;""INACTIVE"",D IREA^RMPORIP W X;C52;L29;""REASON"""
|
---|
41 | D EN1^DIP
|
---|
42 | I RMPORPT=0,$G(RMEND) K DIR S DIR(0)="E" D ^DIR
|
---|
43 | ;
|
---|
44 | EXIT K ^TMP($J) N RMPR,RMPRSITE D KILL^XUSCLEAN
|
---|
45 | Q
|
---|
46 | ;
|
---|
47 | ;*** CONVERT DATE FROM FILEMAN FORMAT TO MM/DD/YYYY
|
---|
48 | DATE(FMD) ;
|
---|
49 | Q $E(FMD,4,5)_"/"_$E(FMD,6,7)_"/"_($E(FMD,1,3)+1700)
|
---|
50 | ;
|
---|
51 | EDT ;*** INACTIVATION DATE
|
---|
52 | S X=$P($G(^RMPR(665,D0,"RMPOA")),U,3) S:X X=$$DATE(X)
|
---|
53 | Q
|
---|
54 | ;
|
---|
55 | IREA ;*** INACTIVE REASON
|
---|
56 | I $D(^RMPR(665,D0,"RMPOA")) D
|
---|
57 | . N RMMSG S X=$P(^RMPR(665,D0,"RMPOA"),U,4)
|
---|
58 | . S X=$$EXTERNAL^DILFD(665,19.6,"",X,"RMMSG")
|
---|
59 | E S X=""
|
---|
60 | Q
|
---|
61 | ;
|
---|
62 | RPTHDR ;*** REPORT HEADER
|
---|
63 | N RA S RA=RMPO("NAME"),PAGE=PAGE+1
|
---|
64 | W RPTDT,?(40-($L(RA)/2)),RA,?68,"Page: "_PAGE
|
---|
65 | W !?18,"Inactive Home Oxygen Patients",!
|
---|
66 | W !?13,"Date Range: ",FDT," to ",TDT,!
|
---|
67 | W !,"Patient",?21,"SSN",?28,"Active",?40,"Inactive",?51,"Inactive Reason"
|
---|
68 | W !,"===================",?21,"====",?27,"==========",?39,"========== ========================",!
|
---|
69 | Q
|
---|
70 | ;
|
---|
71 | SDT ;*** GET START DATE (USE INITIAL OXYGEN RX DATE)
|
---|
72 | S X=$P($G(^RMPR(665,D0,"RMPOA")),U,2) S:X X=$$DATE(X)
|
---|
73 | Q
|
---|
74 | ;
|
---|
75 | SSN ;*** GET SSN
|
---|
76 | K VA,VADM
|
---|
77 | S DFN=D0 D ^VADPT
|
---|
78 | S X=$P(VA("PID"),"-",3)
|
---|
79 | S:X'="" COUNT=COUNT+1
|
---|
80 | Q
|
---|