BMXADOF ; IHS/CIHA/GIS - RPC CALL FOR EXTENDED FUNCTIONALITY OF BMXNet UTILITIES ; 04 Jun 2010 3:14 PM
Source file <BMXADOF.m>
| Package | Total | Call Graph | 
|---|---|---|
| VA Fileman | 5 | FILE^DICN (,CHK)^DIE ^DIK ($$CREF,$$IENS)^DILF $$ROOT^DILFD | 
| M Transfer | 2 | $$VVAR^BMXADOF2 $$SPEC^BMXADOFS | 
| IHS VA Utilities | 1 | ^XBFMK | 
| Package | Total | Caller Graph | 
|---|---|---|
| M Transfer | 3 | BMXADOF1 BMXADOFD BMXADOFS | 
| Computerized Public Health Activity Data | 1 | BNIGE | 
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| ADD(DIC) | ; ADD A NEW ENTRY TO A FILE | |
| DIE | ||
| DINUM | ||
| WP(FILE,FLD) | ; RETURN THE SUBFILE NUMBER IF IT IS A WORD PROCESSING FIELD | |
| ADDREC | ||
| EDITREC | ||
| WORD(FILE,DA,FLD,CREF,VAL) | ; SUFF TEXT ENTRY INTO THE WP MULTIPLE FIELD | |
| FILED(OUT,FILE,DAS,DATA) | ; RPC CALL: UNIVERSAL FILEMAN RECORD UPDATER UTILITY ; D DEBUG^%Serenji("FILED^BMXADOF(.OUT,FILE,DAS,DATA)") ; DEBUGGER ENTRY POINT | |
| FILE(OUT,FILE,DAS,DATA) | ;EP - RPC CALL: UNIVERSAL FILEMAN RECORD UPDATER UTILITY ; ; OUT = OUTBOUND MESSAGE RETURNED TO CALLINING APP. 'OK'=SUCCESSFUL TRANSACTION, 'OK|5' NEW RECORD DAS=5 ADDED ; IF TRANSACTION FAILS, AN ERROR MESSAGE IS PASSED ; FILE = VALID FILEMAN FILE OR SUB-FILE NUMBER - WHERE UPDATE IS TO OCCUR ; DAS = THE DA STRING - TYPICALLY THE FILE INTERNAL ENTRY NUMBER OF THE RECORD TO BE UPDATED ; IF THIS IS A SUB-FILE, DAS MUST BE PRECEDED BY PARENT DAS(S) IN COMMA SEPARATED STRING - TOP TO BOTTOM ORDER ; DAS MAY BE PRECEDED BY '+' = ALL FIELDS ARE MANDATORY (REQD FOR TRANSACTION) OR '-' = DELETE THIS ENTRY ; IF DAS STRING = NULL OR = '+', THIS MEANS ADD A NEW RECORD WITH DATA SUPPLIED IN DATA PARAMETER ; EXAMPLES OF DAS STRINGS: '1' (EDIT RECORD #1), '5,2,-7' (DELETE RECORD #7 IN 3RD LEVEL SUBFILE) ; DATA = DATA STRING OR ARRAY REFERENCE. DATA CAN BE PASSED USING THE .PARAM SYNTAX ; DATA STRING FORMAT: FIELD#|VALUE_$C(30)_FIELD#|VALUE_$C(30)_...FIELD#|VALUE_$C(30) ; $C(30) [AKA EOR] IS THE DATA ELEMENT SEPARATOR ; $C(30) IS USED AS THE DATA DELIMITER BECAUSE OTHER CHARACTERS LIKE '^' COULD APPEAR IN THE VALUE PIECE! ; EA FIELD# MAY BE PRECEED BY '+' = MANDATORY (REQD FOR TRANSACTION) OR '-' = DELETE THE VALUE OF THIS FIELD ; EXAMPLE: ".03|1/5/46"_EOR_"-.02|"_EOR_"+.09|139394444"_EOR NOTE -.02| IS SAME AS .02|@ OR .02| ; '+' IN FRONT OF THE DAS IS THE SAME AS PUTTING A '+' IN FRONT OF EVERY FIELD# IN THE DATA STRING ; | |
| DIK(DIK,DA) | ; DELETE A RECORD ; PATCHED BY GIS 9/28/04 TO FIX PROBLEMS WITH SUBFILE DELETION | |
| DIK1 | ||
| E1 | ||
| MERR | ; MUMPS ERROR TRAP | |
| DELREC | ||
| CHK | ||
| ADIC | ;D ^DIC | |
| EX | ||
| AX | ||
| AFAIL | ||
| POINT(FILE,FNO,VAL) | ; ADD ACCENT GRAV IF NECESSARY | |
| EDIT(DIE,DA) | ; EDIT AN EXISTING RECORD | |
| FILEX(OUT,FILE,DAS,DATA) | ; EP - RPC CALL: INSURES THAT BMXIEN IS VALID - MOJO ONLY | |
| REF(FILE,DAS) | ; GIVEN A FILE/SUBFILE NUMBER & DAS ARRAY, RETURN THE FM GLOBAL REFERENCE INFO: OREF|CREF|IENS | |
| SPEC | 
| Name | Line Occurrences | 
|---|---|
| Function Call: WRITE | 
 | 
| Routine Call | 
 | 
| Routine Call | 
 | 
| RPC Name | Call Tags | 
|---|---|
| BMX UPDATE | FILE | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^%ZOSF("TRAP" | FILE+24 | 
| ^AUPNVSIT - [#9000010] | EDIT+13 | 
| ^DD( | FILE+25, FILE+28, SPEC+10, DINUM, ADD+8, ADD+9, ADD+10, POINT+2, WP+2, WP+3 , WORD+2 | 
| Name | Line Occurrences | 
|---|---|
| $$POINT | EDIT+8 | 
| $$REF | FILE+40 | 
| $$WP | EDIT+6 | 
| ADD | ADDREC | 
| AFAIL | ADD+6 | 
| AX | AFAIL | 
| DIK | FILE+47, DELREC, E1+11, DIE+2 | 
| DIK1 | DIK+2 | 
| E1 | EDIT+13, EDIT+14 | 
| EDIT | EDITREC, AFAIL+1 | 
| EX | E1+11, DIE | 
| FILE | BMXADOF+8, FILEX+7 | 
| WORD | EDIT+7 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| % | FILEX+2*, FILEX+3*, FILE+20~, FILE+28*, FILE+34*, FILE+35, FILE+39*, FILE+40*, FILE+41, FILE+50* , FILE+51*, FILE+53*, FILE+54, FILE+55, FILE+56, SPEC+2*, SPEC+3*, SPEC+4*, DINUM+1*, DINUM+2* , DINUM+3, DINUM+5, ADD+1~, ADD+7*, EDIT+13*, E1+12* | 
| A | WORD+1~, WORD+6*, WORD+7 | 
| APCDALVR | EDIT+1~, EDIT+2* | 
| APCDOVRR | FILE+21~* | 
| AUPNDOB | FILE+21~ | 
| AUPNDOD | FILE+21~ | 
| AUPNPAT | FILE+21~ | 
| AUPNTALK | FILE+21~* | 
| AUPNVSIT | FILE+21~ | 
| B | WORD+1~ | 
| B( | WORD+7*, WORD+11 | 
| B(1 | WORD+9 | 
| CNT | FILE+20~, FILE+28*, FILE+29, SPEC+2*, SPEC+4, SPEC+5* | 
| CREF | FILE+20~, FILE+41*, FILE+43, DINUM+3, EDIT+7, DIE, REF+1~, REF+4*, REF+5, WORD~ , WORD+3, WORD+10, WORD+11 | 
| DA | FILE+20~, DIK~, DIK+3~, DIK+6*, ADD+1~, EDIT~, EDIT+3, EDIT+7, E1+11, DIE , DIE+2, WORD~, WORD+3, WORD+10, WORD+11 | 
| DA( | ADD+7*, E1+12* | 
| DAS | BMXADOF+8~*, FILED~, FILEX~, FILEX+6*, FILEX+7, FILE~, FILE+26*, FILE+27, FILE+30*, FILE+31* , FILE+32, FILE+33*, FILE+34*, FILE+37, FILE+38*, FILE+39*, FILE+40, FILE+43, FILE+44, FILE+45 , FILE+46, FILE+47, FILE+48, DELREC, DINUM+5*, EDITREC, DIK+5, DIK+6, REF~, REF+2 | 
| DAS( | FILE+35*, DIK+7, ADD+7, E1+12 | 
| DAS(0 | ADD+6 | 
| DAS(1 | DIK+2 | 
| DATA | BMXADOF+8~*, FILED~, FILEX~, FILEX+1, FILEX+2*, FILEX+3*, FILEX+5, FILEX+6, FILEX+7, FILE~ , FILE+44, FILE+45, FILE+49, FILE+50*, FILE+51*, FILE+53, FILE+55*, FILE+56*, FILE+57*, FILE+59 , SPEC*, SPEC+1, SPEC+2 | 
| DATA( | FILEX+3, FILE+51, SPEC+2*, SPEC+4*, SPEC+5 | 
| DATA(1 | SPEC+3 | 
| DD | ADIC+1! | 
| DFLG | FILE+20~, SPEC+6*, SPEC+8*, SPEC+11, SPEC+12*, SPEC+13 | 
| DIC | FILE+20~, ADD~, ADD+11, AFAIL+1 | 
| DIC("P" | ADD+10*, ADD+12 | 
| DIC(0 | ADD+5* | 
| DIE | FILE+20~, EDIT~, E1+11, DIE+2 | 
| DIERR | EDIT+1~ | 
| DIK | DIK~, DIK+3~, DIK+8* | 
| DISYS | EDIT+1~ | 
| DN | ADD+1~, ADD+11*, ADD+12 | 
| DNODE | ADD+1~ | 
| DO | ADIC+1! | 
| DR | FILE+20~, EDIT+1~, EDIT+2*, E1+7*, E1+8*, E1+9* | 
| DT | WORD+10 | 
| DTYPE | WP+1~, WP+3*, WP+4 | 
| DUZ | FILE+19 | 
| ERR | ADD+1~, ADD+6, ADD+8*, ADD+9*, ADD+10*, EDIT+1~, EDIT+9!, CHK, MERR+1~, MERR+3* , MERR+4 | 
| ERR("DIERR" | E1+1 | 
| FILE | BMXADOF+8~*, FILED~, FILEX~, FILEX+7, FILE~, FILE+21, FILE+25, FILE+28, FILE+40, FILE+44 , SPEC, SPEC+10, DINUM, DIK+4, DIK+8, ADD+8, ADD+9, EDIT+6, EDIT+7, EDIT+8 , EDIT+12, EDIT+13, EDIT+14, CHK, REF~, REF+3, POINT~, POINT+2, WP~, WP+2 , WORD~, WORD+2 | 
| FLD | FILE+20~, FILE+23*, SPEC+7*, SPEC+14*, DIE+2, WP~, WP+2, WORD~, WORD+2 | 
| FLD( | SPEC+13*, SPEC+16, SPEC+17, DELREC+1, DINUM+1, DINUM+4!, ADD+2, EDIT+4 | 
| FLD(0 | AFAIL+1 | 
| FNO | FILE+20~, SPEC+9*, SPEC+10, SPEC+11, SPEC+13, SPEC+14, EDIT+1~, EDIT+2*, EDIT+4*, EDIT+5 , EDIT+6, EDIT+7, EDIT+8, EDIT+10, EDIT+11, EDIT+12, EDIT+13, EDIT+14, CHK, E1+3 , E1+4, E1+6, E1+8, E1+9, POINT~, POINT+2 | 
| GDFLG | FILE+20~, FILE+23*, FILE+30*, FILE+39*, FILE+45*, FILE+46, FILE+47, SPEC+17 | 
| GTFLG | FILE+20~, FILE+23*, FILE+31*, E1+3 | 
| I | FILE+20~, FILE+32*, FILE+33, FILE+34, FILE+35, DIK+3~, DIK+5*, DIK+7*, REF+1~, WORD+1~ , WORD+11* | 
| IENS | FILE+20~, FILE+41*, DIK+3~, DIK+5*, DIK+7*, DIK+8, REF+1~, REF+2*, REF+3, REF+5 | 
| LVLS | FILE+20~, FILE+27*, FILE+29, FILE+32, FILE+33, FILE+35 | 
| MSG | EDIT+1~, E1+1*, E1+3, E1+4 | 
| OREF | FILE+20~, FILE+41*, FILE+47, DELREC, ADDREC, EDITREC, REF+1~, REF+3*, REF+4, REF+5 | 
| OUT | BMXADOF+8~, FILED~, FILEX~, FILEX+7, FILE~, FILE+23*, FILE+25*, FILE+29*, FILE+32*, FILE+37* , FILE+42*, FILE+43*, FILE+46*, FILE+47*, FILE+49*, FILE+59*, SPEC+1*, SPEC+3*, SPEC+10*, SPEC+11* , SPEC+16*, DELREC*, DELREC+1*, ADD+2*, AFAIL*, AFAIL+2*, EDIT+3*, E1+2*, E1+3*, E1+4* , E1+11*, DIE*, DIE+1*, MERR+4* | 
| RESULT | EDIT+1~, EDIT+9!, EDIT+10*, EDIT+13*, EDIT+14*, CHK, E1, E1+6, E1+8 | 
| RFLG | EDIT+1~, EDIT+4, E1+3*, E1+11 | 
| SB | ADD+1~, ADD+9*, ADD+10 | 
| SF | EDIT+1~, EDIT+6*, EDIT+7, WP+1~, WP+2*, WP+3, WP+4 | 
| SS | WORD+1~, WORD+2*, WORD+3, WORD+10, WORD+11 | 
| TFLG | FILE+20~, SPEC+6*, SPEC+7*, SPEC+13, SPEC+14, EDIT+1~, EDIT+5*, E1+3 | 
| TOT | FILE+20~, FILE+59*, SPEC+1*, SPEC+2, SPEC+5, WORD+1~, WORD+4*, WORD+7*, WORD+10, WORD+11 | 
| U | SPEC+7, SPEC+13, SPEC+14, SPEC+16, SPEC+17, DELREC+1, ADD+2, ADD+10, ADD+12, EDIT+5 , E1, POINT+2, WP+2, WP+3, WORD+2, WORD+10 | 
| UFLG | FILE+20~, FILE+48*, SPEC, SPEC+16, SPEC+17*, DELREC, DELREC+1, DINUM, DINUM+5*, ADDREC , EDITREC, EDIT+3, EDIT+11, EDIT+12, EDIT+13, E1+11, DIE, DIE+2 | 
| UP | ADD+1~, ADD+8*, ADD+9, ADD+10 | 
| VAL | FILE+20~, SPEC+9*, SPEC+11, SPEC+12, SPEC+13, EDIT+1~, POINT~, POINT+1, POINT+2*, POINT+3 , WORD~, WORD+3, WORD+5, WORD+6* | 
| VAL( | EDIT+5*, EDIT+7, EDIT+8*, EDIT+10, EDIT+11*, EDIT+13, EDIT+14, CHK, E1+6* | 
| VENDUZ | FILE+18~, FILE+19*, FILE+22! | 
| VUZ | FILE+18~, FILE+19*, FILE+20~ | 
| X | FILE+20~, FILE+24*, SPEC+5*, SPEC+7*, SPEC+8*, SPEC+9, ADD+1~, ADD+2*, EDIT+4*, EDIT+5 , REF+1~, MERR+1~, MERR+3 | 
| XTFLG | FILE+20~ | 
| Y | FILE+20~, ADD+1~, ADD+6*, AFAIL, AFAIL+1, AFAIL+2 |