| 1 | IBCNSC4 ;ALB/TMP - INSURANCE PLAN DETAIL SCREEN UTILITIES ; 09-AUG-94
 | 
|---|
| 2 |  ;;2.0;INTEGRATED BILLING;**43,85,103,251**;21-MAR-94
 | 
|---|
| 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 | INIT ; -- Load the plan detail segments
 | 
|---|
| 6 |  N IBLCNT
 | 
|---|
| 7 |  K ^TMP("IBCNSCP",$J)
 | 
|---|
| 8 |  K VALMQUIT
 | 
|---|
| 9 |  S VALMBG=1,(IBLCNT,VALMCNT)=0
 | 
|---|
| 10 |  D KILL^VALM10()
 | 
|---|
| 11 |  ;
 | 
|---|
| 12 |  Q:'$G(IBCPOL)
 | 
|---|
| 13 |  ;
 | 
|---|
| 14 |  S IBCPOLD=$G(^IBA(355.3,IBCPOL,0)),IBCND1=$G(^(1)),$P(IBCDFND,U,18)=IBCPOL
 | 
|---|
| 15 |  S IBCPOLD2=$G(^IBA(355.3,IBCPOL,6)) ;; Daou/EEN adding BIN and PCN
 | 
|---|
| 16 |  D POLICY^IBCNSP0,UR,LIM,AB,VER,COMMENT
 | 
|---|
| 17 |  Q
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 | UR ; -- UR region
 | 
|---|
| 20 |  N START,OFFSET
 | 
|---|
| 21 |  S START=1,OFFSET=43,VALMCNT=6
 | 
|---|
| 22 |  D SET(START,OFFSET," Utilization Review Info ",IORVON,IORVOFF)
 | 
|---|
| 23 |  D SET(START+1,OFFSET,"         Require UR: "_$$EXPAND^IBTRE(355.3,.05,$P(IBCPOLD,"^",5)))
 | 
|---|
| 24 |  D SET(START+2,OFFSET,"   Require Amb Cert: "_$$EXPAND^IBTRE(355.3,.12,$P(IBCPOLD,"^",12)))
 | 
|---|
| 25 |  D SET(START+3,OFFSET,"   Require Pre-Cert: "_$$EXPAND^IBTRE(355.3,.06,$P(IBCPOLD,"^",6)))
 | 
|---|
| 26 |  D SET(START+4,OFFSET,"   Exclude Pre-Cond: "_$$EXPAND^IBTRE(355.3,.07,$P(IBCPOLD,"^",7)))
 | 
|---|
| 27 |  D SET(START+5,OFFSET,"Benefits Assignable: "_$$EXPAND^IBTRE(355.3,.08,$P(IBCPOLD,"^",8)))
 | 
|---|
| 28 |  Q
 | 
|---|
| 29 |  ;
 | 
|---|
| 30 | LIM ; Plan coverage limitations region
 | 
|---|
| 31 |  N START,OFFSET
 | 
|---|
| 32 |  S START=10+$S($P($G(IBCPOLD),U,14)]"":1,1:0),OFFSET=2
 | 
|---|
| 33 |  D BLANK(START-1) S VALMCNT=VALMCNT+1
 | 
|---|
| 34 |  D LIMBLD^IBCNSC41(START,OFFSET,.IBLCNT)
 | 
|---|
| 35 |  Q
 | 
|---|
| 36 |  ;
 | 
|---|
| 37 | AB ; -- Annual benefit years region
 | 
|---|
| 38 |  N OFFSET,START,ADT,Z
 | 
|---|
| 39 |  S START=14+$G(IBLCNT),OFFSET=2
 | 
|---|
| 40 |  D BLANK(START-1) S VALMCNT=VALMCNT+1
 | 
|---|
| 41 |  D SET(START,OFFSET," Annual Benefit Dates ",IORVON,IORVOFF)
 | 
|---|
| 42 |  I $O(^IBA(355.4,"APY",IBCPOL,""))="" D SET(START+1,OFFSET+2,"No Annual Benefits Information") G ABQ
 | 
|---|
| 43 |  S ADT="" F Z=0:1:6 S ADT=$O(^IBA(355.4,"APY",IBCPOL,ADT)) Q:'ADT  D SET(START+1,OFFSET+3+(10*Z),$$DAT1^IBOUTL(-ADT))
 | 
|---|
| 44 |  I ADT'="",$O(^IBA(355.4,"APY",IBCPOL,ADT))'="" D SET(START+1,OFFSET+3+(10*(Z+1)),"*More dates on file - use AB to see them")
 | 
|---|
| 45 | ABQ Q
 | 
|---|
| 46 |  ;
 | 
|---|
| 47 | VER ; -- Plan detail User Information Region
 | 
|---|
| 48 |  N OFFSET,START
 | 
|---|
| 49 |  S START=17+$G(IBLCNT),OFFSET=2
 | 
|---|
| 50 |  D BLANK(START-1) S VALMCNT=VALMCNT+1
 | 
|---|
| 51 |  D SET(START,OFFSET," User Information ",IORVON,IORVOFF)
 | 
|---|
| 52 |  I IBCND1="" D SET(START+1,OFFSET,"No User Information") G VERQ
 | 
|---|
| 53 |  D SET(START+1,OFFSET,"      Entered By: "_$E($P($G(^VA(200,+$P(IBCND1,"^",2),0)),"^",1),1,20))
 | 
|---|
| 54 |  D SET(START+2,OFFSET,"      Entered On: "_$$DAT1^IBOUTL(+IBCND1))
 | 
|---|
| 55 |  D SET(START+3,OFFSET," Last Updated By: "_$E($P($G(^VA(200,+$P(IBCND1,"^",6),0)),"^",1),1,20))
 | 
|---|
| 56 |  D SET(START+4,OFFSET," Last Updated On: "_$$DAT1^IBOUTL(+$P(IBCND1,"^",5)))
 | 
|---|
| 57 | VERQ Q
 | 
|---|
| 58 |  ;
 | 
|---|
| 59 | COMMENT ; -- Plan detail comment region
 | 
|---|
| 60 |  N START,OFFSET,LINE
 | 
|---|
| 61 |  S START=23+$G(IBLCNT),OFFSET=2,LINE=1
 | 
|---|
| 62 |  D BLANK(START-1) S VALMCNT=VALMCNT+1
 | 
|---|
| 63 |  D SET(START,OFFSET," Plan Comments ",IORVON,IORVOFF)
 | 
|---|
| 64 |  S IBI=0
 | 
|---|
| 65 |  F LINE=LINE:1 S IBI=$O(^IBA(355.3,+IBCPOL,11,IBI)) Q:'IBI  D SET(START+LINE,OFFSET,"  "_$E($G(^IBA(355.3,+IBCPOL,11,IBI,0)),1,80))
 | 
|---|
| 66 |  D SET(START+LINE,OFFSET,"  ")
 | 
|---|
| 67 |  S IBLCNT=$G(IBLCNT)+LINE
 | 
|---|
| 68 |  Q
 | 
|---|
| 69 |  ;
 | 
|---|
| 70 | BLANK(LINE) ; -- Build blank line
 | 
|---|
| 71 |  D SET^VALM10(.LINE,$J("",90))
 | 
|---|
| 72 |  Q
 | 
|---|
| 73 |  ;
 | 
|---|
| 74 | SET(LINE,COL,TEXT,ON,OFF) ; -- set display info in array
 | 
|---|
| 75 |  I '$D(@VALMAR@(LINE,0)) D BLANK(.LINE) S VALMCNT=$G(VALMCNT)+1
 | 
|---|
| 76 |  D SET^VALM10(.LINE,$$SETSTR^VALM1(.TEXT,@VALMAR@(LINE,0),.COL,$L(TEXT)))
 | 
|---|
| 77 |  D:$G(ON)]""!($G(OFF)]"") CNTRL^VALM10(.LINE,.COL,$L(TEXT),$G(ON),$G(OFF))
 | 
|---|
| 78 |  W:'(LINE#5) "."
 | 
|---|
| 79 |  Q
 | 
|---|
| 80 |  ;
 | 
|---|
| 81 | HDR ; Active plan list header
 | 
|---|
| 82 |  N IBCNS0,IBLEAD,X,X2
 | 
|---|
| 83 |  S IBCNS0=$G(^DIC(36,+IBCNS,0))
 | 
|---|
| 84 |  S IBLEAD=$S($G(IBIND):"All ",1:"")_$S($G(IBW):"",1:"Active ")_"Plans for: "_$P(IBCNS0,U)_" Insurance Company"
 | 
|---|
| 85 |  S VALMHDR(1)=$$SETSTR^VALM1(IBLEAD,"",1,80)
 | 
|---|
| 86 |  S X=$TR($J("",$L(IBLEAD)),""," ")
 | 
|---|
| 87 |  S VALMHDR(2)=$$SETSTR^VALM1(X,"",$L(IBLEAD)+1,80)
 | 
|---|
| 88 |  S X="#" I $G(IBIND) S X="#  + => Indiv. Plan"
 | 
|---|
| 89 |  I $G(IBW) S X=$E(X_$J("",23),1,23)_"* => Inactive Plan"
 | 
|---|
| 90 |  S VALMHDR(3)=$$SETSTR^VALM1("Pre-  Pre-  Ben",X,64,17)
 | 
|---|
| 91 |  Q
 | 
|---|
| 92 |  ;
 | 
|---|