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

IBCERP6.m

Go to the documentation of this file.
  1. IBCERP6 ;ALB/JEH - MRA/EDI CLAIMS READY FOR EXTRACT ;12/10/99
  1. ;;2.0;INTEGRATED BILLING;**137,211,155,348,349,592**;21-MAR-94;Build 58
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. EN ;Entry point from option
  1. W !!,"This report provides a list of claims held in a"
  1. W !,"Ready for Extract status. Users can select all bills"
  1. W !,"in a Ready for extract status or only those trapped due to"
  1. W !,"the EDI/MRA Parameters being turned off."
  1. ;
  1. S IBQUIT=0 D SELECT I IBQUIT G ENQ1
  1. S IBQUIT=0 D PARAM I IBQUIT G ENQ1
  1. ;
  1. W !!,"This report requires a 132 column printer.",!!
  1. ; - Ask device
  1. N %ZIS,ZTRTN,ZTSAVE,ZTDESC
  1. S %ZIS="QM" D ^%ZIS G:POP ENQ1
  1. I $D(IO("Q")) D G ENQ1
  1. .S ZTRTN="BLD^IBCERP6",ZTDESC="IB - EDI/MRA Claims in Waiting Transmission Status"
  1. .S ZTSAVE("IB*")=""
  1. .D ^%ZTLOAD
  1. .W !!,$S($D(ZTSK):"Your task number"_ZTSK_" has been queued.",1:"Unable to queue this job.")
  1. .K ZTSK,IO("Q") D HOME^%ZIS
  1. U IO
  1. ;
  1. BLD ; - Tasked entry point
  1. ;
  1. N IBSTAT,IBILL,IBREC,IBIFN,IBSTAT,IBVSIT,IBCAT,IBI,IBINS,IBPREC,IBEVDT,IBTYP,IBPG,IBCHK
  1. K ^TMP("IBCERP6",$J)
  1. S (IBI,IBIFN)=0 F S IBI=$O(^IBA(364,"ASTAT","X",IBI)) Q:'IBI S IBIFN=+$G(^IBA(364,IBI,0)) D
  1. .S IBQUIT=0
  1. .S IBSTAT=$$WNRBILL^IBEFUNC(IBIFN)
  1. .I IBSEL=2 D I IBQUIT Q
  1. ..I 'IBSTAT,13[IBPARAM S IBQUIT=1 Q
  1. ..I IBSTAT,23[IBPARAM S IBQUIT=1 Q
  1. .S IBSTAT=$S(IBSTAT:"MRA",1:"EDI")
  1. .S IBREC=$G(^DGCR(399,+IBIFN,0))
  1. .S IBVSIT=$S($$INPAT^IBCEF(IBIFN,1)=1:"INP",1:"OPT")
  1. .;JWS;IB*2.0*592:Dental form 7
  1. .S IBCAT=$S($$FT^IBCEF(IBIFN)=3:"UB04",$$FT^IBCEF(IBIFN)=7:"J430D",1:"1500")
  1. .S IBILL=$$BN1^PRCAFN(IBIFN)
  1. .S IBINS=$P($G(^DIC(36,+$$CURR^IBCEF2(IBIFN),0)),U)
  1. .S IBPREC=$$PT^IBEFUNC(+$P(IBREC,U,2))
  1. .S IBEVDT=$P($G(^DGCR(399,IBIFN,"U")),U) ;Statement from date
  1. .;S IBTYP=$P(IBREC,U,24)_U_$P($G(^DGCR(399.1,+$P(IBREC,U,25),0)),U)_U_$P(IBREC,U,26)
  1. .S IBTYP=$$GET1^DIQ(399,IBIFN,.24)_U_$$GET1^DIQ(399,IBIFN,.25)_U_$$GET1^DIQ(399,IBIFN,.26)
  1. .S ^TMP("IBCERP6",$J,IBSTAT,IBILL)=IBILL_U_IBVSIT_U_IBCAT_U_$P(IBPREC,U)_U_$E($P(IBPREC,U,2),8,11)_U_IBEVDT_U_IBTYP_U_IBINS
  1. ;
  1. PRINT ;Prints report
  1. S (IBQUIT,IBPG,IBEDI,IBMRA,IBTOT)=0 D HDR
  1. I '$D(^TMP("IBCERP6",$J)) W !!,"There are no "_$S(IBPARAM=1:"EDI",IBPARAM=2:"MRA",1:"EDI/MRA")_" records"_$S(IBSEL=2:" trapped",1:"")_" in a ready for extract status" G ENQ1
  1. S IBSTAT="" F S IBSTAT=$O(^TMP("IBCERP6",$J,IBSTAT)) Q:IBSTAT=""!(IBQUIT=1) D
  1. .S IBILL="" F S IBILL=$O(^TMP("IBCERP6",$J,IBSTAT,IBILL)) Q:IBILL=""!(IBQUIT=1) S IBREC=^(IBILL) D
  1. ..I ($Y+5)>IOSL D I IBQUIT Q
  1. ...D ASK I IBQUIT Q
  1. ...D HDR
  1. ..;
  1. ..W !,?2,$P(IBREC,U),?15,$P(IBREC,U,2),?22,$P(IBREC,U,3)
  1. ..W ?28,$E($P(IBREC,U,4),1,20),?50,$P(IBREC,U,5)
  1. ..W ?57,$$FMTE^XLFDT($P(IBREC,U,6)),?73,$E($P(IBREC,U,7),1,8)_", "_$E($P(IBREC,U,8),1,3)_", "_$E($P(IBREC,U,9),1,16),?110,$E($P(IBREC,U,10),1,20)
  1. ..I IBSTAT="EDI" S IBEDI=IBEDI+1
  1. ..E S IBMRA=IBMRA+1
  1. ..S IBTOT=IBTOT+1
  1. W !!
  1. I IBEDI>0 W !,?3,"Total EDI Bills ",IBEDI
  1. I IBMRA>0 W !,?3,"Total MRA Bills ",IBMRA
  1. W !!,?3,"Total bills ",IBTOT
  1. K ^TMP("IBCERP6",$J)
  1. I $D(ZTQUEUED) S ZTREQ="@"
  1. I '$D(ZTQUEUED) D ^%ZISC
  1. ENQ1 K IBPARAM,IBQUIT,IBSEL,Y,IBEDI,IBMRA,IBTOT Q
  1. ;
  1. PARAM ;
  1. S IBPARAM=$P($G(^IBE(350.9,1,8)),U,10) ;Get MRA/EDI site parameter setting
  1. I IBPARAM="" D
  1. .W !!,"Your EDI/MRA site parameter setting is incomplete."
  1. .W !,"Please contact your coordinator.",!
  1. .S IBQUIT=1
  1. ;
  1. I IBSEL=2,IBPARAM=3 D
  1. .W !!,"Your site parameters are set to allow both EDI and MRA"
  1. .W !,"transmissions. There is no need to run this report.",!
  1. .S IBQUIT=1
  1. Q
  1. ;
  1. HDR ;Prints report heading
  1. ; IB*2.0*211
  1. ;I $E(IOST,1,2)="C-" W @IOF,*13
  1. I $S(IBPG:1,1:$E(IOST,1,2)="C-") W @IOF,*13
  1. S IBPG=IBPG+1
  1. W !!,?45,$S(IBSEL=2:"Trapped ",1:"")_" Claims Ready for Extract",?90,$$FMTE^XLFDT(DT),?110,"Page: ",IBPG
  1. W !!,?15,"Inpt/",?23,"Inst/",!,?4,"Bill #",?15,"Opt",?23,"Prof",?32,"Name"
  1. W ?51,"SSN",?57,"Statement Date",?89,"Type",?110,"Insurance Co."
  1. W !,$TR($J("",IOM)," ","=")
  1. Q
  1. ;
  1. ASK ;
  1. I $E(IOST,1,2)'["C-" Q
  1. N DIR,DIROUT,DIRUT,DTOUT,DUOUT
  1. S DIR(0)="E" D ^DIR
  1. I ($D(DIRUT))!($D(DUOUT)) S IBQUIT=1 Q
  1. Q
  1. ;
  1. SELECT ;Report selection
  1. N DIR,DIROUT,DTOUT,DUOUT,DTOUT
  1. S IBSEL=0
  1. W !! S DIR("A",1)="Do you want to print a list of:"
  1. S DIR("A",2)=""
  1. S DIR("A",3)=" 1 - All bills in Ready for Extract status"
  1. S DIR("A",4)=" 2 - Bills trapped due to EDI/MRA parameter being turned off"
  1. S DIR("A",5)=""
  1. S DIR(0)="SAXB^1:All bills;2:Trapped bills"
  1. W !
  1. S DIR("A")="Select Number: ",DIR("B")=1
  1. D ^DIR
  1. I +Y'>0 S IBQUIT=1 Q
  1. S IBSEL=+Y
  1. Q