| [613] | 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 | ; | 
|---|