Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ABPVRX03

ABPVRX03.m

Go to the documentation of this file.
  1. ABPVRX03 ;PRINT RX BILLING SUMMARY; [ 06/02/91 9:44 AM ]
  1. ;;2.0;FACILITY PVT-INS TRACKING;*0*;IHS-OKC/KJR;AUGUST 7, 1991
  1. START ;
  1. S ZTSK=ABPV("TASK"),ABPVSD=ABPV("BEG"),ABPVFD=ABPV("END")
  1. I '$D(DT) S X="T" D ^%DT S DT=Y
  1. S $P(ABPV80D,"-",80)="" ;80 DASHES
  1. S Y=ABPVSD X ^DD("DD") S ABPVSDY=Y S Y=ABPVFD X ^DD("DD") S ABPVFDY=Y S Y=DT X ^DD("DD") S ABPVDTP=Y
  1. S ABPVFEE=4.5,ABPVRXZM=0,ZFL1=""
  1. S ABPVPG=0,ZDFNS=0
  1. S ABPVDFN=0 F I=0:0 S ABPVDFN=$O(^%ZTSK(ZTSK,"RX",ABPVDFN)) G:ABPVDFN="" DONE D C1
  1. C1 S ABPVHRN=$P(ABPVDFN,"."),DFN=$P(ABPVDFN,".",2)
  1. S ABPVDPT=^DPT(DFN,0),ABPVNAME=$P(ABPVDPT,"^"),Y=$P(ABPVDPT,"^",3) X ^DD("DD")
  1. ;
  1. D HEAD:ABPVDFN'=ZDFNS
  1. S ZDFNS=ABPVDFN
  1. W !!,$J(ABPVHRN,6),?8,ABPVNAME,?40,Y
  1. SCRIP S ABPVDT="" F K=0:0 S ABPVDT=$O(^%ZTSK(ZTSK,"RX",ABPVDFN,ABPVDT)) Q:ABPVDT'=+ABPVDT D C2
  1. D SCRIPSUM Q
  1. C2 S ABPVPRVI=0 F J=0:0 S ABPVPRVI=$O(^AUPNPRVT(DFN,11,ABPVPRVI)) Q:ABPVPRVI'=+ABPVPRVI D PI
  1. D:ZFL1'=ABPVDFN SUBHD
  1. S ABPVPDFN="" F L=0:0 S ABPVPDFN=$O(^%ZTSK(ZTSK,"RX",ABPVDFN,ABPVDT,ABPVPDFN)) Q:ABPVPDFN'=+ABPVPDFN D PRNT
  1. Q
  1. PI Q:ZFL1=ABPVDFN S ABPVPRV=^AUPNPRVT(DFN,11,ABPVPRVI,0)
  1. S ABPVPRVE=$P(ABPVPRV,"^",7),ABPVPRVS=$P(ABPVPRV,"^",6) I ABPVPRVE]"",ABPVPRVE<ABPVDT Q
  1. Q:ABPVPRVS>ABPVDT
  1. I '$D(^AUTNINS(+ABPVPRV,0)) S ZINSNM="UNKNOWN" G PI4
  1. S ZINSNM=$P(^AUTNINS(+ABPVPRV,0),"^",1)
  1. PI4 W !!,?8,ZINSNM,?40,$P(ABPVPRV,"^",2)
  1. W !,?8,$P(ABPVPRV,"^",4) I $P(ABPVPRV,"^",5)]"" W ?40,$P(^AUTTRLSH($P(ABPVPRV,"^",5),0),"^")
  1. W ! Q
  1. SCRIPSUM ;PRINT SUM OF DRUG COST
  1. W !,?13,"**** TOTAL DRUG COST **** = ",?42,$J(ABPVRXZM,6,2),! S ABPVRXZM=0 Q
  1. PRNT I $Y>(IOSL-10) W @IOF D SUBHD
  1. S ABPVN0=^PSRX(ABPVPDFN,0),ABPVDDFN=$P(ABPVN0,"^",6),ABPVQTY=$P(ABPVN0,"^",7)
  1. S Y=ABPVDT X ^DD("DD")
  1. W !,Y
  1. W ?13,$P(^PSDRUG(ABPVDDFN,0),"^")
  1. I $D(^PSDRUG(ABPVDDFN,2)) S ABPVNDC=$P(^(2),"^",4) W ?42,ABPVNDC
  1. S ABPVDU=$S($D(^PSDRUG(ABPVDDFN,660)):$P(^(660),"^",8),1:"")
  1. W !,?13,ABPVQTY_" "_ABPVDU
  1. S ZUPDATE="" I $D(^PSDRUG(ABPVDDFN,9999999))=1!($D(^PSDRUG(ABPVDDFN,9999999))=11) S ZUPDATE=$P(^PSDRUG(ABPVDDFN,9999999),"^",2)
  1. I +ZUPDATE=0 W ?56,"PRICING INFO NOT CURRENT",! G PRNTENDZ
  1. S ABPVPPDU=$P(^PSDRUG(ABPVDDFN,660),"^",6)
  1. I +ABPVPPDU=0 W ?56,"PRICING INFO NOT ON FILE",! G PRNTENDZ
  1. S ABPVCST=ABPVQTY*ABPVPPDU,ABPVBILL=ABPVFEE+ABPVCST
  1. W " at $"_$J(ABPVPPDU,6,3)_" each",?56,$J(ABPVCST,6,2),?64,$J(ABPVFEE,6,2),?72,$J(ABPVBILL,6,2),!
  1. PRNTEND S ABPVRXZM=ABPVRXZM+ABPVBILL
  1. PRNTENDZ S ZFL1=ABPVDFN Q
  1. ;
  1. HEAD1 W @IOF
  1. W $P(^DIC(4,ABPV("SITE"),0),"^"),?57,ABPVDTP,?70,"Page ",ABPVPG,!
  1. W !,"Prescriptions between "_ABPVSDY_" and "_ABPVFDY_" for Prvt. Insurance Eligibles."
  1. W !!,?2,"HRCN",?8,"Patient Name",?40,"DOB",!!,?8,"Insurer",?40,"Policy Number",!,?8,"Name of Insured",?40,"Relationship"
  1. W !,ABPV80D
  1. Q
  1. SUBHD ;
  1. W !,"Fill Date",?13,"Drug",?42,"NDC Code",?58,"Cost",?66,"Fee",?73,"Total",!,"-----------",?13,"---------------------------",?42,"------------",?58,"------",?64,"------",?72,"------"
  1. Q
  1. DONE W @IOF X ^%ZIS("C")
  1. K ABPVD0D,ABPVBILL,ABPVCST,ABPVDDFN,ABPVDFN,ABPVDPT,ABPVDT,ABPVDTP,ABPVDU,ABPVFD,ABPVFDY,ABPVFEE,ABPVHRN,ABPVPRVE,ABPVPRIV,ABPVPRVS,ABPVQTY,ABPVRXZM,ABPVS,J,K,L,X,Y,ZDFNS,ZFL1,ZINSNM,ZTSK,ZUPDATE
  1. Q