ABSPOSE1 ; IHS/SD/lwj - E1 gereration routine ; [ 10/24/2005 10:09:07 AM ]
Source file <ABSPOSE1.m>
Package | Total | Call Graph |
---|---|---|
VA Fileman | 5 | ^DIC (,WP)^DIE ^DIK $$GET1^DIQ ^DIR |
Pharmacy Point of Sale | 3 | ($$ANFF,$$DTF1,$$NFF)^ABSPECFM SEND^ABSPOSAE LOG^ABSPOSL2 |
Package | Total | Caller Graph |
---|---|---|
Pharmacy Point of Sale | 3 | ABSP5E1 ABSPDE1 ABSPOSE2 |
Name | Comments | DBIA/ICR reference |
---|---|---|
GETPHARM() | ;when more than one pharmacy is set up for this site, prompt
; for which one to use for the E1 transmission (need to know which ; NCPDP & terminal ID to use) |
|
PATIENT | ; This subroutine is responsible for creating the patient segment, and
; for updating the ^ABSPE record with this information. |
|
INSURER | ; this subroutine will pull together the information
; needed for the E1 insurance segment |
|
PROCESS | ;
|
|
CRTE1 | ; This subroutine will:
; * facilitate the creation of the needed E1 header, patient ; and insurance segments (transmission record is TDATA) ; * update ^ABSPE with the patient/insurance trans data ; * create raw transmission record for ^ABSPE |
|
DISPLAY(E1IEN) | ;EP - display the E1's results
|
|
RAWTRANS | ; create the raw transmission entry in ^ABSPE
|
|
HEADER | ; This subroutine is responsible for creating the E1 header segment
; for the Medicare Part D transmission. If other E1's are ever produced ; this will need to be altered to pull the plan from some other source. ; Because of the tight time line for the Medicare Part D E1, we forced ; the plan to only work for that plan (006015). The header segment is ; fixed length, will all elements required. |
|
PRMPT(E1IEN) | ; The patient has previously had an E1 sent - if the last response
; was accepted, let's display the previous response and prompt if ; the wants to send another E1 at this time |
|
PARSEIT(INSFLD,COVER) | ; The 504 and 526 fields may actually have
; detailed insurance information in them - we need to break ; them down for reporting purposes. |
|
GETPAT() | ;Prompt the user for which patient they would like to generate an E1 for
|
|
MAIN | ;EP
|
|
GETABSPE() | ; if an E1 was previously sent for this patient, find it
; and prompt if the user wishes to send again. If one doesn't ; exist, we'll ask fileman to create it for us now. |
Name | Field # of Occurrence |
---|---|
$$ANFF^ABSPECFM | HEADER+28, HEADER+36, PATIENT+36, PATIENT+41, PATIENT+65, INSURER+19 |
$$DTF1^ABSPECFM | HEADER+33, PATIENT+18 |
$$NFF^ABSPECFM | PATIENT+25 |
SEND^ABSPOSAE | PROCESS+21 |
LOG^ABSPOSL2 | RAWTRANS+6 |
^DIC | GETPAT+15, GETPHARM+18, GETABSPE+11, GETABSPE+32 |
^DIE | CRTE1+22 |
WP^DIE | RAWTRANS+5 |
^DIK | GETABSPE+22 |
$$GET1^DIQ | PRMPT+7, PRMPT+11, PATIENT+32, INSURER+13, INSURER+15, DISPLAY+6, DISPLAY+7, DISPLAY+8, DISPLAY+9, DISPLAY+10 , DISPLAY+11 |
^DIR | PRMPT+22 |
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
FileNo | Call Tags |
---|---|
^DPT - [#2] | GET1^DIQ |
^AUPNMCR - [#9000003] | GET1^DIQ |
^ABSPE - [#9002313.7] | Classic Fileman Calls, GET1^DIQ, WP^DIE |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^ABSP(9002313.56 - [#9002313.56] | GETPHARM+8, GETPHARM+15, HEADER+13 |
^DPT - [#2] | PATIENT+11, PATIENT+12 |
Name | Line Occurrences |
---|---|
$$GETABSPE | PROCESS+15 |
$$GETPAT | PROCESS+5 |
$$GETPHARM | PROCESS+11 |
$$PRMPT | GETABSPE+15 |
CRTE1 | PROCESS+19 |
DISPLAY | PRMPT+17 |
HEADER | CRTE1+15 |
INSURER | CRTE1+17 |
PARSEIT | DISPLAY+13 |
PATIENT | CRTE1+16 |
PROCESS | MAIN+4 |
RAWTRANS | CRTE1+25 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
ABSP03 | DISPLAY+3~, DISPLAY+7*, DISPLAY+15 |
ABSP112 | DISPLAY+2~, DISPLAY+4*, DISPLAY+8*, DISPLAY+17 |
ABSP301 | INSURER+7~ |
ABSP302 | INSURER+7~, INSURER+13*, INSURER+14, INSURER+15*, INSURER+16*, INSURER+18*, INSURER+19*, INSURER+20, INSURER+22 |
ABSP304 | PATIENT+6~, PATIENT+18*, PATIENT+19, PATIENT+20 |
ABSP305 | PATIENT+6~, PATIENT+23*, PATIENT+24*, PATIENT+25*, PATIENT+26, PATIENT+27 |
ABSP310 | PATIENT+6~, PATIENT+36*, PATIENT+37, PATIENT+38 |
ABSP311 | PATIENT+6~, PATIENT+41*, PATIENT+42, PATIENT+43 |
ABSP323 | PATIENT+6~ |
ABSP324 | PATIENT+6~ |
ABSP325 | PATIENT+7~, PATIENT+65*, PATIENT+66, PATIENT+67 |
ABSP326 | PATIENT+7~ |
ABSP332 | PATIENT+6~ |
ABSP503 | DISPLAY+3~, DISPLAY+4*, DISPLAY+9*, DISPLAY+18 |
ABSP504 | DISPLAY+2~, DISPLAY+4*, DISPLAY+10*, DISPLAY+12, DISPLAY+26, DISPLAY+28, DISPLAY+29, DISPLAY+32 |
ABSP526 | DISPLAY+2~, DISPLAY+11*, DISPLAY+12, DISPLAY+37, DISPLAY+39, DISPLAY+40, DISPLAY+43 |
>> ABSP536 | DISPLAY+4* |
ABSPCID | INSURER+7~ |
ABSPCUT | DISPLAY+3~, DISPLAY+31*, DISPLAY+42* |
ABSPDUZ2 | GETPAT+2~, GETPAT+8*, GETPAT+20 |
ABSPINS | DISPLAY+2~, DISPLAY+12*, DISPLAY+13 |
ABSPNAM | PATIENT+7~, PATIENT+32*, PATIENT+33*, PATIENT+36, PATIENT+41 |
ABSPPNAM | DISPLAY+2~, DISPLAY+4*, DISPLAY+6*, DISPLAY+16 |
ABSPSTR | DISPLAY+3~, DISPLAY+27*, DISPLAY+32, DISPLAY+33*, DISPLAY+38*, DISPLAY+43, DISPLAY+44* |
COVER | DISPLAY+2~, DISPLAY+13, PARSEIT~ |
COVER( | DISPLAY+49, DISPLAY+50, DISPLAY+51, DISPLAY+52, DISPLAY+53, DISPLAY+54, DISPLAY+55, PARSEIT+13*, PARSEIT+14*, PARSEIT+15* , PARSEIT+16*, PARSEIT+17*, PARSEIT+18*, PARSEIT+19*, PARSEIT+21*, PARSEIT+22*, PARSEIT+23*, PARSEIT+24*, PARSEIT+25*, PARSEIT+26* , PARSEIT+27* |
COVER("COUNT" | DISPLAY+20, DISPLAY+48, PARSEIT+30* |
CRTNWE1 | GETABSPE+4~, GETABSPE+8*, GETABSPE+14*, GETABSPE+24*, GETABSPE+27 |
DA | GETABSPE+19~, GETABSPE+21*, GETABSPE+23!, CRTE1+8~, CRTE1+12* |
DIC | GETPAT+2~, GETPAT+12*, GETPAT+19!, GETPHARM+4~, GETPHARM+14*, GETABSPE+4~, GETABSPE+5*, GETABSPE+12!, GETABSPE+28* |
DIC("A" | GETPAT+13*, GETPHARM+16* |
DIC("B" | GETPHARM+15* |
DIC(0 | GETPAT+12*, GETPHARM+14*, GETABSPE+5*, GETABSPE+31* |
DIE | CRTE1+8~, CRTE1+12* |
DIK | GETABSPE+19~, GETABSPE+20*, GETABSPE+23! |
DIR | PRMPT+4~ |
DIR("A" | PRMPT+19* |
DIR("B" | PRMPT+20* |
DIR(0 | PRMPT+21* |
DLAYGO | GETABSPE+4~, GETABSPE+31* |
DR | CRTE1+8~, PATIENT+20*, PATIENT+27*, PATIENT+38*, PATIENT+43*, PATIENT+67*, INSURER+22* |
DT | HEADER+33 |
>> DTOUT | GETPAT+18, GETPHARM+20 |
>> DUOUT | GETPAT+18, GETPHARM+20 |
DUZ(2 | GETPAT+8*, GETPAT+20* |
E1IEN | PROCESS+1~, PROCESS+15*, PROCESS+16, PROCESS+21, GETABSPE+4~, GETABSPE+13*, GETABSPE+14, GETABSPE+15, GETABSPE+21, PRMPT~ , PRMPT+7, PRMPT+11, PRMPT+17, CRTE1+12, RAWTRANS+5, DISPLAY~, DISPLAY+6, DISPLAY+7, DISPLAY+8, DISPLAY+9 , DISPLAY+10, DISPLAY+11 |
E1PHARM | PROCESS+1~, PROCESS+11*, PROCESS+12, HEADER+13 |
E1PIEN | PROCESS+1~, PROCESS+7*, GETABSPE+7, GETABSPE+30, PATIENT+11, PATIENT+12, PATIENT+32, INSURER+13, INSURER+15 |
E1PINFO | PROCESS+1~, PROCESS+5*, PROCESS+6, PROCESS+7, PROCESS+8 |
E1PNAM | PROCESS+1~, PROCESS+8* |
FS | CRTE1+7~, CRTE1+13*, HEADER+41, PATIENT+15, PATIENT+19, PATIENT+26, PATIENT+37, PATIENT+42, PATIENT+66, INSURER+9 |
HLDPHARM | GETPHARM+4~, GETPHARM+10*, GETPHARM+11, GETPHARM+15 |
I | RAWTRANS+2~, RAWTRANS+4* |
INSCNT | DISPLAY+48*, DISPLAY+49, DISPLAY+50, DISPLAY+51, DISPLAY+52, DISPLAY+53, DISPLAY+54, DISPLAY+55, PARSEIT+4~, PARSEIT+5* , PARSEIT+9, PARSEIT+12, PARSEIT+13, PARSEIT+14, PARSEIT+15, PARSEIT+16, PARSEIT+17, PARSEIT+18, PARSEIT+19, PARSEIT+20 , PARSEIT+21, PARSEIT+22, PARSEIT+23, PARSEIT+24, PARSEIT+25, PARSEIT+26, PARSEIT+27, PARSEIT+28*, PARSEIT+30 |
INSFLD | PARSEIT~, PARSEIT+9 |
>> INSREC | PARSEIT+9*, PARSEIT+10, PARSEIT+13, PARSEIT+14, PARSEIT+15, PARSEIT+16, PARSEIT+17, PARSEIT+18, PARSEIT+19, PARSEIT+21 , PARSEIT+22, PARSEIT+23, PARSEIT+24, PARSEIT+25, PARSEIT+26, PARSEIT+27 |
LINECNT | DISPLAY+23~, DISPLAY+24*, DISPLAY+29*, DISPLAY+30*, DISPLAY+31, DISPLAY+35*, DISPLAY+40*, DISPLAY+41*, DISPLAY+42 |
NEWE1 | GETABSPE+4~, GETABSPE+8*, GETABSPE+15*, GETABSPE+18 |
NOMORE | PARSEIT+4~, PARSEIT+6*, PARSEIT+8, PARSEIT+10*, PARSEIT+11 |
PATDONE | GETPAT+2~, GETPAT+6*, GETPAT+14, GETPAT+18* |
PDONE | GETPHARM+4~, GETPHARM+6*, GETPHARM+17, GETPHARM+20* |
PHARM | GETPHARM+4~, GETPHARM+6*, GETPHARM+8*, GETPHARM+10 |
PHMCNT | GETPHARM+4~, GETPHARM+6*, GETPHARM+9*, GETPHARM+10, GETPHARM+11 |
POP | MAIN+1~, MAIN+2*, MAIN+4, PROCESS+3*, PROCESS+22* |
RESULT | PRMPT+4~, PRMPT+7*, PRMPT+8 |
SS | CRTE1+7~, CRTE1+13*, HEADER+41, PATIENT+66 |
STATUS | PRMPT+4~, PRMPT+11*, PRMPT+12 |
STCODE | PATIENT+9~ |
>> TDATA | PROCESS+21, CRTE1+11*, HEADER+17*, HEADER+22*, HEADER+25*, HEADER+28*, HEADER+33*, HEADER+36*, HEADER+41*, PATIENT+15* , PATIENT+19*, PATIENT+26*, PATIENT+37*, PATIENT+42*, PATIENT+66*, INSURER+9*, INSURER+20*, RAWTRANS+4 |
U | PROCESS+7, PROCESS+8, GETPHARM+15, HEADER+22, HEADER+28, PATIENT+18, PATIENT+23, PATIENT+33, PATIENT+65 |
WP | RAWTRANS+2~ |
WP( | RAWTRANS+4* |
X | GETPAT+3~, GETPAT+4*, GETPAT+18, GETABSPE+4~, GETABSPE+7*, GETABSPE+30* |
XDATA | HEADER+11~, HEADER+13*, HEADER+22, HEADER+28, PATIENT+7~, PATIENT+11*, PATIENT+18, PATIENT+23, PATIENT+33 |
XDATA11 | PATIENT+7~, PATIENT+12*, PATIENT+65 |
Y | GETPAT+2~, GETPAT+7*, GETPAT+18, GETPAT+22, GETPHARM+4~, GETPHARM+6*, GETPHARM+20, GETPHARM+22, GETABSPE+4~, GETABSPE+13 , GETABSPE+34, PRMPT+24 |
ZERR | RAWTRANS+2~, RAWTRANS+6 |