ECXLBB ;DALOI/KML - DSS BLOOD BANK EXTRACT ;4/16/13 16:03
Source file <ECXLBB.m>
Name | Comments | DBIA/ICR reference |
---|---|---|
BEG | ;entry point from option
|
|
START | ; Entry point from tasked job
; begin package specific extract |
|
AUDRPT | ; entry point for pre-extract audit report
|
|
UNITMODS() | ; Get modification criteria from fields #.06 and #3 from file #66
|
|
MODIFIED() | ; Was unit modified
; Init variables |
|
GETRPRV | ; get requesting provider, requesting provider person class and
; production division code ; input: ECD =INVERTED DATE SUBSCRIPT ; ECARRY(1)=TRANSFUSION DATE AND TIME ; note: Accessioned data in file #68 is stored up to 90 days. |
|
AREA() | ; resolve accession area's ien to use and validate
; Accession number ; Patient LRDFN ; note: if there is only one accession area use '29' |
|
GETDATA | ; gather rest of extract data that will be recorded in an
; entry in file 727.829 |
|
GETDFN(ECXLRDFN) | ;
; INPUT - LRDFN ; OUTPUT - DFN ; Obtains DFN (Patient ID) from LRDFN (Lab Patient ID). ; If no valid DFN exists, 0 is returned. |
|
PAT(ECXDFN) | ;get/set patient data
; INPUT - ECXDFN = patient ien (DFN) ; OUTPUT - ECPAT array: ; ECPAT("SSN") ; ECPAT("NAME") ; returns 0 or 1 in ECXERR - 0=successful ; 1=error condition |
|
FILE(ECODE) | ;
; Input - ECODE = extract record |
|
SETUP | ;Set required input for ECXTRAC.
|
|
LOCAL | ; to extract nightly for local use not to be transmitted to TSI
; should be queued with a 1D frequency |
|
QUE | ; entry point for the background requeuing handled by ECXTAUTO
|
Name | Field # of Occurrence |
---|---|
$$S^%ZTLOAD | START+18 |
IX1^DIK | FILE+23 |
$$RADDIV^ECXDEPT | GETRPRV+29 |
^ECXKILL | BEG+2, LOCAL+2, QUE+1 |
$$CHKMOD^ECXLBB1 | UNITMODS+7, UNITMODS+11 |
AUDRPT^ECXLBB1 | AUDRPT+20 |
QUE^ECXTAUTO | QUE+1 |
^ECXTLOCL | LOCAL+2 |
^ECXTRAC | BEG+2 |
$$ECXDOB^ECXUTL | GETDATA+3 |
$$ECXTIME^ECXUTL | GETDATA+3 |
$$PATCAT^ECXUTL | GETDATA+15 |
$$INP^ECXUTL2 | GETDATA+4 |
ECXDEF^ECXUTL2 | SETUP+2 |
$$PAT^ECXUTL3 | PAT+10 |
$$ENCNUM^ECXUTL4 | GETDATA+9 |
$$OBSPAT^ECXUTL4 | GETDATA+7 |
$$GET^XUA4A72 | GETRPRV+23 |
$$NPI^XUSNPI | GETRPRV+25 |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^ECX( | FILE+15, FILE+22* |
^LAB(65.4 - [#65.4] | AUDRPT+14 |
^LAB(66 - [#66] | AUDRPT+10, UNITMODS+9, UNITMODS+10 |
^LR - [#63] | AUDRPT+2, MODIFIED+7, MODIFIED+9, GETRPRV+9, GETRPRV+10, GETDFN+6, GETDFN+7 |
^LRD(65 - [#65] | MODIFIED+11, MODIFIED+13, MODIFIED+14 |
^LRO(68 - [#68] | GETRPRV+21, GETRPRV+28, AREA+9, AREA+15, AREA+16, AREA+18 |
^TMP("ECXLBB" | GETDATA+22* |
^TMP("ECXLBBC" | GETDATA+25, GETDATA+26* |
Name | Field # of Occurrence |
---|---|
^(0 | MODIFIED+14 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
A | AREA+4~, AREA+5*, AREA+9*, AREA+10 |
ACC | GETRPRV+5~, GETRPRV+13*, GETRPRV+14, AREA+4~, AREA+16*, AREA+19 |
ACCDT | GETRPRV+5~, GETRPRV+14*, GETRPRV+18, GETRPRV+21, GETRPRV+23, GETRPRV+25, GETRPRV+28 |
ACCNODE | GETRPRV+5~, GETRPRV+21*, GETRPRV+22, AREA+4~, AREA+15*, AREA+17 |
AREA | GETRPRV+20*, GETRPRV+21, GETRPRV+28, AREA+4~, AREA+13*, AREA+15, AREA+16, AREA+18, AREA+20 |
BBLIST | AREA+4~ |
BBLIST( | AREA+10*, AREA+13 |
CNT | AREA+4~, AREA+5*, AREA+11*, AREA+12 |
COMPID | MODIFIED+2~, MODIFIED+11*, MODIFIED+15 |
DA | FILE+14~, FILE+23*! |
DATE | AREA+4~, AREA+7*, AREA+15, AREA+16, AREA+18, AREA+19 |
DFN | AREA+4~, AREA+5*, AREA+17*, AREA+19 |
DIK | FILE+14~, FILE+23*! |
DIV | GETRPRV+5~, GETRPRV+28*, GETRPRV+29 |
>> EC0 | AUDRPT+2*, AUDRPT+10, AUDRPT+12, AUDRPT+13, AUDRPT+14, UNITMODS+9, MODIFIED+5, MODIFIED+7, MODIFIED+9 |
>> EC23 | GETDATA+17 |
EC66 | START+3~, AUDRPT+10*, AUDRPT+11, UNITMODS+7, MODIFIED+11 |
EC66A | UNITMODS+1~, UNITMODS+10*, UNITMODS+11 |
EC7 | FILE+14~, FILE+15*, FILE+16, FILE+22, FILE+23 |
ECADMT | START+2~, GETDATA+4*, GETDATA+9 |
ECARRY | START+3~, AUDRPT+19! |
ECARRY(1 | AUDRPT+10*, GETRPRV+6, GETRPRV+14, GETDATA+3, GETDATA+4, GETDATA+9 |
ECARRY(10 | AUDRPT+15*, GETRPRV+24*, GETDATA+20 |
ECARRY(11 | AUDRPT+16*, AUDRPT+17, GETDATA+20 |
ECARRY(12 | AUDRPT+17*, GETDATA+20 |
ECARRY(13 | AUDRPT+15*, GETRPRV+29*, GETDATA+17, GETDATA+20 |
ECARRY(3 | AUDRPT+11*, GETDATA+17 |
ECARRY(4 | AUDRPT+11*, GETDATA+17, GETDATA+25, GETDATA+26 |
ECARRY(5 | AUDRPT+12*, GETDATA+17 |
ECARRY(6 | AUDRPT+13*, GETDATA+17 |
ECARRY(7 | AUDRPT+13*, GETDATA+17 |
ECARRY(8 | AUDRPT+14*, GETDATA+17 |
ECARRY(9 | AUDRPT+15*, GETRPRV+22*, GETRPRV+23, GETRPRV+25, GETRPRV+27*, GETDATA+20 |
ECCOUNT | GETDATA+24~*, GETDATA+25*, GETDATA+26 |
ECD | START+3~, AUDRPT+2*, GETRPRV+9, GETDATA+22 |
>> ECED | AUDRPT+2 |
ECENCTR | START+2~, GETDATA+9*, GETDATA+10, GETDATA+17 |
ECERR | START+3~, AUDRPT+2* |
>> ECFILE | BEG+1, FILE+15, FILE+22, FILE+23, SETUP+2 |
>> ECGRP | SETUP+2 |
>> ECHEAD | GETDATA+9, SETUP+1*, SETUP+2 |
ECINOUT | START+3~, GETDATA+4*, GETDATA+7, GETDATA+9, GETDATA+17 |
>> ECINST | GETDATA+17 |
ECLRDFN | START+2~, AUDRPT+1*, AUDRPT+2*, MODIFIED+5, MODIFIED+7, MODIFIED+9, GETRPRV+9, GETRPRV+10, AREA+19 |
ECODE | FILE~, FILE+16*, FILE+18*, FILE+22 |
>> ECODE1 | FILE+19*, FILE+20*, FILE+21*, FILE+22 |
>> ECPACK | SETUP+2 |
ECPAT | START+2~, PAT+10 |
ECPAT("ERI" | GETDATA+12 |
ECPAT("NAME" | GETDATA+17 |
ECPAT("SSN" | GETDATA+9, GETDATA+17 |
ECPHYNPI | START+2~, AUDRPT+16*, FILE+18 |
>> ECPIECE | SETUP+2 |
>> ECREQNPI | GETRPRV+25*, GETRPRV+26*, FILE+19 |
>> ECRN | FILE+22* |
>> ECRTN | SETUP+2 |
>> ECSD1 | AUDRPT+1 |
ECTODT | START+2~, AUDRPT+1*, AUDRPT+2 |
ECTRFDT | START+3~, GETDATA+3*, GETDATA+17, GETDATA+25, GETDATA+26 |
ECTRFTM | START+3~, GETDATA+3*, GETDATA+17, GETDATA+25, GETDATA+26 |
ECTRSP | START+2~, GETDATA+4*, GETDATA+7, GETDATA+9 |
>> ECVER | SETUP+2 |
ECX | START+3~, GETDATA+4* |
ECXBNOD | GETRPRV+5~, GETRPRV+9*, GETRPRV+10*, GETRPRV+13, AREA+7, AREA+19 |
>> ECXCFLG | GETDATA+25, GETDATA+26 |
>> ECXCRPT | GETDATA+23 |
ECXDFN | START+3~, AUDRPT+2*, GETDATA+4, GETDATA+15, GETDATA+17, GETDATA+22, GETDATA+25, GETDATA+26, PAT~, PAT+10 |
>> ECXERI | GETDATA+12*, GETDATA+20 |
ECXERR | PAT+7~, PAT+9*, PAT+11*, PAT+12 |
ECXESC | START+3~, GETDATA+16*, FILE+21 |
ECXINST | START+3~ |
>> ECXLOGIC | GETDATA+18, GETDATA+19, FILE+17, FILE+20, FILE+21 |
ECXLRDFN | GETDFN~, GETDFN+5*, GETDFN+6, GETDFN+7 |
>> ECXOBS | GETDATA+7*, GETDATA+9 |
ECXPAT | PAT+10! |
ECXPATCAT | START+3~, GETDATA+15*, FILE+20 |
ECXPHY | START+2~, AUDRPT+16*, GETDATA+18 |
ECXPHYPC | START+2~, AUDRPT+16*, GETDATA+18 |
>> ECXRPT | GETDATA+21 |
ECXSTR | GETDATA+2~, GETDATA+17*, GETDATA+18*, GETDATA+20*, GETDATA+21, GETDATA+22, GETDATA+26 |
>> FLAG | AREA+5*, AREA+13, AREA+19* |
MO | UNITMODS+1~ |
MOD | UNITMODS+9*, UNITMODS+10, MODIFIED+2~, MODIFIED+3*, MODIFIED+11*, MODIFIED+13, MODIFIED+17 |
MODARY | UNITMODS+1~ |
MODARY("DEGLYCEROLIZED" | UNITMODS+4* |
MODARY("DIVIDED" | UNITMODS+2* |
MODARY("FROZEN" | UNITMODS+3* |
MODARY("IRRADIATED" | UNITMODS+5* |
MODARY("LEUKO | CYTE POOR" , UNITMODS+3* |
MODARY("POOLED" | UNITMODS+2* |
MODARY("REJUVENATED" | UNITMODS+4* |
MODARY("SEPARATED" | UNITMODS+5* |
MODARY("WASHED" | UNITMODS+2* |
MODNODE | MODIFIED+2~, MODIFIED+14*, MODIFIED+15 |
MODSTR | UNITMODS+1~, UNITMODS+7*, UNITMODS+12*, UNITMODS+13 |
MODTO | MODIFIED+2~, MODIFIED+13*, MODIFIED+14 |
NUM | GETRPRV+5~, GETRPRV+14*, GETRPRV+18, GETRPRV+21, GETRPRV+28, AREA+15, AREA+16, AREA+18 |
OK | PAT+7~, PAT+10*, PAT+11 |
PERCLS | GETRPRV+5~, GETRPRV+23*, GETRPRV+24 |
>> QFLG | START+18* |
STR3 | UNITMODS+1~, UNITMODS+11*, UNITMODS+12 |
TDATE | AREA+4~, AREA+18*, AREA+19 |
U | UNITMODS+7, UNITMODS+11, MODIFIED+5, MODIFIED+7, MODIFIED+9, MODIFIED+11, MODIFIED+14, MODIFIED+15, GETRPRV+13, GETRPRV+22 , GETRPRV+24, GETRPRV+26, GETRPRV+28, AREA+7, AREA+17, AREA+18, AREA+19, GETDATA+4, GETDATA+18, GETDATA+20 , FILE+18, FILE+19, FILE+21 |
UNIT | MODIFIED+2~, MODIFIED+3*, MODIFIED+9* |
X | PAT+7~ |
XMATCH | MODIFIED+2~, MODIFIED+3*, MODIFIED+7*, MODIFIED+9, MODIFIED+11, MODIFIED+13, MODIFIED+14 |
>> ZTQUEUED | START+18 |