IBCNERPB ;DAOU/RO - PAYER LINK REPORT - Prompts ;AUG-2003
;;2.0;INTEGRATED BILLING;**184,252,271,416,528,668,687,737,752**;21-MAR-94;Build 20
;;Per VA Directive 6402, this routine should not be modified.
;
; Reference to EN^XUTMDEVQ in ICR #1519
;
; IB*2*687-rewrote/redesigned the report (basically from scratch) which
; included combining 3 routines into 2. The changes based on the patches prior
; to IB*2*688 were not tracked in the routine in the past; therefore, you will
; not find references to them below. The IB*2*668 reference (translating "IIV"
; to "EIV") will be overwritten with the rewrite.
;
; eIV - Electronic Ins. Verification
; IIU - Interfacility Ins. Update
;
; Input parameters: N/A
; Variables ZTSAVED for queueing:
; IBCNERTN="IBCNERPB" (current routine)
; IBCNESPC("PAPP")=Payer APPLICATION selected (1-eIV, 2-IIU, 3-Both)
; IBCNESPC("PDEACT")=Include Deactivated Payers? (1-include, 2-exclude)
; IBCNESPC("PDET")=Include Ins detail? (1-include list of ins, 2-do not list)
; IBCNESPC("POUT")=Output Format ('E'=EXCEL, 'R'=REPORT)
; IBCNESPC("PPYR")=Single Payer name or "" for ALL
; IBCNESPC("PSORT")=Primary Sort
; IBCNESPC("PTYPE")=Payer type (1-no active ins linked, 2-at least 1 ins linked, 3-All Payers)
Q
;
EN ; Entry pt
N IBCNERTN,IBCNESPC,POP,STOP,ZTQUEUED,ZTREQ,ZTSTOP
S STOP=0,IBCNERTN="IBCNERPB"
W @IOF
W !,"Payer Link Report",!
W !,"In order for an Insurance Company to be eligible for electronic insurance"
W !,"eligibility communications via the eIV software or to transmit active insurance"
W !,"to another VAMC via IIU, the Insurance Company needs to be linked to an"
W !,"appropriate payer from the National EDI Payer list. The National EDI Payer"
W !,"list contains the names of the payers that are currently participating with"
W !,"the eIV and/or IIU process."
W !!,"This report provides access to the following information:"
W !!?4,"- A list of all payers with current eIV and IIU settings."
W !?4,"- A list of all payers with associated linked insurance company detail."
W !?4,"- A list of all payers with no insurance companies linked."
;
R05 ; Include Deactivated Payers?
N DIC,DTOUT,DUOUT,X,Y
K IBCNERSPC
W !!!
S DIR(0)="Y"
S DIR("A")="Include deactivated payers"
S DIR("B")="YES"
S DIR("?",1)=" Enter YES to include deactivated payers."
S DIR("?")=" Enter NO to exclude deactivated payers."
D ^DIR K DIR
I $D(DUOUT)!$D(DTOUT) S Y="" G REXIT
I Y=-1 S Y=""
S IBCNESPC("PDEACT")=Y
;
R10 ; Select Payer (#365.12)
;IB*737/TAZ - Removed reference to Most Popular Payer and "~NO PAYER"
N DIC,DTOUT,DUOUT,X,Y
W !
S DIC(0)="ABEQ"
S DIC("A")=$$FO^IBCNEUT1("Select a Payer (RETURN for ALL Payers): ",40,"L")
; Do not allow non-eIV/non-IIU payers
S DIC("S")="I (($$PYRAPP^IBCNEUT5(""EIV"",$G(Y))'="""")!($$PYRAPP^IBCNEUT5(""IIU"",$G(Y))'=""""))"
; If 'no' deactivated payers selected, override the previous "screen" line.
I '+IBCNESPC("PDEACT") S DIC("S")="I ('+$$PYRDEACT^IBCNINSU($G(Y))),(($$PYRAPP^IBCNEUT5(""EIV"",$G(Y))'="""")!($$PYRAPP^IBCNEUT5(""IIU"",$G(Y))'=""""))"
S DIC="^IBE(365.12,"
D ^DIC
I $D(DUOUT)!$D(DTOUT) S Y="" G:$$STOP^IBCNINSU REXIT G R05
I Y=-1 S Y=""
S IBCNESPC("PPYR")=Y
I +Y,'+IBCNESPC("PDEACT"),+$$PYRDEACT^IBCNINSU(+Y) D G R10
. W !,*7,"*** Invalid activated payer...Please try again. ***"
;
R20 ; OUTPUT Format
N DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
W !
S DIR(0)="SA^E:Excel;R:Report"
S DIR("A")="(E)xcel Format or (R)eport Format: "
S DIR("B")="Report"
D ^DIR I $D(DIRUT) G:$$STOP^IBCNINSU REXIT G R10
S IBCNESPC("POUT")=Y
I IBCNESPC("POUT")="E" S IBCNESPC("PAPP")=3,IBCNESPC("PSORT")=1,IBCNESPC("PTYPE")=3 G R50 ; For EXCEL go straight to Linked Ins Co Detail prompt.
I IBCNESPC("PPYR")'="" S IBCNESPC("PAPP")=3,IBCNESPC("PTYPE")=3 G R50 ; For a Single P/ayer Only.
;
R30 ; eIV, IIU or ALL Payers
N DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
W !!!,"eIV Payer list - displays those payers who can send and receive"
W !," HIPAA 270/271 transactions for verification."
W !,"IIU Payer list - displays those payers who are eligible to exchange"
W !," between VAMCs for active insurance."
W !,"Both - includes any payer that is defined as either eIV or IIU"
W !," or both applications."
S DIR(0)="S^1:eIV Payer List;2:IIU Payer List;3:Both"
S DIR("A")="Select a report option"
S DIR("B")="3"
S DIR("?",1)="1 - Select eIV PAYER LIST to view payers eligible to send and receive"
S DIR("?",2)=" HIPAA 270/271 transactions for verification."
S DIR("?",3)="2 - Select IIU PAYER LIST to view payers eligible to exchange between"
S DIR("?",4)=" VAMCs for active insurance."
S DIR("?",5)="3 - Select BOTH to view payers that are defined as either eIV or IIU or"
S DIR("?",6)=" both applications."
S DIR("?")=" "
D ^DIR K DIR I $D(DIRUT) G:$$STOP^IBCNINSU REXIT G R20
S IBCNESPC("PAPP")=Y
;
R40 ; PAYER Type
N DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
S DIR(0)="S^1:Unlinked Payers;2:Linked Payers;3:ALL Payers"
S DIR("A")="Select the type of payers to display"
S DIR("B")="3"
S DIR("?",1)=" 1 - Only payers with no active insurance companies linked"
S DIR("?",2)=" 2 - Only payers with at least one insurance company linked"
S DIR("?",3)=" 3 - ALL Payers"
S DIR("?")=" "
D ^DIR K DIR I $D(DIRUT) G:$$STOP^IBCNINSU REXIT G R30
S IBCNESPC("PTYPE")=Y I IBCNESPC("PTYPE")=1 S IBCNESPC("PDET")=2 G R60
;
R50 ; Linked Ins Co Detail?
N DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
S DIR(0)="S^1:List linked insurance company detail;2:Do not list linked insurance company detail"
S DIR("A")="Select company detail option"
S DIR("B")="1"
S DIR("?",1)=" 1 - Include a list of insurance companies linked to the payers"
S DIR("?",2)=" 2 - Do not list linked insurance companies, total number only"
S DIR("?")=" "
D ^DIR K DIR
I $D(DIRUT) G:$$STOP^IBCNINSU REXIT G:(IBCNESPC("POUT")="E")!(IBCNESPC("PPYR")'="") R20 G R40
S IBCNESPC("PDET")=Y
;
R60 ; PRIMARY sort
N DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
I IBCNESPC("POUT")="E" S IBCNESPC("PSORT")=1 G R100 ; If EXCEL skip prompt
I IBCNESPC("PPYR")'="" S IBCNESPC("PSORT")=1 G R100 ; If a single payer skip prompt
S DIR(0)="S^1:Payer Name;2:VA National Payer ID;3:Nationally Enabled Status;4:Locally Enabled Status;5:# of Linked Insurance Companies"
S DIR("A")="Select the primary sort field"
S DIR("B")=1
S DIR("?")=" Select a data field by which this report should be primarily sorted."
D ^DIR K DIR
I $D(DIRUT) G:$$STOP^IBCNINSU REXIT G:(IBCNESPC("PTYPE")=1) R40 G:(IBCNESPC("PPYR")'="") R20 G R50
S IBCNESPC("PSORT")=Y
;
R100 ; 132 width.
I IBCNESPC("POUT")="R" W !!!,"*** This report is 132 characters wide ***",!
I IBCNESPC("POUT")="E" W !!!,"*** To avoid wrapping, enter '0;256;999' at the 'DEVICE' prompt. ***",!
;D DEVICE(IBCNERTN,.IBCNESPC) I STOP G:$$STOP^IBCNINSU REXIT G:(IBCNESPC("POUT")="E") R50 G:(IBCNESPC("PTYPE")=1) R60 G:(IBCNESPC("PPYR")'="") R50 G R60
D DEVICE(IBCNERTN,.IBCNESPC) I STOP G REXIT ;IB*752/DTG remove step back if upcaret and go to exit
;
REXIT ; Exit pt
Q
;
DEVICE(IBCNERTN,IBCNESPC) ; Device Handler
; IBCNERTN = Routine name for ^TMP($J,...
; IBCNESPC = Array of params
N POP,ZTDESC,ZTRTN,ZTSAVE
S ZTRTN="COMPILE^IBCNERPC("""_IBCNERTN_""",.IBCNESPC)"
S ZTDESC="Payer Link Report"
S ZTSAVE("IBCNESPC(")=""
S ZTSAVE("IBCNERTN")=""
D EN^XUTMDEVQ(ZTRTN,ZTDESC,.ZTSAVE) ; ICR # 1519
I POP S STOP=1
DEVICEX ; DEVICE exit
Q
;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBCNERPB 7622 printed Sep 15, 2024@21:39:11 Page 2
IBCNERPB ;DAOU/RO - PAYER LINK REPORT - Prompts ;AUG-2003
+1 ;;2.0;INTEGRATED BILLING;**184,252,271,416,528,668,687,737,752**;21-MAR-94;Build 20
+2 ;;Per VA Directive 6402, this routine should not be modified.
+3 ;
+4 ; Reference to EN^XUTMDEVQ in ICR #1519
+5 ;
+6 ; IB*2*687-rewrote/redesigned the report (basically from scratch) which
+7 ; included combining 3 routines into 2. The changes based on the patches prior
+8 ; to IB*2*688 were not tracked in the routine in the past; therefore, you will
+9 ; not find references to them below. The IB*2*668 reference (translating "IIV"
+10 ; to "EIV") will be overwritten with the rewrite.
+11 ;
+12 ; eIV - Electronic Ins. Verification
+13 ; IIU - Interfacility Ins. Update
+14 ;
+15 ; Input parameters: N/A
+16 ; Variables ZTSAVED for queueing:
+17 ; IBCNERTN="IBCNERPB" (current routine)
+18 ; IBCNESPC("PAPP")=Payer APPLICATION selected (1-eIV, 2-IIU, 3-Both)
+19 ; IBCNESPC("PDEACT")=Include Deactivated Payers? (1-include, 2-exclude)
+20 ; IBCNESPC("PDET")=Include Ins detail? (1-include list of ins, 2-do not list)
+21 ; IBCNESPC("POUT")=Output Format ('E'=EXCEL, 'R'=REPORT)
+22 ; IBCNESPC("PPYR")=Single Payer name or "" for ALL
+23 ; IBCNESPC("PSORT")=Primary Sort
+24 ; IBCNESPC("PTYPE")=Payer type (1-no active ins linked, 2-at least 1 ins linked, 3-All Payers)
+25 QUIT
+26 ;
EN ; Entry pt
+1 NEW IBCNERTN,IBCNESPC,POP,STOP,ZTQUEUED,ZTREQ,ZTSTOP
+2 SET STOP=0
SET IBCNERTN="IBCNERPB"
+3 WRITE @IOF
+4 WRITE !,"Payer Link Report",!
+5 WRITE !,"In order for an Insurance Company to be eligible for electronic insurance"
+6 WRITE !,"eligibility communications via the eIV software or to transmit active insurance"
+7 WRITE !,"to another VAMC via IIU, the Insurance Company needs to be linked to an"
+8 WRITE !,"appropriate payer from the National EDI Payer list. The National EDI Payer"
+9 WRITE !,"list contains the names of the payers that are currently participating with"
+10 WRITE !,"the eIV and/or IIU process."
+11 WRITE !!,"This report provides access to the following information:"
+12 WRITE !!?4,"- A list of all payers with current eIV and IIU settings."
+13 WRITE !?4,"- A list of all payers with associated linked insurance company detail."
+14 WRITE !?4,"- A list of all payers with no insurance companies linked."
+15 ;
R05 ; Include Deactivated Payers?
+1 NEW DIC,DTOUT,DUOUT,X,Y
+2 KILL IBCNERSPC
+3 WRITE !!!
+4 SET DIR(0)="Y"
+5 SET DIR("A")="Include deactivated payers"
+6 SET DIR("B")="YES"
+7 SET DIR("?",1)=" Enter YES to include deactivated payers."
+8 SET DIR("?")=" Enter NO to exclude deactivated payers."
+9 DO ^DIR
KILL DIR
+10 IF $DATA(DUOUT)!$DATA(DTOUT)
SET Y=""
GOTO REXIT
+11 IF Y=-1
SET Y=""
+12 SET IBCNESPC("PDEACT")=Y
+13 ;
R10 ; Select Payer (#365.12)
+1 ;IB*737/TAZ - Removed reference to Most Popular Payer and "~NO PAYER"
+2 NEW DIC,DTOUT,DUOUT,X,Y
+3 WRITE !
+4 SET DIC(0)="ABEQ"
+5 SET DIC("A")=$$FO^IBCNEUT1("Select a Payer (RETURN for ALL Payers): ",40,"L")
+6 ; Do not allow non-eIV/non-IIU payers
+7 SET DIC("S")="I (($$PYRAPP^IBCNEUT5(""EIV"",$G(Y))'="""")!($$PYRAPP^IBCNEUT5(""IIU"",$G(Y))'=""""))"
+8 ; If 'no' deactivated payers selected, override the previous "screen" line.
+9 IF '+IBCNESPC("PDEACT")
SET DIC("S")="I ('+$$PYRDEACT^IBCNINSU($G(Y))),(($$PYRAPP^IBCNEUT5(""EIV"",$G(Y))'="""")!($$PYRAPP^IBCNEUT5(""IIU"",$G(Y))'=""""))"
+10 SET DIC="^IBE(365.12,"
+11 DO ^DIC
+12 IF $DATA(DUOUT)!$DATA(DTOUT)
SET Y=""
if $$STOP^IBCNINSU
GOTO REXIT
GOTO R05
+13 IF Y=-1
SET Y=""
+14 SET IBCNESPC("PPYR")=Y
+15 IF +Y
IF '+IBCNESPC("PDEACT")
IF +$$PYRDEACT^IBCNINSU(+Y)
Begin DoDot:1
+16 WRITE !,*7,"*** Invalid activated payer...Please try again. ***"
End DoDot:1
GOTO R10
+17 ;
R20 ; OUTPUT Format
+1 NEW DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
+2 WRITE !
+3 SET DIR(0)="SA^E:Excel;R:Report"
+4 SET DIR("A")="(E)xcel Format or (R)eport Format: "
+5 SET DIR("B")="Report"
+6 DO ^DIR
IF $DATA(DIRUT)
if $$STOP^IBCNINSU
GOTO REXIT
GOTO R10
+7 SET IBCNESPC("POUT")=Y
+8 ; For EXCEL go straight to Linked Ins Co Detail prompt.
IF IBCNESPC("POUT")="E"
SET IBCNESPC("PAPP")=3
SET IBCNESPC("PSORT")=1
SET IBCNESPC("PTYPE")=3
GOTO R50
+9 ; For a Single P/ayer Only.
IF IBCNESPC("PPYR")'=""
SET IBCNESPC("PAPP")=3
SET IBCNESPC("PTYPE")=3
GOTO R50
+10 ;
R30 ; eIV, IIU or ALL Payers
+1 NEW DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
+2 WRITE !!!,"eIV Payer list - displays those payers who can send and receive"
+3 WRITE !," HIPAA 270/271 transactions for verification."
+4 WRITE !,"IIU Payer list - displays those payers who are eligible to exchange"
+5 WRITE !," between VAMCs for active insurance."
+6 WRITE !,"Both - includes any payer that is defined as either eIV or IIU"
+7 WRITE !," or both applications."
+8 SET DIR(0)="S^1:eIV Payer List;2:IIU Payer List;3:Both"
+9 SET DIR("A")="Select a report option"
+10 SET DIR("B")="3"
+11 SET DIR("?",1)="1 - Select eIV PAYER LIST to view payers eligible to send and receive"
+12 SET DIR("?",2)=" HIPAA 270/271 transactions for verification."
+13 SET DIR("?",3)="2 - Select IIU PAYER LIST to view payers eligible to exchange between"
+14 SET DIR("?",4)=" VAMCs for active insurance."
+15 SET DIR("?",5)="3 - Select BOTH to view payers that are defined as either eIV or IIU or"
+16 SET DIR("?",6)=" both applications."
+17 SET DIR("?")=" "
+18 DO ^DIR
KILL DIR
IF $DATA(DIRUT)
if $$STOP^IBCNINSU
GOTO REXIT
GOTO R20
+19 SET IBCNESPC("PAPP")=Y
+20 ;
R40 ; PAYER Type
+1 NEW DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
+2 SET DIR(0)="S^1:Unlinked Payers;2:Linked Payers;3:ALL Payers"
+3 SET DIR("A")="Select the type of payers to display"
+4 SET DIR("B")="3"
+5 SET DIR("?",1)=" 1 - Only payers with no active insurance companies linked"
+6 SET DIR("?",2)=" 2 - Only payers with at least one insurance company linked"
+7 SET DIR("?",3)=" 3 - ALL Payers"
+8 SET DIR("?")=" "
+9 DO ^DIR
KILL DIR
IF $DATA(DIRUT)
if $$STOP^IBCNINSU
GOTO REXIT
GOTO R30
+10 SET IBCNESPC("PTYPE")=Y
IF IBCNESPC("PTYPE")=1
SET IBCNESPC("PDET")=2
GOTO R60
+11 ;
R50 ; Linked Ins Co Detail?
+1 NEW DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
+2 SET DIR(0)="S^1:List linked insurance company detail;2:Do not list linked insurance company detail"
+3 SET DIR("A")="Select company detail option"
+4 SET DIR("B")="1"
+5 SET DIR("?",1)=" 1 - Include a list of insurance companies linked to the payers"
+6 SET DIR("?",2)=" 2 - Do not list linked insurance companies, total number only"
+7 SET DIR("?")=" "
+8 DO ^DIR
KILL DIR
+9 IF $DATA(DIRUT)
if $$STOP^IBCNINSU
GOTO REXIT
if (IBCNESPC("POUT")="E")!(IBCNESPC("PPYR")'="")
GOTO R20
GOTO R40
+10 SET IBCNESPC("PDET")=Y
+11 ;
R60 ; PRIMARY sort
+1 NEW DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y
+2 ; If EXCEL skip prompt
IF IBCNESPC("POUT")="E"
SET IBCNESPC("PSORT")=1
GOTO R100
+3 ; If a single payer skip prompt
IF IBCNESPC("PPYR")'=""
SET IBCNESPC("PSORT")=1
GOTO R100
+4 SET DIR(0)="S^1:Payer Name;2:VA National Payer ID;3:Nationally Enabled Status;4:Locally Enabled Status;5:# of Linked Insurance Companies"
+5 SET DIR("A")="Select the primary sort field"
+6 SET DIR("B")=1
+7 SET DIR("?")=" Select a data field by which this report should be primarily sorted."
+8 DO ^DIR
KILL DIR
+9 IF $DATA(DIRUT)
if $$STOP^IBCNINSU
GOTO REXIT
if (IBCNESPC("PTYPE")=1)
GOTO R40
if (IBCNESPC("PPYR")'="")
GOTO R20
GOTO R50
+10 SET IBCNESPC("PSORT")=Y
+11 ;
R100 ; 132 width.
+1 IF IBCNESPC("POUT")="R"
WRITE !!!,"*** This report is 132 characters wide ***",!
+2 IF IBCNESPC("POUT")="E"
WRITE !!!,"*** To avoid wrapping, enter '0;256;999' at the 'DEVICE' prompt. ***",!
+3 ;D DEVICE(IBCNERTN,.IBCNESPC) I STOP G:$$STOP^IBCNINSU REXIT G:(IBCNESPC("POUT")="E") R50 G:(IBCNESPC("PTYPE")=1) R60 G:(IBCNESPC("PPYR")'="") R50 G R60
+4 ;IB*752/DTG remove step back if upcaret and go to exit
DO DEVICE(IBCNERTN,.IBCNESPC)
IF STOP
GOTO REXIT
+5 ;
REXIT ; Exit pt
+1 QUIT
+2 ;
DEVICE(IBCNERTN,IBCNESPC) ; Device Handler
+1 ; IBCNERTN = Routine name for ^TMP($J,...
+2 ; IBCNESPC = Array of params
+3 NEW POP,ZTDESC,ZTRTN,ZTSAVE
+4 SET ZTRTN="COMPILE^IBCNERPC("""_IBCNERTN_""",.IBCNESPC)"
+5 SET ZTDESC="Payer Link Report"
+6 SET ZTSAVE("IBCNESPC(")=""
+7 SET ZTSAVE("IBCNERTN")=""
+8 ; ICR # 1519
DO EN^XUTMDEVQ(ZTRTN,ZTDESC,.ZTSAVE)
+9 IF POP
SET STOP=1
DEVICEX ; DEVICE exit
+1 QUIT
+2 ;