[613] | 1 | RMPORPT ;(NG)/DG/CAP /HINES CIOFO/HNC - Home Oxygen Primary Item Report ;7/24/98
|
---|
| 2 | ;;3.0;PROSTHETICS;**29,46**;Feb 09, 1996
|
---|
| 3 | SITE ;Set up site variables.
|
---|
| 4 | D HOSITE^RMPOUTL0 I '$D(RMPOXITE) Q
|
---|
| 5 | ;
|
---|
| 6 | LI ;List the sought patient.
|
---|
| 7 | N PBREAK,NBREAK S (PBREAK,NBREAK)=""
|
---|
| 8 | S DIC="^RMPR(665,"
|
---|
| 9 | S BY(0)="^TMP($J,",L(0)=3
|
---|
| 10 | S DIS(0)="I $P($G(^RMPR(665,D0,""RMPOA"")),U,7)=RMPOXITE,$P($G(^RMPR(665,D0,""RMPOA"")),U,2)'="""",$P($G(^RMPR(665,D0,""RMPOA"")),U,3)="""""
|
---|
| 11 | S L=0,FR="",(PAGE,RMEND,RMPORPT)=0
|
---|
| 12 | S $P(SPACE," ",80)="",COUNT=0
|
---|
| 13 | D NOW^%DTC
|
---|
| 14 | S Y=% X ^DD("DD") S RPTDT=$P(Y,"@",1)_" "_$P($P(Y,"@",2),":",1,2)
|
---|
| 15 | S DHD="W ?0 D RPTHDR^RMPORPT"
|
---|
| 16 | S DIOEND="I $G(Y)'[U S COUNT=$E("" "",1,(6-$L(COUNT)))_COUNT W !!,?50,""Total Patients: "",COUNT S RMEND=1 S:IOST[""P-"" RMPORPT=1"
|
---|
| 17 | ;S DIOEND="S:$G(Y)[U RMEND=1 I '$G(RMEND) S COUNT=$E("" "",1,(6-$L(COUNT)))_COUNT W !!,?50,""Total Patients: "",COUNT"
|
---|
| 18 | S FLDS="D PBREAK^RMPORPT,.01;C1;L18;""PATIENT"",D SSN^RMPORPT W X;C20;R4;""SSN"",D IT^RMPORPT W X;C27;L30;"""""
|
---|
| 19 | S FLDS(1)="D QTY^RMPORPT W X;C60;L2;""QTY"",D UCOST^RMPORPT W X;C63;""UNIT COST"",D TCOST^RMPORPT W X;C72;""TOTAL COST"""
|
---|
| 20 | D SORT
|
---|
| 21 | D EN1^DIP
|
---|
| 22 | I RMPORPT=0,$G(RMEND) K DIR S DIR(0)="E" D ^DIR
|
---|
| 23 | EXIT ;
|
---|
| 24 | ;K SPACE,RB,COUNT,PAGE,RMPOF,RPTDT,^TMP($J,"RMPORPT")
|
---|
| 25 | ;K FRMDT,TODT,Y,VA,VADM,DFN,RCOST,RNAM,XIOSL,UCOST
|
---|
| 26 | K ^TMP($J) N RMPR,RMPRSITE D KILL^XUSCLEAN
|
---|
| 27 | Q
|
---|
| 28 | CNT ;COUNT NAMES
|
---|
| 29 | I X'="" S COUNT=COUNT+1
|
---|
| 30 | Q
|
---|
| 31 | PBREAK ;Print the break of primary items.
|
---|
| 32 | D IT^RMPORPT
|
---|
| 33 | I PBREAK'=NBREAK W !,"Primary Item: ",PBREAK,! S NBREAK=PBREAK
|
---|
| 34 | Q
|
---|
| 35 | ;
|
---|
| 36 | SSN ;GET SSN
|
---|
| 37 | S X=""
|
---|
| 38 | K VA,VADM S DFN=D0 D ^VADPT
|
---|
| 39 | S RNAM=$E(VADM(1),1,22)_"^"_$P(VA("PID"),"-",3)
|
---|
| 40 | S X=$P(VA("PID"),"-",3)
|
---|
| 41 | D CNT
|
---|
| 42 | Q
|
---|
| 43 | IT ;Get the primary Item.
|
---|
| 44 | S (X,UCOST,QTY)="" N RR,RA S (RR,RA)=0
|
---|
| 45 | F S RA=$O(^RMPR(665,D0,"RMPOC",RA)) Q:RA="" I $P($G(^RMPR(665,D0,"RMPOC",RA,0)),U,11)="Y" D Q
|
---|
| 46 | . ; PROSTHETICS PATIENT FILE
|
---|
| 47 | . S RR=$P(^RMPR(665,D0,"RMPOC",RA,0),U)
|
---|
| 48 | . S UCOST=$P(^RMPR(665,D0,"RMPOC",RA,0),U,4)
|
---|
| 49 | . S QTY=$P(^RMPR(665,D0,"RMPOC",RA,0),U,3)
|
---|
| 50 | . ;PROS ITEM FILE
|
---|
| 51 | . S RR=$P(^RMPR(661,RR,0),U)
|
---|
| 52 | . ; ITEM MASTER FILE
|
---|
| 53 | . S RR=$P(^PRC(441,RR,0),"^",2)
|
---|
| 54 | . S X=$E(RR,1,30)
|
---|
| 55 | . S PBREAK=X
|
---|
| 56 | Q
|
---|
| 57 | ;
|
---|
| 58 | QTY ;Get the quntity of the primary item.
|
---|
| 59 | S X=""
|
---|
| 60 | S X=QTY
|
---|
| 61 | Q
|
---|
| 62 | ;
|
---|
| 63 | UCOST ;Get the unit cost of the primary item.
|
---|
| 64 | S X=""
|
---|
| 65 | S X=$J(UCOST,7,2)
|
---|
| 66 | Q
|
---|
| 67 | ;
|
---|
| 68 | TCOST ;Calculate the total cost of the primary item.
|
---|
| 69 | S X=""
|
---|
| 70 | S X=QTY*UCOST,X=$J(X,8,2)
|
---|
| 71 | Q
|
---|
| 72 | ;
|
---|
| 73 | ZPAGE(RY) ;Print page.
|
---|
| 74 | I ($Y+RY)<IOSL Q
|
---|
| 75 | S RKO="ZL DIO2 X ^TMP($J,1) ZL RMPORPT" X RKO K RKO
|
---|
| 76 | Q
|
---|
| 77 | ;
|
---|
| 78 | RPTHDR ;Report header.
|
---|
| 79 | N RA S RA=RMPO("NAME"),PAGE=PAGE+1
|
---|
| 80 | W RPTDT,?(40-($L(RA)/2)),RA,?72,"Page: "_PAGE
|
---|
| 81 | W !?23,"Primary Item Report",!
|
---|
| 82 | W !?64,"Unit",?73,"Total"
|
---|
| 83 | W !,"Patient",?20,"SSN",?26,"Primary Item",?58,"Qty"
|
---|
| 84 | W ?64,"Cost",?74,"Cost"
|
---|
| 85 | W !,"=================",?19,"====",?26,"=============================="
|
---|
| 86 | W ?58,"===",?64,"======",?73,"======"
|
---|
| 87 | W !
|
---|
| 88 | Q
|
---|
| 89 | ;
|
---|
| 90 | SORT ;Sort patient by primary item and patient name.
|
---|
| 91 | N D0,X,Y,UCOST,QTY,PBREAK
|
---|
| 92 | S (X,Y,UCOST,QTY,PBREAK)=""
|
---|
| 93 | S D2=0
|
---|
| 94 | ST F S D2=$O(^RMPR(665,"AHO",D2)) Q:D2="" D
|
---|
| 95 | .S D0="" F S D0=$O(^RMPR(665,"AHO",D2,D0)) Q:D0="" D
|
---|
| 96 | ..S DFN=$P($G(^RMPR(665,D0,0)),U,1)
|
---|
| 97 | ..K VADM D ^VADPT S Y=VADM(1)
|
---|
| 98 | ..D IT S:X'="" ^TMP($J,X,Y,D0)=""
|
---|
| 99 | Q
|
---|
| 100 | ;
|
---|