IBCNHUT1 ;ALB/GEF - HPID/OEID UTILITIES ;11-MAR-14
Source file <IBCNHUT1.m>
Package | Total | Call Graph |
---|---|---|
VA FileMan | 3 | ^DIC ^DIE ^DIK |
Integrated Billing | 1 | $$FM36^IBCNHUT2 |
Kernel | 1 | ($$FMADD,$$NOW)^XLFDT |
Registration | 1 | $$SITE^VASITE |
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 |
---|---|---|
HOD(ID,INS,IBHD) | ; function to determine if the data is an HPID, an OEID, or an invalid ID
; HPID/OEID is a 10 character string with the 1st digit being 7 for HPID & 6 for OEID ; and the 10th digit being a LUHN Check digit. If the optional INS value is passed, an ; additional validation check will be done, comparing the ID to what is currently on file ; for that insurance company ien. |
|
HPD(INS,V) | ; this function returns the HPID/OEID for an insurance company
; The user must pass INS = Insurance Company ien in file 36 ; V = 1 means run validation checks (not required). Will append an '*' to the HPID if it does NOT pass validation checks |
|
INS(ID,TYP,IBID) | ; this function finds the ien of the insurance company entry in file 36 using the NIF ID or the HPID/OEID
; TYPE=N for NIF or H for HPID/OEID ; returns data array: IBID(0)=number of entries with this ID, IBID(n)=IEN^ID^Insurance Company name ; TO CALL: $$INS^IBCNHUT1(ID,TYP,.ARRAY NAME) ; 11/7/14 - cross-reference format changed with HPID Build 2, now AHOD & ANIF |
|
NIF(INS) | ; this function finds the NIF ID for an insurance company using the ien
; INS=Insurance Company ien in file 36 |
|
SHP(INS) | ; this function determines if the entry is a CHP or SHP
; INS = insurance company ien in file 36. Returns C for CHP (Controlling Health Plan) and S for SHP (Sub-Health Plan) |
|
PHP(INS) | ; this function returns the parent HPID insurance company if applicable
|
|
VID(INS) | ; this function gets the VA National ID for the insurance company/payer
; |
|
UID(INS) | ; this function creates the Vista Unique Site ID to send to the NIF
; returns station#_"."_insurance company ien |
|
TRG1(IEN,ST) | ; this function sets the trigger for the DATE OF FUTURE PURGE (.1) field in file #367.1
|
|
UNSOL(HLID,RTY,ID,DATA) | ; this code handles unsolicited responses which only have the NIF ID, no insurance ien
; If there are multiple entries in file 36 with the same NIF ID, this code will update all of them. |
|
STAT(IEN,STAT) | ; updates field .05 in file 367 (PROCESSING STATUS)
|
|
CKDGT(ID) | ; Function to calculate and return the check digit of an HPID
; The check digit is calculated using the Luhn Formula for ; Modulus 10 "double-add-double" Check Digit. A value of 24 is ; added to the total to account for the implied USA (80840) prefix. |
|
EXR(INS) | ; Purge EXR records if the EDI numbers get updated.
; if the insurance company has an EXR response (Exception Report Reject), and the EDI#'s ; get updated, purge the EXR response. |
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
Routine Call |
|
Routine Call |
|
FileNo | Call Tags |
---|---|
^IBCNH(367 - [#367] | Classic Fileman Calls |
^IBCNH(367.1 - [#367.1] | Classic Fileman Calls |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^DIC(36 - [#36] | HPD+6, INS+9, INS+10, INS+12, INS+13, NIF+4, SHP+4, PHP+3, VID+7 |
^IBCNH(367 - [#367] | TRG1+11, TRG1+17, TRG1+18, EXR+7 |
^IBCNH(367.1 - [#367.1] | EXR+5, EXR+6 |
^IBE(365.12 - [#365.12] | VID+8 |
^IBE(365.13 - [#365.13] | VID+5 |
Name | Line Occurrences |
---|---|
$$CKDGT | HOD+15 |
$$HOD | HPD+7 |
$$HPD | HOD+17 |
$$INS | UNSOL+9 |
$$STAT | UNSOL+14 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
ARRAY | UNSOL+3~, UNSOL+9 |
ARRAY( | UNSOL+12 |
ARRAY(0 | UNSOL+11 |
C | INS+5~, INS+9*, INS+10*, INS+12*, INS+13*, UNSOL+3~, UNSOL+11*, UNSOL+12 |
DA | UNSOL+3~, UNSOL+7*, STAT+1~, STAT+2*, STAT+3!, EXR+4~, EXR+8*, EXR+9*, EXR+10! |
DATA | UNSOL~, UNSOL+12 |
DIC | UNSOL+3~, UNSOL+6*, UNSOL+7!, STAT+1~, STAT+3! |
DIC(0 | UNSOL+6* |
DIE | UNSOL+3~, UNSOL+7*, STAT+2* |
DIK | EXR+4~, EXR+8*, EXR+9*, EXR+10! |
DLAYGO | UNSOL+3~, UNSOL+6* |
DR | UNSOL+3~, UNSOL+7*, STAT+1~, STAT+2*, STAT+3! |
HLID | UNSOL~, UNSOL+6, UNSOL+7 |
I | UNSOL+3~, UNSOL+12* |
IBAPP | VID+2~, VID+5*, VID+8 |
IBCDIG | CKDGT+5~, CKDGT+8*, CKDGT+9 |
IBCN | CKDGT+5~, CKDGT+7* |
IBCTOT | CKDGT+5~, CKDGT+6*, CKDGT+7*, CKDGT+8 |
IBHD | HOD~, HOD+17*, HOD+18 |
IBHPD | HPD+4~, HPD+6*, HPD+7 |
IBI | CKDGT+5~, CKDGT+7* |
IBID | INS~, INS+6*, INS+7, INS+14 |
IBID( | INS+10*, INS+13* |
IBID(0 | INS+6*, INS+10*, INS+13* |
IBPY0 | VID+2~, VID+8* |
IBPYR | VID+2~, VID+7*, VID+8 |
ID | HOD~, HOD+13, HOD+15, HOD+18, HOD+19, HOD+20, INS~, INS+7, INS+9, INS+10 , INS+12, INS+13, TRG1+6~, TRG1+18*, UNSOL~, UNSOL+9, UNSOL+12, CKDGT~, CKDGT+7 |
IEN | INS+5~, INS+9*, INS+10, INS+12*, INS+13, TRG1~, TRG1+11, TRG1+17, TRG1+18, UNSOL+6* , UNSOL+7, UNSOL+11, UNSOL+14, STAT~, STAT+2, STAT+4 |
INS | HOD~, HOD+17, HPD~, HPD+5, HPD+6, HPD+7, NIF~, NIF+3, NIF+4, SHP~ , SHP+3, SHP+4, PHP~, PHP+2, PHP+3, VID~, VID+7, UID~, UID+2, UID+3 , UNSOL+3~, UNSOL+12*, EXR~, EXR+3, EXR+5 |
PS | UNSOL+3~, UNSOL+11*, UNSOL+12*, UNSOL+14 |
RSIEN | EXR+4~, EXR+6*, EXR+7, EXR+9, EXR+10! |
RSP | TRG1+6~ |
RTY | UNSOL~, UNSOL+4, UNSOL+7 |
ST | TRG1~, TRG1+9 |
STAT | STAT~, STAT+2 |
TQIEN | EXR+4~, EXR+5*, EXR+6, EXR+8, EXR+10! |
TYP | INS~, INS+8, INS+11 |
U | HPD+6, HPD+7, INS+10, INS+13, NIF+4, SHP+4, PHP+3, VID+7, VID+8, UID+3 , TRG1+11, TRG1+18, UNSOL+9, UNSOL+12, UNSOL+14, EXR+6, EXR+7 |
V | HPD~, HPD+7 |
X | UNSOL+3~, UNSOL+6*, UNSOL+9* |
Y | UNSOL+3~, UNSOL+6 |