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

BPSRPT8.m

Go to the documentation of this file.
  1. BPSRPT8 ;BHAM ISC/BEE - ECME REPORTS ;14-FEB-05
  1. ;;1.0;E CLAIMS MGMT ENGINE;**1,3,5,7,8,10,11,19,20,23,24,28**;JUN 2004;Build 22
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. ;Reference to IB NCPCP NON-BILLABLE STATUS REASONS (#366.17) supported by ICR 6136
  1. ;
  1. Q
  1. ;
  1. ;Routine to Display the Reports in Excel
  1. ;
  1. ;Print Report Line 1
  1. ;
  1. ; Input Variable -> BPRTYPE,BPDIV,BPGRPLAN,BPDFN,BPRX,BPREF,BPX,BPSRTDT
  1. ; BPBIL,BPINS,BPCOLL
  1. ;
  1. WRLINE1(BPRTYPE,BPREC,BPDIV,BPGRPLAN,BPDFN,BPRX,BPREF,BPX,BPSRTDT,BPBIL,BPINS,BPCOLL,BPPSEQ) ;
  1. ;
  1. N BP59,BP02,BP03,BPREC2
  1. S BP59=$P(BPX,U,3)
  1. S BP02=+$P($G(^BPST(BP59,0)),U,4)
  1. S BP03=+$P($G(^BPST(BP59,0)),U,5)
  1. ;Division
  1. I (",5,6,8,")[BPRTYPE S BPREC=$S(BPDIV=0:"BLANK",$$DIVNAME^BPSSCRDS(BPDIV)]"":$$DIVNAME^BPSSCRDS(BPDIV),1:BPDIV)_U
  1. I (",1,2,3,4,7,9,10,")[(","_BPRTYPE_",") S BPREC=$S(BPDIV=0:"BLANK",$$DIVNAME^BPSSCRDS(BPDIV)]"":$E($$DIVNAME^BPSSCRDS(BPDIV),1,12),1:$E(BPDIV,1,12))_U
  1. ;
  1. ;Insurance
  1. I BPRTYPE=8 S BPREC=BPREC_$E(BPGRPLAN,1,90)_U
  1. ;
  1. I (",1,2,3,4,7,9,")[BPRTYPE D
  1. . S BPREC=BPREC_$E(BPGRPLAN,1,21)_U ;Insurance
  1. . I BPRTYPE=2 S BPREC=BPREC_$$INSBIN^BPSRPT6(BP59)_U ;BIN
  1. . S BPREC=BPREC_$E($$PATNAME^BPSRPT6(BPDFN),1,13)_U ;Patient Name
  1. . S BPREC=BPREC_$$SSN4^BPSRPT6(BPDFN)_U ;L4SSN
  1. ;
  1. I (",5,6,8,")[BPRTYPE D
  1. . S BPREC=BPREC_$$PATNAME^BPSRPT6(BPDFN)_U ;Patient Name
  1. . S BPREC=BPREC_"("_$$SSN4^BPSRPT6(BPDFN)_")"_U ;L4SSN
  1. ;
  1. I (BPRTYPE=1)!(BPRTYPE=4) D Q
  1. . N PTRESP
  1. . S BPREC=BPREC_$$ELIGCODE^BPSSCR05($P(BPX,U,3))_U ;Eligibility
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(BPSRTDT)_U ;Date
  1. . S BPREC=BPREC_$$INGRCST^BPSSCRLG(BP02)_U ;Ingredient Cost
  1. . S BPREC=BPREC_$$DISPFEE^BPSSCRLG(BP02)_U ;Dispensing Fee
  1. . S BPREC=BPREC_$TR($J(BPBIL,10,2)," ")_U ;$Billed
  1. . S BPREC=BPREC_$$ICPAID^BPSSCRLG(BP03)_U ;Ingredient Cost Paid
  1. . S BPREC=BPREC_$$DFPAID^BPSSCRLG(BP03)_U ;Dispensing Fee Paid
  1. . S PTRESP=$$PTRESP^BPSSCRLG(BP03) S BPREC=BPREC_$S('PTRESP:PTRESP,1:"-"_PTRESP)_U ;Patient Pay Amount
  1. . S BPREC=BPREC_$TR($J(BPINS,10,2)," ")_U ;$Ins. Paid
  1. . S BPREC=BPREC_$S(BPCOLL]"":$TR($J(BPCOLL,10,2)," "),1:"")_U ;$Collected
  1. ;
  1. I BPRTYPE=2 D Q
  1. . S BPREC=BPREC_$$ELIGCODE^BPSSCR05($P(BPX,U,3))_U ;Eligibility
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(BPSRTDT)_U ;Date
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(+BPX)_U ;Released On
  1. . ;RX INFO
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_U ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_U ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . S BPREC=BPREC_$$RXCOB($G(BPPSEQ))_U
  1. . S BPREC=BPREC_$S($$CLOSED02^BPSSCR03($P(^BPST($P(BPX,U,3),0),U,4))=1:"C",1:"O")_U ;Open/Closed
  1. ;
  1. I BPRTYPE=3 D Q
  1. . N PTRESP
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(BPSRTDT)_U ;Date
  1. . S BPREC=BPREC_$$INGRCST^BPSSCRLG(BP02)_U ;Ingredient Cost
  1. . S BPREC=BPREC_$$DISPFEE^BPSSCRLG(BP02)_U ;Dispensing Fee
  1. . S BPREC=BPREC_$TR($J(BPBIL,10,2)," ")_U ;$Billed
  1. . S BPREC=BPREC_$$ICPAID^BPSSCRLG(BP03)_U ;Ingredient Cost Paid
  1. . S BPREC=BPREC_$$DFPAID^BPSSCRLG(BP03)_U ;Dispensing Fee Paid
  1. . S PTRESP=$$PTRESP^BPSSCRLG(BP03) S BPREC=BPREC_$S('PTRESP:PTRESP,1:"-"_PTRESP)_U ;Patient Pay Amount
  1. . S BPREC=BPREC_$TR($J(BPINS,10,2)," ")_U ;Insurance Response
  1. ;
  1. I BPRTYPE=5 D Q
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1($$TRANDT^BPSRPT2($P(BPX,U,3),1))_U ;Completed
  1. . S BPREC=BPREC_$$TTYPE^BPSRPT7($P(BPX,U,4),$P(BPX,U,5),BPPSEQ)_U ;Trans Type
  1. . S BPREC=BPREC_$$RESPONSE^BPSRPT7($P(BPX,U,4),$P(BPX,U,5),BPPSEQ)_U ;Payer Response
  1. . S BPREC=BPREC_$$RXCOB($G(BPPSEQ))_U ;RX COB
  1. ;
  1. I BPRTYPE=7 D Q
  1. . ;RX INFO
  1. . S BPREC=BPREC_$$ELIGCODE^BPSSCR05($P(BPX,U,3))_U ;Eligibility
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_U ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_U ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . S BPREC=BPREC_$S($P(BPX,U,13):"REJ",1:"")_U
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),15)_U ;Drug
  1. . S BPREC=BPREC_$TR($$GETNDC^BPSRPT6(BPRX,BPREF),"-")_U
  1. ;
  1. I (BPRTYPE=8) D Q
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(BPSRTDT)_U ;Date
  1. . S BPREC=BPREC_$TR($J(BPBIL,10,2)," ")_U ;$Billed
  1. . S BPREC=BPREC_$TR($J(BPINS,10,2)," ")_U ;$Ins. Paid
  1. . S BPREC=BPREC_$S(BPCOLL]"":$TR($J(BPCOLL,10,2)," "),1:"")_U ;$Collected
  1. ;
  1. I BPRTYPE=9 D Q
  1. . N ELGCD S ELGCD=$P(BPX,U,1)
  1. . S BPREC=BPREC_$S(ELGCD="V":"VET",ELGCD="T":"TRI",ELGCD="C":"CVA",1:"UNK")_U
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_U ;Refill
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(BPSRTDT)_U ;Date
  1. . S BPREC=BPREC_$S($P(BPX,U,2)]"":$TR($J($P(BPX,U,2),10,2)," "),1:"")_U ;$Drug Cost
  1. ;
  1. I BPRTYPE=10 D Q
  1. . N BPDPAY
  1. . S BPDPAY=$P(BPX,U,17)
  1. . S BPREC=BPREC_$E(BPGRPLAN,1,21)_U ;Insurance
  1. . S BPREC=BPREC_$E($$PATNAME^BPSRPT6(BPDFN),1,13)_U ;Patient Name
  1. . S BPREC=BPREC_$$SSN4^BPSRPT6(BPDFN)_U ;L4SSN
  1. . S BPREC=BPREC_$$ELIGCODE^BPSSCR05($P(BPX,U,3))_U ;Eligibility
  1. . S BPREC=BPREC_$$RXNUM^BPSRPT6(BPRX)_$$COPAY^BPSRPT6(BPRX)_U ;RX Number
  1. . S BPREC=BPREC_BPREF_"/"_$$ECMENUM^BPSRPT1($P(BPX,U,3))_U ;Refill/ECME Number
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(BPSRTDT)_U ;Date
  1. . S BPREC=BPREC_$$INGRCST^BPSSCRLG(BP02)_U ;Ingredient Cost
  1. . S BPREC=BPREC_$$DISPFEE^BPSSCRLG(BP02)_U ;Dispensing Fee
  1. . S BPREC=BPREC_$TR($J(BPBIL,10,2)," ")_U ;$Billed
  1. . S BPREC=BPREC_$$ICPAID^BPSSCRLG(BP03)_U ;Ingredient Cost Paid
  1. . S BPREC=BPREC_$$DFPAID^BPSSCRLG(BP03)_U ;Dispensing Fee Paid
  1. . S BPREC=BPREC_$TR($J(BPDPAY,10,2)," ")_U ;Pt. Resp (Ins)
  1. . S BPREC=BPREC_$TR($J(BPINS,10,2)," ")_U ;$Ins. Paid
  1. . S BPREC=BPREC_$S(BPCOLL]"":$TR($J(BPCOLL,10,2)," "),1:"")_U ;$Collected
  1. Q
  1. ;
  1. ;Print Report Line 2
  1. ;
  1. ; Input Variable -> BPRTYPE,BPX,BPRX,BPREF,BPBIL,BPGRPLAN
  1. ;
  1. WRLINE2(BPRTYPE,BPREC,BPX,BPRX,BPREF,BPBIL,BPGRPLAN,BPPSEQ) ;
  1. N BP59,BP02
  1. S BP59=$P(BPX,U,3)
  1. S BP02=+$P($G(^BPST(BP59,0)),U,4)
  1. ;
  1. I (BPRTYPE=1)!(BPRTYPE=4) D Q
  1. . ;Drug
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),15)_U
  1. . S BPREC=BPREC_$TR($$GETNDC^BPSRPT6(BPRX,BPREF),"-")_U ;Released On
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(+BPX)_U
  1. . ;RX INFO
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_U ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_U ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . I BPRTYPE=4 S BPREC=BPREC_$$RXCOB($G(BPPSEQ))_U
  1. . S BPREC=BPREC_$S($P(BPX,U,13):"REJ",1:"")
  1. . I BPRTYPE=1 S BPREC=BPREC_U_$$BILL^BPSRPT6(BPRX,BPREF,BPPSEQ)_U_$$RXCOB($G(BPPSEQ)) ;Bill # and RX COB
  1. ;
  1. I BPRTYPE=2 D Q
  1. . S BPREC=BPREC_$E($$GRPID^BPSRPT2(+$P(BPX,U,3)),3,10)_U ;Group ID
  1. . S BPREC=BPREC_$$INGRCST^BPSSCRLG(BP02)_U ;Ingredient Cost
  1. . S BPREC=BPREC_$$DISPFEE^BPSSCRLG(BP02)_U ;Dispensing Fee
  1. . S BPREC=BPREC_$TR($J(BPBIL,10,2)," ")_U ;$Billed
  1. . S BPREC=BPREC_$$QTY^BPSRPT6($P(BPX,U,3))_U ;Qty
  1. . S BPREC=BPREC_$$GETNDC^BPSRPT6(BPRX,BPREF)_U ;NDC#
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),15)_U ;Drug
  1. ;
  1. I BPRTYPE=3 D Q
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),15)_U ;Drug
  1. . S BPREC=BPREC_$TR($$GETNDC^BPSRPT6(BPRX,BPREF),"-")_U
  1. . ;RX INFO
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_U ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_U ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . S BPREC=BPREC_$$RXCOB($G(BPPSEQ))_U
  1. . S BPREC=BPREC_$$ELIGCODE^BPSSCR05($P(BPX,U,3))_U ;Eligibility
  1. . S BPREC=BPREC_$S($P(BPX,U,13):"REJ",1:"")
  1. ;
  1. I BPRTYPE=5 D Q
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),32)_U ;Drug
  1. . S BPREC=BPREC_$TR($$GETNDC^BPSRPT6(BPRX,BPREF),"-")_U
  1. . ;RX INFO
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_U ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_U ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . S BPREC=BPREC_$S($P(BPX,U,13):"REJ",1:"")_U
  1. . I $P(BPGRPLAN,U,2)]"" S BPREC=BPREC_$E($P(BPGRPLAN,U,2),1,30) ;Insurance
  1. . S BPREC=BPREC_U_$$ELAPSE^BPSRPT6($P(BPX,U,3)) ;Elapsed Time
  1. ;
  1. I BPRTYPE=7 D Q
  1. . S BPREC=BPREC_$E($$GRPID^BPSRPT2(+$P(BPX,U,3)),3,10)_U ;Group ID
  1. . S BPREC=BPREC_$TR($J(BPBIL,10,2)," ")_U ;$Billed
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(+$$CLOSEDT^BPSRPT2(+$P(BPX,U,3)))_U ;Close Dt/Time
  1. . S BPREC=BPREC_$E($$CLSBY^BPSRPT6(+$P(BPX,U,3)),1,25)_U ;Close By
  1. . S BPREC=BPREC_$E($P($$CLRSN^BPSRPT7(+$P(BPX,U,3)),U,2),1,30)_U ;Close Reason
  1. ;
  1. I BPRTYPE=8 D Q
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),27)_U ;Drug
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_" " ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_" " ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . S BPREC=BPREC_$TR($E($$GRPID^BPSRPT2(+$P(BPX,U,3)),3,10)," ","")_U ;Group ID
  1. . S BPREC=BPREC_$E(BPGRPLAN,1,30)_U ;Insurance
  1. . S BPREC=BPREC_$$BILL^BPSRPT6(BPRX,BPREF,BPPSEQ)_U ;Bill#
  1. ;
  1. I BPRTYPE=9 D Q
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,4),15)_U ;Drug
  1. . S BPREC=BPREC_$TR($$GETNDC^BPSRPT6(BPRX,BPREF),"-")_U ;NDC
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1($P(BPX,U,5))_U ;Release Date
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_U ;Fill Location
  1. . S BPREC=BPREC_$$RXSTANAM^BPSSCRU2($P(BPX,U,6)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U,5):"/R",1:"/N")_U ;RL/NR
  1. . S BPREC=BPREC_$$GET1^DIQ(366.17,$P(BPX,U,7),.01,"E") ;Non-Billable Status Reason - ICR 6136
  1. ;
  1. I BPRTYPE=10 D Q
  1. . N BPRXINFO,BPDUPST
  1. . S BPDUPST=$P(BPX,U,16),BPRXINFO=""
  1. . S BPREC=BPREC_$$DRGNAM^BPSRPT6($P(BPX,U,14),15)_U ;Drug
  1. . S BPREC=BPREC_$TR($$GETNDC^BPSRPT6(BPRX,BPREF),"-")_U ;NDC
  1. . S BPREC=BPREC_$$DATTIM^BPSRPT1(+BPX)_U ;Release Date
  1. . ;RX INFO
  1. . S BPREC=BPREC_$$MWC^BPSRPT6(BPRX,BPREF)_" " ;Fill Location
  1. . S BPREC=BPREC_$$RTBCKNAM^BPSRPT1($$RTBCK^BPSRPT1($P(BPX,U,3)))_" " ;Fill Type
  1. . S BPREC=BPREC_$$RXSTATUS^BPSRPT6($P(BPX,U,3)) ;Status
  1. . S BPREC=BPREC_$S($P(BPX,U):"/R",1:"/N")_U ;RL/NR
  1. . ;
  1. . S BPREC=BPREC_$$BILL^BPSRPT6(BPRX,BPREF,BPPSEQ)_U ;Bill#
  1. . S BPREC=BPREC_$$RXCOB($G(BPPSEQ))_U ;RX COB
  1. . S BPREC=BPREC_BPDUPST ;Status (duplicate)
  1. Q
  1. ;
  1. ;Print Report Line 3
  1. ;
  1. ; Input Variable -> BPRTYPE,BPX
  1. ;
  1. WRLINE3(BPRTYPE,BPREC,BPX) ;
  1. N BP59,BPSARR,BPRJCNT,BPRJEXP,BPZZ,BPRICE
  1. S BP59=+$P(BPX,U,3)
  1. ;
  1. I (",7,")[BPRTYPE D Q
  1. . S BPREC=BPREC_$$CLAIMID^BPSRPT2(BP59)_U ;Claim ID
  1. . S BPRJCNT=$$REJTEXT^BPSRPT2(BP59,.BPSARR)
  1. . S BPREC=BPREC_$S(BPRJCNT>1:"Y",1:"N") ;Mult Rej
  1. . ;Write one record per reject/close code
  1. . S:+BPRJCNT=0 BPRJCNT=1
  1. . F BPZZ=1:1:BPRJCNT D
  1. . . S BPREC2=$G(BPREC)_U_$P($G(BPSARR(BPZZ)),":")_U_$P($G(BPSARR(BPZZ)),":",2) W !,$E(BPREC2,1,255)
  1. ;
  1. I (",2,")[BPRTYPE D Q
  1. . S BPREC=BPREC_$P($$PRESCIN^BPSRPT6($P(BPX,U,3)),U)_U ;Prescriber ID
  1. . S BPREC=BPREC_$E($P($$PRESCIN^BPSRPT6($P(BPX,U,3)),U,2),1,13)_U ;Prescriber Name (truncated to 13)
  1. . S BPRJCNT=$$REJTEXT^BPSRPT2(BP59,.BPSARR)
  1. . S BPREC=BPREC_$S(BPRJCNT>1:"Y",1:"N") ;Mult Rej
  1. . ;Write one record per reject/close code
  1. . S:+BPRJCNT=0 BPRJCNT=1
  1. . F BPZZ=1:1:BPRJCNT S BPREC2="" D
  1. . . S BPREC2=$G(BPREC)_U_$P($G(BPSARR(BPZZ)),":")_U_$P($G(BPSARR(BPZZ)),":",2) W !,$E(BPREC2,1,255)
  1. ;
  1. I BPRTYPE=4 D
  1. . ;Method
  1. . I $$AUTOREV^BPSRPT1(BP59) S BPREC=BPREC_U_"AUTO"_U
  1. . E S BPREC=BPREC_U_"REGULAR"_U
  1. . ;Return Status
  1. . I $P(BPX,U,15)["ACCEPTED" S BPREC=BPREC_"ACCEPTED"_U
  1. . E S BPREC=BPREC_"REJECTED"_U
  1. . ;Reason
  1. . S BPREC=BPREC_$$RVSRSN^BPSRPT7(+$P(BPX,U,3))
  1. ;
  1. I BPRTYPE=8 D
  1. . S BPRICE=$$PRICEVAL^BPSRPT5(BP59)
  1. . S BPREC=BPREC_$P($G(BPRICE),U,3)_U
  1. . S BPREC=BPREC_$P($G(BPRICE),U,4)_U
  1. . S BPREC=BPREC_$P($G(BPRICE),U,5)_U
  1. . S BPREC=BPREC_$P($G(BPRICE),U,6)_U
  1. . S BPREC=BPREC_$P($G(BPRICE),U,7)_U
  1. . S BPREC=BPREC_$P($G(BPRICE),U,2)_U
  1. . S BPREC=BPREC_$P($G(BPRICE),U,1)_U
  1. ;
  1. ;Write the record
  1. I (",1,3,4,9,10,")[(","_BPRTYPE_",") W !,$E(BPREC,1,255) Q
  1. W !,$G(BPREC)
  1. Q
  1. ;
  1. ;Print Excel Header - was moved to BPSRPT8A
  1. ;
  1. ;return RX COB as the 1st letter of the RX COB indicator
  1. RXCOB(BPPSEQ) ;
  1. Q $S(BPPSEQ=1:"p",BPPSEQ=2:"s",1:"")
  1. ;BPSRPT8