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

ABSPER40.m

Go to the documentation of this file.
  1. ABSPER40 ; IHS/FCS/DRS - JWS 03:58 PM 16 Jul 1996 ; [ 09/12/2002 10:02 AM ]
  1. ;;1.0;PHARMACY POINT OF SALE;**3**;JUN 21, 2001;Build 38
  1. ;----------------------------------------------------------------------
  1. ;----------------------------------------------------------------------
  1. ;Transmission STATUS Report (Billing Item Summary)
  1. ;----------------------------------------------------------------------
  1. EN ; option ABSP TRANS STATUS BITEM
  1. N SCRNTXT,SDATE,EDATE,ANS,XBRP,J,XBNS,RPTNAME
  1. ;
  1. D DT^DICRW
  1. D HOME^%ZIS
  1. ;
  1. S RPTNAME="RX BItem STATUS RPT"
  1. S SCRNTXT="Transmission STATUS Report (Billing Item Summary)"
  1. D WHEADER^ABSPOSU9(SCRNTXT,IOF,IOM)
  1. W !
  1. ;
  1. ;Start Date Prompt
  1. S (SDATE,EDATE)=""
  1. LP1 S ANS=$$DATE^ABSPOSU1("Visit Date - Start Date: ",SDATE,1,"","DT","E",DTIME)
  1. G:ANS=-1!(ANS="^")!(ANS="^^")!(ANS="") EXIT
  1. S SDATE=ANS
  1. ;
  1. ;End Date Prompt
  1. LP2 S ANS=$$DATE^ABSPOSU1("Visit Date - End Date: ",EDATE,1,SDATE,"DT","E",DTIME)
  1. I ANS="^" D WHEADER^ABSPOSU9(SCRNTXT,IOF,IOM) G LP1
  1. G:ANS=-1!(ANS="^^")!(ANS="") EXIT
  1. S EDATE=ANS
  1. ;
  1. S XBRP="RPT^ABSPER40"
  1. F J="SDATE","EDATE","SCRNTXT","RPTNAME" S XBNS(J)=""
  1. D ^XBDBQUE
  1. EXIT Q
  1. ;----------------------------------------------------------------------
  1. RPT N PAGE
  1. U IO
  1. K ^TMP($J,RPTNAME)
  1. D SORT
  1. D PRINT^ABSPER4A
  1. D ^%ZISC
  1. K ^TMP($J,RPTNAME)
  1. Q
  1. ;----------------------------------------------------------------------
  1. SORT N DATE1,DATE2,TDATE,RESPIEN,MEDIEN,CLAIMIEN,DATA,CLAIMID,INSIEN
  1. N INSNAME,BITEMIEN,PCN,PATNAME,FDATA,RX,NDC,TRANSON,STATUS,VDATE
  1. N FDATE,PSIEN S PSIEN=1
  1. ;
  1. S DATE1=$$DTF1^ABSPECFM($$CDTFM^ABSPOSU1(SDATE,-1))
  1. S DATE2=$$DTF1^ABSPECFM(EDATE)
  1. K ^TMP($J,RPTNAME)
  1. Q:IOM<132
  1. ;
  1. ;Loop through "AF" x-ref and gather claims within date range
  1. S VDATE=DATE1
  1. F D Q:VDATE=""!(VDATE>DATE2)
  1. .S VDATE=$O(^ABSPC("AF",VDATE))
  1. .Q:VDATE=""!(VDATE>DATE2)
  1. .S CLAIMIEN=0
  1. .F D Q:'+CLAIMIEN
  1. ..S CLAIMIEN=$O(^ABSPC("AF",VDATE,CLAIMIEN))
  1. ..Q:'+CLAIMIEN
  1. ..;Get needed data from 9002313.02 file
  1. ..S DATA=$G(^ABSPC(CLAIMIEN,0))
  1. ..S CLAIMID=$P(DATA,U,1)
  1. ..S INSIEN=$P(DATA,U,2)
  1. ..Q:'+INSIEN
  1. ..S INSNAME=$P($G(^AUTNINS(INSIEN,0)),U,1)
  1. ..Q:INSNAME=""
  1. ..S BITEMIEN=$P(DATA,U,3)
  1. ..S PCN=$S(BITEMIEN="":"",$P($G(^ABSP(9002313.99,+$G(PSIEN),2)),U,1)="VCN":$P($G(^ABSBITMS(9002302,BITEMIEN,"VCN")),U,1),1:$P($G(^ABSBITMS(9002302,BITEMIEN,0)),U,1)) ;either PCN or VCN displays
  1. ..S PATNAME=$P($G(^ABSPC(CLAIMIEN,1)),U,1)
  1. ..S DATA=$P($G(^ABSPC(CLAIMIEN,401)),U,1)
  1. ..S FDATE=$E(DATA,5,6)_"/"_$E(DATA,7,8)_"/"_$E(DATA,3,4)
  1. ..S MEDIEN=0
  1. ..F D Q:'MEDIEN
  1. ...S MEDIEN=$O(^ABSPC(CLAIMIEN,400,MEDIEN))
  1. ...Q:'+MEDIEN
  1. ...S DATA=$G(^ABSPC(CLAIMIEN,400,MEDIEN,400))
  1. ...S RX=$P(DATA,U,2)
  1. ...S NDC=$P(DATA,U,7)
  1. ...;
  1. ...I $D(^ABSPR("B",CLAIMIEN))=0 D Q
  1. ....S ^TMP($J,RPTNAME,INSNAME,PCN,CLAIMIEN,0,MEDIEN)=CLAIMID_U_PATNAME_U_FDATE_U_NDC_U_RX_U_"Not Sent"_U_""
  1. ...I $D(^ABSPR("B",CLAIMIEN))'=0 D Q
  1. ....S RESPIEN=0
  1. ....F D Q:'+RESPIEN
  1. .....S RESPIEN=$O(^ABSPR("B",CLAIMIEN,RESPIEN))
  1. .....Q:'+RESPIEN
  1. .....S TRANSON=$P($G(^ABSPR(RESPIEN,0)),U,2)
  1. .....S TRANSON=$$FM2MDY^ABSPOSU1(TRANSON)
  1. .....S DATA=$G(^ABSPR(RESPIEN,1000,MEDIEN,500))
  1. .....S STATUS=$P(DATA,U,1)
  1. .....S STATUS=$S(STATUS="D":"Duplicate",STATUS="P":"Payable",STATUS="R":"Rejected",STATUS="C":"Captured",1:"Undefined")
  1. .....S ^TMP($J,RPTNAME,INSNAME,PCN,CLAIMIEN,RESPIEN,MEDIEN)=CLAIMID_U_PATNAME_U_FDATE_U_NDC_U_RX_U_TRANSON_U_STATUS
  1. Q