| [613] | 1 | IBCNSM5 ;ALB/NLR - INSURANCE MANAGEMENT WORKSHEET ; 23-JUL-93
 | 
|---|
 | 2 |  ;;Version 2.0 ; INTEGRATED BILLING ;**28**; 21-MAR-94
 | 
|---|
 | 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
 | 4 |  ;
 | 
|---|
 | 5 | % G EN^IBCNSM
 | 
|---|
 | 6 |  ;
 | 
|---|
 | 7 | WPPC ; -- print insurance management worksheet, insurance coverage
 | 
|---|
 | 8 |  ;
 | 
|---|
 | 9 |  I '$G(IBCPOL) D  G WPPCQ
 | 
|---|
 | 10 |  .D FULL^VALM1
 | 
|---|
 | 11 |  .W !!,"There is no plan associated with this policy!"
 | 
|---|
 | 12 |  .W !!,"Please use the action 'Change Plan Info', which will create a plan"
 | 
|---|
 | 13 |  .W !,"for the policy."
 | 
|---|
 | 14 |  .N DIR,DTOUT,DUOUT,DIROUT S DIR(0)="E" W ! D ^DIR
 | 
|---|
 | 15 |  ;
 | 
|---|
 | 16 |  N IBCAB,IBPIB1,IBPAG,IBQUIT,IBW
 | 
|---|
 | 17 |  S IBPIB1=1,IBW=1
 | 
|---|
 | 18 |  D GETEN1 I ('($G(IBW)))!(IBYR<(DT-10000)&($G(IBLINE)))!($D(DIRUT)) G WPPCQ
 | 
|---|
 | 19 |  D DEV
 | 
|---|
 | 20 |  I $G(IBQUIT) G WPPCQ
 | 
|---|
 | 21 | DQ ;
 | 
|---|
 | 22 |  S IBPAG=0,IBHDT=$$HTE^XLFDT($H,1)
 | 
|---|
 | 23 |  D PR
 | 
|---|
 | 24 |  D:IBCY GETEN2
 | 
|---|
 | 25 |  D:IBYR&IBCY PR
 | 
|---|
 | 26 |  I $E(IOST,1,2)="C-",IBPAG D PAUSE^VALM1 I $D(DIRUT) S IBQUIT=1 Q
 | 
|---|
 | 27 | WPPCQ I $D(ZTQUEUED) S ZTREQ="@" Q
 | 
|---|
 | 28 |  D ^%ZISC
 | 
|---|
 | 29 |  K IBCPOL,IBYR,IBPIB1,IBW
 | 
|---|
 | 30 |  Q 
 | 
|---|
 | 31 | PR ; -- set variables needed for file navigation, print insurance worksheet or coverage
 | 
|---|
 | 32 |  ;
 | 
|---|
 | 33 |  D SETVAR
 | 
|---|
 | 34 |  D PRINT
 | 
|---|
 | 35 | PRQ Q
 | 
|---|
 | 36 |  ;
 | 
|---|
 | 37 | GETEN1 ; -- find IEN of most recent policy
 | 
|---|
 | 38 |  ;
 | 
|---|
 | 39 |  ;N IBCDFND,IBCDFND1,IBCDFND2
 | 
|---|
 | 40 |  ;I $G(IBYR)="" S IBYR=DT
 | 
|---|
 | 41 |  ;I '$G(IBCPOL) S IBCPOL=$P($G(^IBA(355.4,$G(DA),0)),"^",2)
 | 
|---|
 | 42 |  ;I 'IBCPOL G GETEN1Q
 | 
|---|
 | 43 |  S IBYR=$O(^IBA(355.4,"APY",IBCPOL,-(DT+.0001))) I IBYR S:IBYR<0 IBYR=-IBYR
 | 
|---|
 | 44 |  I ('IBYR),'IBLINE D ASK I ($D(DIRUT))!('($G(IBW))) G GETEN1Q
 | 
|---|
 | 45 |  I $G(IBLINE)&(('IBYR)!(IBYR<(DT-10000))) S IBYR=DT
 | 
|---|
 | 46 |  S IBCAB="" S IBCAB=$O(^IBA(355.4,"APY",IBCPOL,-IBYR,IBCAB))
 | 
|---|
 | 47 |  ;W !!,"DATE OF PREVIOUS ENTRY IS "_$$DAT1^IBOUTL(IBYR),!! H 3
 | 
|---|
 | 48 |  ;I IBYR<(DT-10000),IBLINE S IBYR=DT
 | 
|---|
 | 49 |  ;I IBYR<(DT-10000),IBLINE W !!,"MOST RECENT ENTRY IS "_$$DAT1^IBOUTL(IBYR)_".  ENTRY CANNOT BE MORE THAN A YEAR OLD.",!!,"YOU MAY PRINT ENTRY UNDER 'PC'.",!! H 4
 | 
|---|
 | 50 | GETEN1Q Q
 | 
|---|
 | 51 |  ;
 | 
|---|
 | 52 | SETVAR ; -- set variables needed for file navigation
 | 
|---|
 | 53 |  ;
 | 
|---|
 | 54 |  S IBCDFND=$G(^DPT(DFN,.312,$P(IBPPOL,"^",4),0)),IBCNS=+IBCDFND
 | 
|---|
 | 55 |  S IBCDFND1=$G(^DPT(DFN,.312,$P(IBPPOL,"^",4),1))
 | 
|---|
 | 56 |  S IBCDFND2=$G(^DPT(DFN,.312,$P(IBPPOL,"^",4),2))
 | 
|---|
 | 57 |  S IBCDFNDA=$G(^DIC(36,+IBCDFND,.11))
 | 
|---|
 | 58 |  S IBCDFNDB=$G(^DIC(36,+IBCDFND,.13))
 | 
|---|
 | 59 |  S IBCPOL=+$P(IBCDFND,"^",18),IBCNS=+IBCDFND,IBCDFN=$P(IBPPOL,"^",4)
 | 
|---|
 | 60 |  S IBCPOLD=$G(^IBA(355.3,+$P(IBCDFND,"^",18),0))
 | 
|---|
 | 61 |  S FILE="^DPT("_DFN_",.312,"
 | 
|---|
 | 62 |  S IBCBU=$O(^IBA(355.5,"APPY",DFN,IBCPOL,-IBYR,IBCDFN,0))
 | 
|---|
 | 63 |  S IBCBUD=$G(^IBA(355.5,+IBCBU,0))
 | 
|---|
 | 64 |  S IBCBUD1=$G(^IBA(355.5,+IBCBU,1))
 | 
|---|
 | 65 |  S IBCGN=$$GRP^IBCNS(IBCPOL)
 | 
|---|
 | 66 |  S IBPAT=1
 | 
|---|
 | 67 |  S IBCABD=$G(^IBA(355.4,+IBCAB,0))
 | 
|---|
 | 68 |  S IBCABD2=$G(^IBA(355.4,+IBCAB,2))
 | 
|---|
 | 69 |  S IBCABD3=$G(^IBA(355.4,+IBCAB,3))
 | 
|---|
 | 70 |  S IBCABD4=$G(^IBA(355.4,+IBCAB,4))
 | 
|---|
 | 71 |  S IBCABD5=$G(^IBA(355.4,+IBCAB,5))
 | 
|---|
 | 72 |  Q
 | 
|---|
 | 73 |  ;
 | 
|---|
 | 74 | DEV ; -- ask for device
 | 
|---|
 | 75 |  ;
 | 
|---|
 | 76 |  W !!,"*** You will need a 132 column printer for this report. ***",!
 | 
|---|
 | 77 |  S %ZIS="QM" D ^%ZIS I POP S IBQUIT=1 G R1Q
 | 
|---|
 | 78 |  I $D(IO("Q")) K IO("Q") S IBQUIT=1,ZTRTN="DQ^IBCNSM5",ZTSAVE("IB*")="",ZTSAVE("DFN")="",ZTDESC="INSURANCE MANAGEMENT WORKSHEET" D ^%ZTLOAD K ZTSK D HOME^%ZIS Q
 | 
|---|
 | 79 |  I $E(IOST,1,2)="C-" D FULL^VALM1
 | 
|---|
 | 80 |  U IO
 | 
|---|
 | 81 | R1Q Q
 | 
|---|
 | 82 |  ;
 | 
|---|
 | 83 | PRINT ; -- print insurance management worksheet/insurance coverage
 | 
|---|
 | 84 |  ;
 | 
|---|
 | 85 |  D PID^VADPT
 | 
|---|
 | 86 |  D HDR
 | 
|---|
 | 87 |  D BL1^IBCNSM6,BL2^IBCNSM7,BL3^IBCNSM8,BL4^IBCNSM8,BL5^IBCNSM9,BL6^IBCNSM9,BL7^IBCNSM9
 | 
|---|
 | 88 |  Q
 | 
|---|
 | 89 |  ;
 | 
|---|
 | 90 | HDR ; -- print header
 | 
|---|
 | 91 |  ;
 | 
|---|
 | 92 |  I $E(IOST,1,2)["C-",IBPAG D PAUSE^VALM1 I $D(DIRUT) S IBQUIT=1 Q
 | 
|---|
 | 93 |  W:$E(IOST,1,2)["C-"!($G(IBPAG)) @IOF
 | 
|---|
 | 94 |  S IBPAG=$G(IBPAG)+1
 | 
|---|
 | 95 |  W !,$S($G(IBLINE):"INSURANCE MANAGEMENT WORKSHEET",1:"INSURANCE COVERAGE FOR "_$S($G(IBPIB1):"CURRENT ENTRY",1:"NEXT-MOST-CURRENT ENTRY")),?(IOM-30),IBHDT,"  PAGE ",IBPAG
 | 
|---|
 | 96 |  W !,$TR($J(" ",IOM)," ","_")
 | 
|---|
 | 97 |  D DEM^VADPT
 | 
|---|
 | 98 |  W !!,VADM(1),?34,"PT ID:  "_VA("PID"),?79,"DOB:  "_$P(VADM(3),"^",2)
 | 
|---|
 | 99 |  W !,$E($P($G(^DIC(36,+IBCDFND,0)),"^"),1,28),?31," GROUP #:  ",$$DOL^IBCNSM6(355.3,.04,$P(IBCPOLD,"^",4),$G(IBLINE))
 | 
|---|
 | 100 |  W ?74,"For YEAR:  "_$S($G(IBCAB):$$DAT1^IBOUTL(IBYR),1:"______________")
 | 
|---|
 | 101 |  W !?30,"Ins. Type:  ",$$DOL^IBCNSM6(355.1,.01,$P($G(^IBE(355.1,+$P(IBCPOLD,"^",9),0)),"^"),$G(IBLINE))
 | 
|---|
 | 102 |  Q
 | 
|---|
 | 103 |  ;
 | 
|---|
 | 104 | GETEN2 ; -- get IEN of next-to-most-recent entry (Print Coverage)
 | 
|---|
 | 105 |  ;
 | 
|---|
 | 106 |  S IBYR=$O(^IBA(355.4,"APY",IBCPOL,-IBYR)) I 'IBYR G PR1Q
 | 
|---|
 | 107 |  S:IBYR<0 IBYR=-IBYR
 | 
|---|
 | 108 |  S IBCAB="" S IBCAB=$O(^IBA(355.4,"APY",IBCPOL,-IBYR,IBCAB))
 | 
|---|
 | 109 |  S IBPIB1=0
 | 
|---|
 | 110 | PR1Q Q
 | 
|---|
 | 111 |  ;
 | 
|---|
 | 112 | ASK ; -- if Print Coverage and no benefit years for selected policy, ask if user wants worksheet 
 | 
|---|
 | 113 |  ;
 | 
|---|
 | 114 |  W !
 | 
|---|
 | 115 |  S DIR(0)="YO",DIR("A")="No Benefit Years on File.  Do you want to fill out a worksheet",DIR("B")="No"
 | 
|---|
 | 116 |  W !
 | 
|---|
 | 117 |  D ^DIR K DIR I $D(DIRUT) S IBQUIT=1 G ASKQ
 | 
|---|
 | 118 |  I Y S IBW=1,IBLINE=1,IBCY=0 G ASKQ
 | 
|---|
 | 119 |  S IBW=0 D PAUSE^VALM1
 | 
|---|
 | 120 | ASKQ ;
 | 
|---|
 | 121 |  Q
 | 
|---|