IBCNES2 ;ALB/ESG - eIV elig/Benefit action protocols ;25-Sept-2009
 ;;2.0;INTEGRATED BILLING;**416**;21-MAR-94;Build 58
 ;;Per VHA Directive 2004-038, this routine should not be modified.
 ;
 Q
 ;
EBSV ; Action protocol for eIV EB data screen called from view/edit Patient Insurance
 ; Called from the EB-Expand Benefits action on the main list of pt. insurances
 ; User may select multiple insurances from this list.
 ;
 N VALMY,IBXX,IBPPOL,DFN,IBCDFN
 D FULL^VALM1
 D EN^VALM2($G(XQORNOD(0)))
 I '$D(VALMY) G EBSVX
 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))))
 . I IBPPOL="" W !!,"Structure error (EBSV)" D PAUSE^VALM1 Q
 . S DFN=+$P(IBPPOL,U,3)
 . I 'DFN W !!,"System Error: Patient DFN undefined." D PAUSE^VALM1 Q
 . S IBCDFN=+$P(IBPPOL,U,4)
 . I 'IBCDFN W !!,"System Error: pt ins policy ien undefined." D PAUSE^VALM1 Q
 . ;
 . D EB^IBCNES(2.322,IBCDFN_","_DFN_",","A",1,"PT. INS EB DATA")
 . ;
 . Q
EBSVX ;
 S VALMBCK="R"
 Q
 ;
EBAB ; Action protocol for eIV EB data screen called from view/edit Annual Benefits screens
 ; Called from the EB-Expand Benefits action on either the view or edit of Annual
 ; Benefits.
 NEW DFN,IBCDFN
 ;
 D FULL^VALM1
 I $G(IBPPOL)="" W !!,"Expand Benefits is not available here. Use Patient Insurance options." D PAUSE^VALM1 G EBABX
 S DFN=+$P(IBPPOL,U,3)
 I 'DFN W !!,"System Error: Patient DFN undefined." D PAUSE^VALM1 G EBABX
 S IBCDFN=+$P(IBPPOL,U,4)
 I 'IBCDFN W !!,"System Error: pt ins policy ien undefined." D PAUSE^VALM1 G EBABX
 ;
 D EB^IBCNES(2.322,IBCDFN_","_DFN_",","A",1,"PT. INS ANN BEN EB DATA")
 ;
EBABX ;
 S VALMBCK="R"
 Q
 ;
EBVP ; Action protocol for eIV EB data screen called from VP screen in pt. insurance - 
 ; Expanded policy information
 NEW DFN,IBCDFN
 D FULL^VALM1
 I $G(IBPPOL)="" W !!,"Structure error (EBVP)" D PAUSE^VALM1 G EBVPX
 S DFN=+$P(IBPPOL,U,3)
 I 'DFN W !!,"System Error: Patient DFN undefined." D PAUSE^VALM1 G EBVPX
 S IBCDFN=+$P(IBPPOL,U,4)
 I 'IBCDFN W !!,"System Error: pt ins policy ien undefined." D PAUSE^VALM1 G EBVPX
 ;
 D EB^IBCNES(2.322,IBCDFN_","_DFN_",","A",1,"PT. INS VIEW POLICY EB DATA")
 ;
EBVPX ;
 S VALMBCK="R"
 Q
 ;
EBJT ; Action protocol for eIV EB data screen called from Third Party Joint Inquiry,
 ; TPJI, main Claim Information screen
 NEW IBX,IBJPOL,X,Y,DIRUT,DTOUT,DUOUT,DIROUT
 D FULL^VALM1
 I '$G(IBIFN)!'$G(DFN) W !!,"Claim or Patient not defined." D PAUSE^VALM1 G EBJTX
 S IBX=$$PST^IBJTU31(IBIFN)
 I 'IBX,$D(DIRUT) G EBJTX
 I 'IBX W !!,"Insurance data incomplete, cannot find policy." D PAUSE^VALM1 G EBJTX
 S IBJPOL=+IBX
 D EB^IBCNES(2.322,IBJPOL_","_DFN_",","A",1,"TPJI CLAIM INFO EB DATA")
EBJTX ;
 S VALMBCK="R"
 Q
 ;
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBCNES2   2785     printed  Sep 23, 2025@19:51:37                                                                                                                                                                                                     Page 2
IBCNES2   ;ALB/ESG - eIV elig/Benefit action protocols ;25-Sept-2009
 +1       ;;2.0;INTEGRATED BILLING;**416**;21-MAR-94;Build 58
 +2       ;;Per VHA Directive 2004-038, this routine should not be modified.
 +3       ;
 +4        QUIT 
 +5       ;
EBSV      ; Action protocol for eIV EB data screen called from view/edit Patient Insurance
 +1       ; Called from the EB-Expand Benefits action on the main list of pt. insurances
 +2       ; User may select multiple insurances from this list.
 +3       ;
 +4        NEW VALMY,IBXX,IBPPOL,DFN,IBCDFN
 +5        DO FULL^VALM1
 +6        DO EN^VALM2($GET(XQORNOD(0)))
 +7        IF '$DATA(VALMY)
               GOTO EBSVX
 +8        SET IBXX=0
 +9        FOR 
               SET IBXX=$ORDER(VALMY(IBXX))
               if 'IBXX
                   QUIT 
               Begin DoDot:1
 +10               SET IBPPOL=$GET(^TMP("IBNSMDX",$JOB,+$ORDER(^TMP("IBNSM",$JOB,"IDX",IBXX,0))))
 +11               IF IBPPOL=""
                       WRITE !!,"Structure error (EBSV)"
                       DO PAUSE^VALM1
                       QUIT 
 +12               SET DFN=+$PIECE(IBPPOL,U,3)
 +13               IF 'DFN
                       WRITE !!,"System Error: Patient DFN undefined."
                       DO PAUSE^VALM1
                       QUIT 
 +14               SET IBCDFN=+$PIECE(IBPPOL,U,4)
 +15               IF 'IBCDFN
                       WRITE !!,"System Error: pt ins policy ien undefined."
                       DO PAUSE^VALM1
                       QUIT 
 +16      ;
 +17               DO EB^IBCNES(2.322,IBCDFN_","_DFN_",","A",1,"PT. INS EB DATA")
 +18      ;
 +19               QUIT 
               End DoDot:1
EBSVX     ;
 +1        SET VALMBCK="R"
 +2        QUIT 
 +3       ;
EBAB      ; Action protocol for eIV EB data screen called from view/edit Annual Benefits screens
 +1       ; Called from the EB-Expand Benefits action on either the view or edit of Annual
 +2       ; Benefits.
 +3        NEW DFN,IBCDFN
 +4       ;
 +5        DO FULL^VALM1
 +6        IF $GET(IBPPOL)=""
               WRITE !!,"Expand Benefits is not available here. Use Patient Insurance options."
               DO PAUSE^VALM1
               GOTO EBABX
 +7        SET DFN=+$PIECE(IBPPOL,U,3)
 +8        IF 'DFN
               WRITE !!,"System Error: Patient DFN undefined."
               DO PAUSE^VALM1
               GOTO EBABX
 +9        SET IBCDFN=+$PIECE(IBPPOL,U,4)
 +10       IF 'IBCDFN
               WRITE !!,"System Error: pt ins policy ien undefined."
               DO PAUSE^VALM1
               GOTO EBABX
 +11      ;
 +12       DO EB^IBCNES(2.322,IBCDFN_","_DFN_",","A",1,"PT. INS ANN BEN EB DATA")
 +13      ;
EBABX     ;
 +1        SET VALMBCK="R"
 +2        QUIT 
 +3       ;
EBVP      ; Action protocol for eIV EB data screen called from VP screen in pt. insurance - 
 +1       ; Expanded policy information
 +2        NEW DFN,IBCDFN
 +3        DO FULL^VALM1
 +4        IF $GET(IBPPOL)=""
               WRITE !!,"Structure error (EBVP)"
               DO PAUSE^VALM1
               GOTO EBVPX
 +5        SET DFN=+$PIECE(IBPPOL,U,3)
 +6        IF 'DFN
               WRITE !!,"System Error: Patient DFN undefined."
               DO PAUSE^VALM1
               GOTO EBVPX
 +7        SET IBCDFN=+$PIECE(IBPPOL,U,4)
 +8        IF 'IBCDFN
               WRITE !!,"System Error: pt ins policy ien undefined."
               DO PAUSE^VALM1
               GOTO EBVPX
 +9       ;
 +10       DO EB^IBCNES(2.322,IBCDFN_","_DFN_",","A",1,"PT. INS VIEW POLICY EB DATA")
 +11      ;
EBVPX     ;
 +1        SET VALMBCK="R"
 +2        QUIT 
 +3       ;
EBJT      ; Action protocol for eIV EB data screen called from Third Party Joint Inquiry,
 +1       ; TPJI, main Claim Information screen
 +2        NEW IBX,IBJPOL,X,Y,DIRUT,DTOUT,DUOUT,DIROUT
 +3        DO FULL^VALM1
 +4        IF '$GET(IBIFN)!'$GET(DFN)
               WRITE !!,"Claim or Patient not defined."
               DO PAUSE^VALM1
               GOTO EBJTX
 +5        SET IBX=$$PST^IBJTU31(IBIFN)
 +6        IF 'IBX
               IF $DATA(DIRUT)
                   GOTO EBJTX
 +7        IF 'IBX
               WRITE !!,"Insurance data incomplete, cannot find policy."
               DO PAUSE^VALM1
               GOTO EBJTX
 +8        SET IBJPOL=+IBX
 +9        DO EB^IBCNES(2.322,IBJPOL_","_DFN_",","A",1,"TPJI CLAIM INFO EB DATA")
EBJTX     ;
 +1        SET VALMBCK="R"
 +2        QUIT 
 +3       ;