IBCNSM2 ;ALB/AAS - INSURANCE MANAGEMENT - EDIT ROUTINE ; 22-OCT-92
;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
;;Per VHA Directive 10-93-142, this routine should not be modified.
;
% S U="^"
;
BU ; -- Enter Edit benefits already used
D FULL^VALM1
N I,J,IBXX,VALMY
D EN^VALM2($G(XQORNOD(0)))
I $D(VALMY) S IBXX=0 F S IBXX=$O(VALMY(IBXX)) Q:'IBXX D
.S IBPPOL=$G(^TMP("IBNSMDX",$J,$O(^TMP("IBNSM",$J,"IDX",IBXX,0))))
.Q:IBPPOL=""
.S IBCNS=$P(IBPPOL,"^",5),IBCPOL=$P(IBPPOL,"^",22)
.D EN^VALM("IBCNS BENEFITS USED BY DATE")
.Q
S VALMBCK="R" Q
;
EP ; -- Enter Edit Patient Insurance Policy Information
;
S VALMBCK="R" Q
;
EI ; -- Enter Edit Insurance Company Information
; -- if coming from benefit screen
; ibcns=insurance co number
D FULL^VALM1
I $G(IBCNS)>0 D EN^VALM("IBCNS INSURANCE COMPANY") G EIQ
;
; -- if coming from list of policies, allow selection
N I,J,IBXX,IBCNS,VALMY
D EN^VALM2($G(XQORNOD(0)))
I $D(VALMY) S IBXX=0 F S IBXX=$O(VALMY(IBXX)) Q:'IBXX D
.S I=$G(^TMP("IBNSMDX",$J,$O(^TMP("IBNSM",$J,"IDX",IBXX,0))))
.S IBCNS=$P(I,"^",5)
.D EN^VALM("IBCNS INSURANCE COMPANY")
EIQ S VALMBCK="R" Q
;
VC ; -- Verify Insurance Coverage
D FULL^VALM1
N I,J,IBXX,VALMY
D EN^VALM2($G(XQORNOD(0)))
I $D(VALMY) S IBXX=0 F S IBXX=$O(VALMY(IBXX)) Q:'IBXX D
.S IBPPOL=$G(^TMP("IBNSMDX",$J,$O(^TMP("IBNSM",$J,"IDX",IBXX,0))))
.Q:IBPPOL="" D VFY
;
EXIT ; -- Kill variables, refresh screen
;
D BLD^IBCNSM
K I,J,IBXX,DA,DR,IBDUZZ
S VALMBCK="R" Q
;
VFY ; -- Display most recent verification
;
N DA,DR,IBDUZ
D FULL^VALM1
S IBCH=$P(IBPPOL,U,1)
S IBDUZ=$P($G(^DPT(DFN,.312,$P(IBPPOL,U,4),1)),U,4)
I 'IBDUZ D REVASK Q
W !!," "_IBCH_" LAST VERIFIED BY "_$P($G(^VA(200,+IBDUZ,0)),U)_" ON "_$$DAT1^IBOUTL($P($G(^DPT(DFN,.312,$P(IBPPOL,U,4),1)),U,3))_". . ."
I $P($P($G(^DPT(DFN,.312,$P(IBPPOL,U,4),1)),U,3),".")=DT W !,"COVERAGE VERIFIED TODAY, "_$$DAT1^IBOUTL(DT) H 3
E D REVASK
Q
;
REVASK ; -- Determine whether user wishes to re-verify
;
N Y
W:'IBDUZ !
S DIR("B")="No",DIR(0)="YO",DIR("A")=$S('IBDUZ:" "_IBCH_" NEVER PREVIOUSLY VERIFIED. DO YOU WISH TO VERIFY COVERAGE",1:"ARE YOU RE-VERIFYING COVERAGE TODAY")
D ^DIR K DIR Q:$D(DIRUT)
I Y D REVFY
Q
;
REVFY ; -- Re-verify
;
S DA(1)=DFN,DA=$P(IBPPOL,U,4),DIE="^DPT(DFN,.312,",DR="1.03////"_DT_";1.04////"_DUZ D ^DIE K DIE
S IBDUZ=$P($G(^DPT(DFN,.312,$P(IBPPOL,U,4),1)),U,4)
W !," "_IBCH_" VERIFIED BY "_$P($G(^VA(200,+IBDUZ,0)),U)_" ON "_$$DAT1^IBOUTL($P($G(^DPT(DFN,.312,$P(IBPPOL,U,4),1)),U,3)) D PAUSE^VALM1
Q
IBCNSM2 ;ALB/AAS - INSURANCE MANAGEMENT - EDIT ROUTINE ; 22-OCT-92
+1 ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
+2 ;;Per VHA Directive 10-93-142, this routine should not be modified.
+3 ;
% SET U="^"
+1 ;
BU ; -- Enter Edit benefits already used
+1 DO FULL^VALM1
+2 NEW I,J,IBXX,VALMY
+3 DO EN^VALM2($GET(XQORNOD(0)))
+4 IF $DATA(VALMY)
SET IBXX=0
FOR
SET IBXX=$ORDER(VALMY(IBXX))
IF 'IBXX
QUIT
Begin DoDot:1
+5 SET IBPPOL=$GET(^TMP("IBNSMDX",$JOB,$ORDER(^TMP("IBNSM",$JOB,"IDX",IBXX,0))))
+6 IF IBPPOL=""
QUIT
+7 SET IBCNS=$PIECE(IBPPOL,"^",5)
SET IBCPOL=$PIECE(IBPPOL,"^",22)
+8 DO EN^VALM("IBCNS BENEFITS USED BY DATE")
+9 QUIT
End DoDot:1
+10 SET VALMBCK="R"
QUIT
+11 ;
EP ; -- Enter Edit Patient Insurance Policy Information
+1 ;
+2 SET VALMBCK="R"
QUIT
+3 ;
EI ; -- Enter Edit Insurance Company Information
+1 ; -- if coming from benefit screen
+2 ; ibcns=insurance co number
+3 DO FULL^VALM1
+4 IF $GET(IBCNS)>0
DO EN^VALM("IBCNS INSURANCE COMPANY")
GOTO EIQ
+5 ;
+6 ; -- if coming from list of policies, allow selection
+7 NEW I,J,IBXX,IBCNS,VALMY
+8 DO EN^VALM2($GET(XQORNOD(0)))
+9 IF $DATA(VALMY)
SET IBXX=0
FOR
SET IBXX=$ORDER(VALMY(IBXX))
IF 'IBXX
QUIT
Begin DoDot:1
+10 SET I=$GET(^TMP("IBNSMDX",$JOB,$ORDER(^TMP("IBNSM",$JOB,"IDX",IBXX,0))))
+11 SET IBCNS=$PIECE(I,"^",5)
+12 DO EN^VALM("IBCNS INSURANCE COMPANY")
End DoDot:1
EIQ SET VALMBCK="R"
QUIT
+1 ;
VC ; -- Verify Insurance Coverage
+1 DO FULL^VALM1
+2 NEW I,J,IBXX,VALMY
+3 DO EN^VALM2($GET(XQORNOD(0)))
+4 IF $DATA(VALMY)
SET IBXX=0
FOR
SET IBXX=$ORDER(VALMY(IBXX))
IF 'IBXX
QUIT
Begin DoDot:1
+5 SET IBPPOL=$GET(^TMP("IBNSMDX",$JOB,$ORDER(^TMP("IBNSM",$JOB,"IDX",IBXX,0))))
+6 IF IBPPOL=""
QUIT
DO VFY
End DoDot:1
+7 ;
EXIT ; -- Kill variables, refresh screen
+1 ;
+2 DO BLD^IBCNSM
+3 KILL I,J,IBXX,DA,DR,IBDUZZ
+4 SET VALMBCK="R"
QUIT
+5 ;
VFY ; -- Display most recent verification
+1 ;
+2 NEW DA,DR,IBDUZ
+3 DO FULL^VALM1
+4 SET IBCH=$PIECE(IBPPOL,U,1)
+5 SET IBDUZ=$PIECE($GET(^DPT(DFN,.312,$PIECE(IBPPOL,U,4),1)),U,4)
+6 IF 'IBDUZ
DO REVASK
QUIT
+7 WRITE !!," "_IBCH_" LAST VERIFIED BY "_$PIECE($GET(^VA(200,+IBDUZ,0)),U)_" ON "_$$DAT1^IBOUTL($PIECE($GET(^DPT(DFN,.312,$PIECE(IBPPOL,U,4),1)),U,3))_". . ."
+8 IF $PIECE($PIECE($GET(^DPT(DFN,.312,$PIECE(IBPPOL,U,4),1)),U,3),".")=DT
WRITE !,"COVERAGE VERIFIED TODAY, "_$$DAT1^IBOUTL(DT)
HANG 3
+9 IF '$TEST
DO REVASK
+10 QUIT
+11 ;
REVASK ; -- Determine whether user wishes to re-verify
+1 ;
+2 NEW Y
+3 IF 'IBDUZ
WRITE !
+4 SET DIR("B")="No"
SET DIR(0)="YO"
SET DIR("A")=$SELECT('IBDUZ:" "_IBCH_" NEVER PREVIOUSLY VERIFIED. DO YOU WISH TO VERIFY COVERAGE",1:"ARE YOU RE-VERIFYING COVERAGE TODAY")
+5 DO ^DIR
KILL DIR
IF $DATA(DIRUT)
QUIT
+6 IF Y
DO REVFY
+7 QUIT
+8 ;
REVFY ; -- Re-verify
+1 ;
+2 SET DA(1)=DFN
SET DA=$PIECE(IBPPOL,U,4)
SET DIE="^DPT(DFN,.312,"
SET DR="1.03////"_DT_";1.04////"_DUZ
DO ^DIE
KILL DIE
+3 SET IBDUZ=$PIECE($GET(^DPT(DFN,.312,$PIECE(IBPPOL,U,4),1)),U,4)
+4 WRITE !," "_IBCH_" VERIFIED BY "_$PIECE($GET(^VA(200,+IBDUZ,0)),U)_" ON "_$$DAT1^IBOUTL($PIECE($GET(^DPT(DFN,.312,$PIECE(IBPPOL,U,4),1)),U,3))
DO PAUSE^VALM1
+5 QUIT