Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All
Print Page as PDF
Routine: IBCNHUT2

Package: Integrated Billing

Routine: IBCNHUT2


Information

IBCNHUT2 ;ALB/GEF - HPID/OEID UTILITIES ;11-MAR-14

Source Information

Source file <IBCNHUT2.m>

Call Graph

Call Graph

Call Graph Total: 11

Package Total Call Graph
VA FileMan 4 ^DIC  ^DIE  ^DIK  $$GET1^DIQ  
Kernel 3 ^%ZTLOAD  ($$FMADD,$$FMTH)^XLFDT  $$PROD^XUPROD  
Integrated Billing 2 SEND^IBCNHHLO  ($$HPD,$$NIF,$$PHP,$$SHP,$$STAT,$$UID,$$UNSOL,$$VID)^IBCNHUT1  
MailMan 1 ^XMD  
Registration 1 $$SITE^VASITE  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 5

Package Total Caller Graph
Integrated Billing 5 IBAMTC  IBCNHHLI  IBCNHHLO  IBCNHSRV  IBCNHUT1  

Entry Points

Name Comments DBIA/ICR reference
PUR ;
; This section handles the purging of the HPID/OEID data stored in the
; HPID/OEID Transmission Queue file (#367.1) and in the HPID/OEID Response file (#367).
; This is called from a nightly tasked routine IBAMTC. Data created within the last 2 weeks
; cannot be purged. Only requested data that has a NIF-ID response received will be purged.
; Unsolicited responses will also be purged as will those with a status of EXR (Exception
; Report Reject), whether they have a NIF ID or not.
; The system will not purge entries with no response, entries that have dropped to
; an exception queue, or entries with a response less than 14 days old.
; Uses this x-ref on file 367: ^IBCNH(367,"E",future purge date/time,ien)=""
; and finds the corresponding entry in file 367.1 with: ^IBCNH(367,ien,0)=2nd piece is ien in 367.1
EXT ; kick off HL7 queries of each insurance company sent to the NIF for the initial HPID extract
; called from option IBCNH HPID NIF BATCH QUERY. To be run once FSC notifies site that they are
; ready - ie. they have received and processed the data extracts and have the NIF ID's for each
; insurance company.
FM36(INS,DATA,TQN) ; updates file 36, 8 node with data received from the NIF
; INS = insurance company ien (REQUIRED)
; DATA=String containing HPID data in this format: HPID^CHP/SHP^PARENT^NIF ID
; NIF = NIF ID for insurance company
; TQN=ien of entry in file 367.1 (if data came from a requested response)
; returns "-1^Error code^Error reason" if entry not added and Processing Status if added/updated
FM71(INS,HLID) ; adds entry to file 367.1 (HPID/OEID TRANSMISSION QUEUE) and file 367 (HPID/OEID RESPONSE)
; INS =insurance company ien (required)
; HLID = message control ID number assigned by HL7 when HL7 message was created (required)
; returns ien of entry added to file 367.1
FM367(IEN,DATA,ID,QL) ; updates entry to file 367 (HPID/OEID RESPONSE) for requested responses,
; or creates a new entry for unsolicited responses.
; IEN = ien of existing entry in file 367 (will only exist for requested responses)
; DATA = data string containing response data for 0 node (NOTE: You do not have to pass all this data, but it must be in this format):
; HLID^TQN^RTY^INS NAME^NPS^STAT D/T^UID^PARENT HPID^CHP or SHP
; TQN = Transaction ien in file 367.1 (HPID/OEID TRANSMISSION QUEUE), null for unsolicited responses
; RTY = Response Type: R for Requested or U for Unsolicited
; NPS = Processing status at NIF, either R for Response Processed or X for Exception Report or EXR for Rejected
; HLID = control ID of HL7 message (required if this is an unsolicited response, not req'd if you have ien)
; ID = Data string of ID data sent from NIF. MUST BE in this format:
R36(INS,DATA) ; this function gathers all the insurance company data we need to send to the NIF
; INS= ien of insurance company entry (required)
; DATA=name of array to store data results in
; Returns: DATA(0) = Insurance Ien^Insurance Company Name^INACTIVE FLAG^UID^NIF ID^HPID/OEID^CHP/SHP^PARENT HPID
; DATA(1) = STREET ADDRESS 1^STR AD2^CITY^STATE^ZIP^BILLING CO NAME^TYPE OF COVERAGE^PHONE#
; DATA(2) = string of ID's in this format:
; EDI ID NUMBER-PROF^EDI ID NUMBER-INST^EDI PROF SECONDARY ID(1)^EDI PROF SECONDARY ID(2)^EDI INST SECONDARY ID(1)^EDI INST SECONDARY ID(2)^VA NATIONAL ID^NIF ID^HPID/OEID^VISTA UNIQUE ID
; DATA(3) = string of ID qualifiers in this format: ^^QUAL1(PS1)^QUAL2(PS2)^QAUL3(IS1)^QUAL4(IS2)
SETUPVER ; Set up verifying of IB NIF TCP logical link
; IB*2.0*549 added method
SETUPVRX ;
VERFYLNK ; Verify IB NIF TCP entry in the HL Logical Link file (#870) on a daily basis
; IB*2.0*549 added Method
; Input - LLIEN [thru ZTSAVE("LLIEN")]
; NIFTM [thru ZTSAVE("NIFTM")]
LEG(TQN,INS) ; function to determine if legacy ID's changed since we sent them out
; returns a 0 if Legacy ID has not changed and a "1^EL^Error: Legacy ID Changed!" if it has.
SMAIL(MGRP,XMSUB,MSG) ; Summary email
; IB*2.0*549 Send e-mail

External References

Name Field # of Occurrence
^%ZTLOAD SETUPVER+29
^DIC FM71+8, FM71+12, FM71+25, FM367+27
^DIE EXT+7, FM36+16, FM36+18, FM71+15, FM71+21, FM71+28, FM367+29, FM367+33
^DIK PUR+30, PUR+32
$$GET1^DIQ SETUPVER+9
SEND^IBCNHHLO EXT+21
$$HPD^IBCNHUT1 R36+18
$$NIF^IBCNHUT1 EXT+14, R36+18
$$PHP^IBCNHUT1 R36+18
$$SHP^IBCNHUT1 R36+18
$$STAT^IBCNHUT1 FM367+21, FM367+41
$$UID^IBCNHUT1 R36+17, R36+18
$$UNSOL^IBCNHUT1 FM367+23
$$VID^IBCNHUT1 R36+14
$$SITE^VASITE VERFYLNK+13
$$FMADD^XLFDT PUR+15
$$FMTH^XLFDT SETUPVER+16
^XMD SETUPVER+39, VERFYLNK+25, SMAIL+5
$$PROD^XUPROD SETUPVER+7

Interaction Calls

Name Line Occurrences
Function Call: WRITE
  • Prompt: "."
  • Line Location: EXT+10
Routine Call
  • DIC
  • Line Location:
    • FM71+8
    • FM71+12
    • FM71+25
    • FM367+27
Routine Call
  • DIE
  • Line Location:
    • EXT+7
    • FM36+16
    • FM36+18
    • FM71+15
    • FM71+21
    • FM71+28
    • FM367+29
    • FM367+33

FileMan Files Accessed Via FileMan Db Call

FileNo Call Tags
^IBE(350.9 - [#350.9] Classic Fileman Calls,  GET1^DIQ
^DIC(36 - [#36] Classic Fileman Calls
^IBCNH(367 - [#367] Classic Fileman Calls
^IBCNH(367.1 - [#367.1] Classic Fileman Calls

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^DIC(36 - [#36] EXT+8, EXT+19, FM36+10, R36+11, R36+13, R36+14, LEG+9, LEG+10
^DPT("AB" EXT+16
^HLCS(870 - [#870] SETUPVER+11
^HLMA("AC" VERFYLNK+6, VERFYLNK+10
^IBA(355.3 - [#355.3] EXT+17
^IBCNH(367 - [#367] PUR+16, PUR+17, PUR+19, PUR+27, PUR+28, FM367+38
^IBCNH(367.1 - [#367.1] PUR+25, EXT+12, FM71+8, FM367+38, LEG+7, LEG+8
^IBE(350.9 - [#350.9] EXT+7

Label References

Name Line Occurrences
$$FM36 FM367+39
$$LEG FM36+12
$$R36 FM71+17
SETUPVER PUR+37
SETUPVRX SETUPVER+7, SETUPVER+10, SETUPVER+12

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
C EXT+5~, EXT+8*, EXT+10*, EXT+22!
CURRTIME SETUPVER+3~, SETUPVER+14*, SETUPVER+21
DA PUR+14~, PUR+30*, PUR+32*, PUR+34!, EXT+5~, EXT+7*, EXT+22!, FM36+7~, FM36+14*, FM36+20
, FM71+5~, FM71+15*, FM71+18*, FM71+27*, FM71+29!, FM367+15~, FM367+28*, FM367+31*
DA(1 FM71+25*, FM367+27*
DATA FM36~, FM71+5~, FM71+17, FM71+29!, FM367~, FM367+16*, FM367+17, FM367+21, FM367+23, FM367+39
, R36~
DATA( R36+10*
DATA(0 R36+18*, R36+19
DATA(1 R36+12*, R36+13*
DATA(2 FM71+23, R36+20*
DATA(3 FM71+27, R36+21*
DIC FM36+7~, FM36+14!, FM36+19!, FM71+5~, FM71+8*, FM71+12*, FM71+15!, FM71+18!, FM71+25*, FM71+27!
, FM71+29!, FM367+15~, FM367+27*, FM367+28!
DIC(0 FM71+8*, FM71+12*, FM71+25*, FM367+27*
DIE EXT+5~, EXT+7*, EXT+22!, FM36+7~, FM36+14*, FM36+19!, FM71+5~, FM71+15*, FM71+18*, FM71+27*
, FM71+29!, FM367+15~, FM367+28*, FM367+31*
DIFROM SETUPVER+4~, SMAIL+2~
DIK PUR+14~, PUR+30*, PUR+32*, PUR+34!
DLAYGO FM71+5~, FM71+8*, FM71+12*, FM71+25*, FM71+29!, FM367+15~, FM367+27*
DR EXT+5~, EXT+7*, EXT+22!, FM36+7~, FM36+14*, FM36+15*, FM36+18*, FM36+19!, FM71+5~, FM71+15*
, FM71+18*, FM71+19*, FM71+20*, FM71+27*, FM71+29!, FM367+15~, FM367+28*, FM367+31*, FM367+32*
DT PUR+15, SETUPVER+15
ENDDT PUR+14~, PUR+15*, PUR+16, PUR+34!
FLG VERFYLNK+5~, VERFYLNK+7*, VERFYLNK+10*, VERFYLNK+12
HLID FM71~, FM71+7, FM71+12, FM71+15, FM367+15~, FM367+17*, FM367+19, FM367+23
I FM36+7~, FM36+15*, FM36+19!, FM71+20*, FM367+32*, R36+9~, R36+10*, R36+12*, R36+20*, R36+21*
, R36+22!, LEG+3~, LEG+6*, LEG+7, LEG+8, LEG+11!
IBN EXT+5~, EXT+8*, EXT+12, EXT+14, EXT+16, EXT+17, EXT+19, EXT+21, EXT+22!
ID PUR+14~, PUR+28*, PUR+34!, FM367~, FM367+16*, FM367+23, FM367+26, FM367+39, R36+9~, R36+22!
ID( R36+20
ID(1 R36+17*
ID(10 R36+17*
ID(2 R36+17*
ID(3 R36+15*
ID(4 R36+15*
ID(5 R36+15*
ID(6 R36+15*
ID(7 R36+14*
ID(8 R36+19*
ID(9 R36+19*
IDN FM71+5~, FM71+23*, FM71+25, FM71+27, FM71+29!, FM367+15~, FM367+26*, FM367+27, FM367+28
IEN FM367~, FM367+18, FM367+19, FM367+21, FM367+23*, FM367+24, FM367+27, FM367+31, FM367+37, FM367+38
, FM367+41, VERFYLNK+5~, VERFYLNK+6*, VERFYLNK+7, VERFYLNK+10
INS FM36~, FM36+8, FM36+10, FM36+12, FM36+14, FM36+19!, FM71~, FM71+6, FM71+17, FM71+19
, FM367+15~, FM367+38*, FM367+39, R36~, R36+11, R36+13, R36+14, R36+17, R36+18, LEG~
, LEG+5, LEG+9, LEG+10
LID FM36+19!
LLIEN SETUPVER+4~, SETUPVER+11*, SETUPVER+12, VERFYLNK+6, VERFYLNK+10
MGRP SETUPVER+33*, SMAIL~, SMAIL+3
MSG SMAIL~, SMAIL+4
MTIME SETUPVER+3~, SETUPVER+15*, SETUPVER+16*, SETUPVER+17*, SETUPVER+21
N LEG+3~, LEG+7*, LEG+8, LEG+11!
ND R36+9~, R36+22!
ND( R36+11*, R36+12
ND(0 R36+11*, R36+13, R36+18
ND(3 R36+14*, R36+17
ND(6 R36+14*, R36+15, R36+16
NIFTM SETUPVER+4~, SETUPVER+9*, SETUPVER+10, SETUPVER+15, SETUPVER+38, VERFYLNK+24
NPS FM367+15~
PS FM367+15~, FM367+39*, FM367+41
QL FM367~, FM367+16*, FM367+28, R36+9~, R36+22!
QL( R36+21
QL(3 R36+16*
QL(4 R36+16*
QL(5 R36+16*
QL(6 R36+16*
RDTA PUR+14~, PUR+19*, PUR+20, PUR+24, PUR+34!
RSIEN PUR+14~, PUR+17*, PUR+19, PUR+27, PUR+28, PUR+30, PUR+34!
RSN FM71+5~, FM71+14*, FM71+19, FM71+29!
RST PUR+14~, PUR+20*, PUR+21, PUR+23, PUR+27, PUR+28
RTY FM367+15~, FM367+17*, FM367+18, FM367+23, FM367+37
RTYP PUR+14~, PUR+20*, PUR+27, PUR+28, PUR+34!
STDT PUR+14~, PUR+16*, PUR+17, PUR+34!
TID LEG+3~, LEG+11!
TID( LEG+8*
TID(1 LEG+9
TID(2 LEG+10
TQIEN PUR+14~, PUR+24*, PUR+25, PUR+31, PUR+32, PUR+34!
TQN FM36~, FM36+12, FM71+5~, FM71+10*, FM71+15, FM71+18, FM71+25, FM71+30, FM367+15~, FM367+38*
, FM367+39, LEG~, LEG+4, LEG+7, LEG+8
TST PUR+14~, PUR+25*
U PUR+20, PUR+24, PUR+25, PUR+28, EXT+7, EXT+19, FM71+8, FM71+23, FM71+27, FM367+17
, FM367+21, FM367+24, FM367+26, FM367+28, FM367+38, FM367+39, FM367+41, R36+12, R36+13, R36+15
, R36+16, R36+17, R36+18, R36+19, R36+20, R36+21, LEG+8, LEG+9, LEG+10
X FM36+7~, FM36+19!, FM71+5~, FM71+8*, FM71+12*, FM71+25*, FM71+29!, FM367+27*, VERFYLNK+5~, VERFYLNK+15*
VERFYLNK+21, VERFYLNK+23
XMDUN SETUPVER+4~, SMAIL+2~
XMDUZ SETUPVER+4~, SMAIL+2~
XMMG SETUPVER+4~, SMAIL+2~
XMSUB SETUPVER+4~, SETUPVER+35*, VERFYLNK+5~, VERFYLNK+21*, SMAIL~
XMTEXT SETUPVER+4~, SETUPVER+36*, VERFYLNK+5~, VERFYLNK+22*, SMAIL+2~, SMAIL+4*
XMTEXT(1 SETUPVER+37*, VERFYLNK+23*
XMTEXT(2 SETUPVER+38*, VERFYLNK+24*
XMY SETUPVER+4~, VERFYLNK+5~, SMAIL+2~
XMY( VERFYLNK+19*, SMAIL+3*
XMY("VHAeInsuranceRapidResponse@domain.ext" VERFYLNK+18*
XMZ SETUPVER+4~, SMAIL+2~
XX SETUPVER+4~, VERFYLNK+5~, VERFYLNK+13*, VERFYLNK+14
Y FM71+5~, FM71+9, FM71+10, FM71+14, FM71+15, FM71+25, FM71+27, FM71+29!, FM367+15~, FM367+27
, FM367+28
YY SETUPVER+4~, VERFYLNK+5~, VERFYLNK+14*, VERFYLNK+24
ZTCPU SETUPVER+5~
ZTDESC SETUPVER+4~, SETUPVER+25*
ZTDTH SETUPVER+5~, SETUPVER+21*
ZTIO SETUPVER+5~, SETUPVER+26*
ZTKIL SETUPVER+5~
ZTPRI SETUPVER+5~
ZTRTN SETUPVER+4~, SETUPVER+24*
ZTSAVE SETUPVER+5~
ZTSAVE("LLIEN" SETUPVER+27*
ZTSAVE("NIFTM" SETUPVER+28*
ZTSK SETUPVER+5~, SETUPVER+30
ZTSYNC SETUPVER+5~
ZTUCI SETUPVER+5~
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All