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

IBCNERPA.m

Go to the documentation of this file.
  1. IBCNERPA ;DAOU/BHS - IBCNE eIV RESPONSE REPORT (cont'd) ;03-JUN-2002
  1. ;;2.0;INTEGRATED BILLING;**184,271,345,416,528,752**;21-MAR-94;Build 20
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. ; eIV - Insurance Verification Interface
  1. ;
  1. ; Input from IBCNERP1/2:
  1. ; IBCNERTN="IBCNERP1" - Driver rtn
  1. ; IBCNESPC("BEGDT")=Start Dt, IBCNESPC("ENDDT")=End Dt
  1. ; IBCNESPC("PYR")=Pyr IEN OR "" for all
  1. ; IBCNESPC("PAT")=Pat IEN OR "" for all
  1. ; IBCNESPC("TYPE")=A (All Responses) OR M (Most Recent Responses) for
  1. ; unique Pyr/Pt pair
  1. ; IBCNESPC("SORT")=1 (PyrNm) OR 2 (PatNm)
  1. ; IBCNESPC("TRCN")=Trace #^IEN, if non-null, all params null
  1. ; IBCNESPC("RFLAG")=Report Flag used to indicate which report is being
  1. ; run. Response Report (O), Inactive Report (1), or Ambiguous
  1. ; Report (2).
  1. ; IBCNESPC("DTEXP")=Expiration date used in the inactive policy report
  1. ; IBOUT="R" for Report format or "E" for Excel format
  1. ;
  1. ; Based on structure of eIV Response File (#365)
  1. ; ^TMP($J,IBCNERTN,S1,S2,CT,0) based on ^IBCN(365,DA,0)
  1. ; IBCNERTN="IBCNERP1", S1=PyrName(SORT=1) or PatNm(SORT=2),
  1. ; S2=PatName(SORT=1) or PyrName(SORT=2), CT=Seq ct
  1. ; ^TMP($J,IBCNERTN,S1,S2,CT,1) based on ^IBCN(365,DA,1)
  1. ; ^TMP($J,IBCNERTN,S1,S2,2,EBCT) based on ^IBCN(365,DA,2)
  1. ; EBCT=E/B IEN (365.02)
  1. ; ^TMP($J,IBCNERTN,S1,S2,2,EBCT,NTCT)=based on ^IBCN(365,DA,2,EB,NT)
  1. ; NTCT=Notes Ct, may not be Notes IEN, if line wrapped (365.021)
  1. ; ^TMP($J,IBCNERTN,S1,S2,2,CNCT) based on ^IBCN(365,DA,3)
  1. ; CNCT=Cont Pers IEN (365.03)
  1. ; ^TMP($J,IBCNERTN,S1,S2,4,CT)= err txt based on ^IBCN(365,DA,4)
  1. ; CT=1/2 if >60 ch long
  1. ; Must call at one of the entry points, EN3 or EN6
  1. Q
  1. ;
  1. EN3(IBCNERTN,IBCNESPC,IBOUT) ; Entry pt. Calls IBCNERP3
  1. N IBBDT,IBEDT,IBPY,IBPT,IBTYP,IBSRT,CRT,MAXCNT,IBPXT
  1. N IBPGC,X,Y,DIR,DTOUT,DUOUT,LIN,IBTRC,IPRF,IBRDT
  1. N IBXTFEED,IBFEED ;IB*752/DTG correct for excessive line feeds at end of report
  1. S IBBDT=$G(IBCNESPC("BEGDT")),IBEDT=$G(IBCNESPC("ENDDT"))
  1. S IBPY=$G(IBCNESPC("PYR")),IBPT=$G(IBCNESPC("PAT"))
  1. S IBTYP=$G(IBCNESPC("TYPE")),IBSRT=$G(IBCNESPC("SORT"))
  1. S IBTRC=$P($G(IBCNESPC("TRCN")),U,1),(IBPXT,IBPGC)=0
  1. S IBEXP=$G(IBCNESPC("DTEXP"))
  1. S IPRF=$G(IBCNESPC("RFLAG"))
  1. S IBRDT=$$FMTE^XLFDT($$NOW^XLFDT,1)
  1. ; Determine IO params
  1. I "^R^E^"'[(U_$G(IBOUT)_U) S IBOUT="R"
  1. I IOST["C-" S MAXCNT=IOSL-3,CRT=1,IBXTFEED=21 ;IB*752/DTG correct for excessive line feeds at end of report
  1. E S MAXCNT=IOSL-6,CRT=0,IBXTFEED=50 ;IB*752/DTG
  1. D PRINT^IBCNERP3(IBCNERTN,IBBDT,IBEDT,IBPY,IBPT,IBTYP,IBSRT,.IBPGC,.IBPXT,MAXCNT,CRT,IBTRC,IBEXP,IPRF,IBRDT,IBOUT,IBXTFEED)
  1. I $G(ZTSTOP)!IBPXT G EXIT3
  1. I CRT,IBPGC>0,'$D(ZTQUEUED) D
  1. . ;IB*752/DTG correct for excessive line feeds at end of report
  1. . ;I MAXCNT<51 F LIN=1:1:(MAXCNT-$Y) W !
  1. . I MAXCNT<51 F LIN=1:1:(IBXTFEED-$Y) W !
  1. . S DIR(0)="E" D ^DIR K DIR
  1. EXIT3 ; Exit pt
  1. Q
  1. ;
  1. ;
  1. EN6(IBCNERTN,IBCNESPC,IBOUT) ; Entry pt. Calls IBCNERP6
  1. ;
  1. ; Init vars
  1. N CRT,MAXCNT,IBPXT,IBPGC,IBBDT,IBEDT,IBPY,IBSRT,IBDTL
  1. N X,Y,DIR,DTOUT,DUOUT,LIN,TOTALS
  1. ;
  1. S IBBDT=$G(IBCNESPC("BEGDT"))
  1. S IBEDT=$G(IBCNESPC("ENDDT"))
  1. S IBPY=$G(IBCNESPC("PYR"))
  1. S IBDTL=$G(IBCNESPC("DTL"))
  1. S IBSRT=$G(IBCNESPC("SORT"))
  1. S (IBPXT,IBPGC)=0
  1. ;
  1. ; Determine IO parameters
  1. I IOST["C-" S MAXCNT=IOSL-3,CRT=1
  1. E S MAXCNT=IOSL-6,CRT=0
  1. ;
  1. D PRINT^IBCNERP6(IBCNERTN,IBBDT,IBEDT,IBPY,IBDTL,IBSRT,.IBPGC,.IBPXT,MAXCNT,CRT,IBOUT)
  1. I $G(ZTSTOP)!IBPXT G EXIT6
  1. I CRT,IBPGC>0,'$D(ZTQUEUED) D
  1. . I MAXCNT<51 F LIN=1:1:(MAXCNT-$Y) W !
  1. . S DIR(0)="E" D ^DIR K DIR
  1. ;
  1. EXIT6 ; Exit pt
  1. Q
  1. ;