IBCNHUT2 ;ALB/GEF - HPID/OEID UTILITIES ;11-MAR-14
Source file <IBCNHUT2.m>
action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
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 |
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 |
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
Routine Call |
|
Routine 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 |
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 |
>> | 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~ |