VBECDCX ;hoifo/gjc-data conversion & pre-implementation data extract;Nov 21, 2002
Source file <VBECDCX.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 |
|---|---|---|
| PAT(DFN,LRDFN) | ; build the primary patient identifier string.
; convert specific patient attributes from VistA to SQL tables. ; Values to covert and maximum string lengths: ; LRDFN=ien of the patient record in the Lab Data (#63) file (12) ; DFN=ien of the patient in the Patient (#2) file (12) ; LRNAM=LRNAM("FAMILY")^LRNAM("GIVEN")^LRNAM("MIDDLE")^LRNAM("SUFFIX") ; LRNAM(patient name) subcomponents above concatenated (30) ; LRSEX(sex)='M' or 'F', (1) ; LRDOB(date of birth)='mm/dd/yy<sp>time' time optional, (18) ; LRSSN(ssn)='123456789' (9) ; LRICN(ICN)='100072010000' (12) ; $P(LRBO,U) (blood type)='AB' (2) ; $P(LRBLD,U,2) (RH type)='N' or 'P' (1) |
|
| ANTI(DFN,LRDFN,LRCHAR) | ; extract 'RBC ANTIGENS PRESENT/ABSENT' or 'ANTIBODIES
; IDENTIFIED' data from the legacy Blood Bank application. Notice the ; practice of swapping out the VistA ien for the antibodies equivalent ; SQL GUID. ; Input: DFN=patient DFN ; LRDFN=lab patient ien in the Lab Data (#63) file ; LRCHAR=char, 'AP' for antigens present, 'AI' for antigens ; identified and 'AA' for antibodies absent |
|
| TCTRC(DFN,LRDFN,LRD1) | ; save off the transfusion or transfusion
; reaction comments. called from both TRANS & TRANSR ; from TRANS ; Input: DFN=patient DFN ; LRDFN=lab patient ien in the Lab Data (#63) file ; LRD1=second level subscript; equivalent to FileMan's D1 |
|
| TRD(DFN,LRDFN) | ; Extract transfusion reaction date data; date/time, reaction
; type, person entering reaction ; Input: DFN=patient DFN ; LRDFN=lab patient ien in the Lab Data (#63) file |
|
| TRTOT | ;
|
|
| KILL | ; kill variables
|
| Name | Field # of Occurrence |
|---|---|
| $$NEWERR^%ZTER | PAT+19 |
| ^VBECDC02 | PAT+31 |
| LOGEXC^VBECDC02 | PAT+32 |
| $$BLUT^VBECDCU | PAT+42 |
| $$CNT^VBECDCU | PAT+23, PAT+60, ANTI+15, TCTRC+13, TRD+11, TRD+18 |
| $$DATE^VBECDCU | TRD+9, TRD+23 |
| $$ICN^VBECDCU | PAT+40 |
| $$SWAP^VBECDCU | ANTI+13, ANTI+14, TRD+7, TRD+22 |
| $$STRIP^VBECDCX1 | PAT+37, PAT+38, ANTI+13, ANTI+14, TCTRC+10 |
| ANTIAB^VBECDCX1 | ANTI+22 |
| BBC^VBECDCX1 | PAT+63 |
| TRCMNT^VBECDCX1 | TCTRC+15 |
| TRDTAB^VBECDCX1 | TRD+13, TRD+25 |
| NAMECOMP^XLFNAME | PAT+27 |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^%ZOSF("TRAP" | PAT+20 |
| ^DPT - [#2] | PAT+26 |
| ^LR - [#63] | ANTI+11, ANTI+12, TCTRC+8, TCTRC+10, TRD+5, TRD+6 |
| ^LRD(65 - [#65] | TRD+20, TRD+21, TRD+23 |
| ^TMP( | ANTI+16*, TCTRC+14* |
| ^TMP("VBEC FINIS" | PAT+24*, PAT+45*, PAT+46*, PAT+47*, PAT+48*, PAT+49*, PAT+50*, PAT+51*, PAT+52*, PAT+53* , PAT+54*, PAT+55*, PAT+56*, PAT+58*, PAT+64*, ANTI+28*, TCTRC+9*, TRTOT+1* |
| ^TMP("VBEC63 PAT" | PAT+61* |
| ^TMP("VBEC63 TRD" | TRD+12*, TRD+24* |
| ^TMP($J | TRD+19 |
| Name | Line Occurrences |
|---|---|
| ANTI | PAT+62 |
| KILL | PAT+65 |
| TCTRC | TRD+14 |
| TRD | PAT+63 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| CNT | PAT+60*, PAT+61, ANTI+15*, ANTI+16*, ANTI+30!, TCTRC+13*, TCTRC+14*, TRD+11*, TRD+12*, TRD+18* , TRD+24*, KILL+1! |
| DFN | PAT~, PAT+26, PAT+31, PAT+40, PAT+46, PAT+62, PAT+63, ANTI~, ANTI+13, ANTI+14 , TCTRC~, TCTRC+12, TRD~, TRD+9, TRD+14, TRD+19, TRD+24 |
| DPT | KILL+1! |
| DPT(0 | PAT+26*, PAT+27, PAT+35, PAT+37 |
| DPTNAME | PAT+26*, PAT+27, PAT+38*, PAT+40, KILL+1! |
| DPTNAME("FAMILY" | PAT+29, PAT+30, PAT+38, PAT+47 |
| DPTNAME("GIVEN" | PAT+38, PAT+48 |
| DPTNAME("MIDDLE" | PAT+38, PAT+49 |
| DPTNAME("SUFFIX" | PAT+38, PAT+50 |
| DT | TRD+23 |
| I | PAT+58*, PAT+60!, ANTI+28*, ANTI+30!, TRTOT+1* |
| LRARY | PAT+31!, PAT+32! |
| LRARY( | PAT+31* |
| LRBLD | PAT+42*, PAT+43, PAT+55, PAT+56, KILL+1! |
| LRCHAR | ANTI~, ANTI+8, ANTI+9, ANTI+13, ANTI+14 |
| LRD | ANTI+12*, ANTI+13, ANTI+14, ANTI+30!, TRD+6*, TRD+7, TRD+9, TRD+25*, TRTOT+2! |
| LRD1 | ANTI+8*, ANTI+11*, ANTI+12, ANTI+13, ANTI+14, ANTI+30!, TCTRC~, TCTRC+8, TCTRC+10, TCTRC+11 , TCTRC+12, TRD+5*, TRD+6, TRD+8, TRD+9, TRD+14, TRTOT+2! |
| LRD2 | TCTRC+6*, TCTRC+8*, TCTRC+10, TCTRC+12, TCTRC+17! |
| LRDATE | KILL+1! |
| LRDFN | PAT~, PAT+40, PAT+42, PAT+45, PAT+62, PAT+63, ANTI~, ANTI+11, ANTI+12, ANTI+13 , ANTI+14, TCTRC~, TCTRC+8, TCTRC+10, TCTRC+12, TRD~, TRD+5, TRD+6, TRD+9, TRD+14 , TRD+24 |
| >> LRDOB | PAT+35*, PAT+40, PAT+52 |
| LRICN | PAT+40*, PAT+54, KILL+1! |
| LRMTH | KILL+1! |
| LRN | ANTI+8*, ANTI+10, ANTI+11, ANTI+12, ANTI+13, ANTI+14, ANTI+17, ANTI+30! |
| LRPCE | ANTI+10*, ANTI+17*, ANTI+28, ANTI+30! |
| LRS | ANTI+9*, ANTI+15, ANTI+16, ANTI+30! |
| LRSEX | PAT+27*, PAT+40, PAT+51, KILL+1! |
| LRSSN | PAT+37*, PAT+40, PAT+53, KILL+1! |
| LRSTR | PAT+26*, PAT+40*, PAT+43*, PAT+61, ANTI+13*, ANTI+14*, ANTI+16, ANTI+30!, TCTRC+12*, TCTRC+14 , TCTRC+17!, TRD+9*, TRD+12, TRTOT+2!, KILL+1! |
| LRSUB | TCTRC+6*, TCTRC+13, TCTRC+14, TCTRC+17! |
| LRTRCMT | TCTRC+10*, TCTRC+12, TCTRC+17! |
| U | PAT+26*, PAT+27, PAT+35, PAT+37, PAT+38, PAT+40, PAT+43, PAT+45, PAT+46, PAT+47 , PAT+48, PAT+49, PAT+50, PAT+51, PAT+52, PAT+53, PAT+54, PAT+55, PAT+56, PAT+58 , PAT+64, ANTI+13, ANTI+14, ANTI+28, TCTRC+9, TCTRC+10, TCTRC+12, TRD+7, TRD+9, TRTOT+1 |
| >> VBECIEN | PAT+32 |
| >> VBECMRG | PAT+30*, PAT+31 |
| >> VBECRTOT | PAT+23*, PAT+24, PAT+45, PAT+46, PAT+47, PAT+48, PAT+49, PAT+50, PAT+51, PAT+52 , PAT+53, PAT+54, PAT+55, PAT+56, PAT+58, PAT+64, ANTI+28, TCTRC+9, TRTOT+1 |
| >> VBECTRDD | TRD+23*, TRD+24 |
| >> VBTRA | TRD+19*, TRD+20, TRD+21, TRD+23 |
| >> VBTRD | TRD+7*, TRD+9, TRD+21*, TRD+22*, TRD+24 |
| X | PAT+20*, PAT+24!* |
| Z | TCTRC+6*, TCTRC+9*, TCTRC+17! |
| Name | Field # of Occurrence |
|---|---|
| $T(ERRMSG+3^VBECDC02 | PAT+31 |