DGREGTED ;ALB/BAJ - Temporary & Confidential Address Edits API ; 8/1/08 1:22pm
Source file <DGREGTED.m>
| Package | Total | Call Graph |
|---|---|---|
| Registration | 3 | $$FOREIGN^DGADDUTL $$UPD^DGENDBS ($$INPT1,$$SKIP,$$SURE,GETOLD,INIT)^DGREGTE2 |
| VA Fileman | 1 | ^DIR |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| SAVE(DGINPUT,DFN,FSTR,CNTRY) | ;Save changes
|
|
| INPUT(DGINPUT,DFN,FSTR) | ;Let user input address changes
; Input: ; DGINPUT - Array to hold field values DGINPUT(field#) ; DFN - Patient DFN ; FSTR - String of fields (foreign or domestic) to work with ; ; Output: ; DGINPUT(field#)=external^internal(if any) ; |
|
| REPEAT | ;
|
|
| OK | ;
|
|
| REVERSE | ;
|
|
| EN(DFN,TYPE,RET) | ;Entry point
; This routine controls Edits to Temporary & Confidential addresses ; ; Input ; DFN = Patient DFN ; TYPE = Type of address: "TEMP" or "CONF" ; RET = Flag to signal return to first prompt ; ; Output ; RET 0 = Return to first prompt ; 1 = Do not return ; |
|
| READ(DFN,DGOLD,DGN,Y,REP) | ;Read input, return success
; Input: ; DFN - Patient DFN ; DGOLD - Array of current field values. ; DGN - Current field to read ; Y - Current Field value ; REP - Flag -- should prompt be repeated ; ; Output ; SUCCESS 1 = Input successful go to next prompt ; 0 = Input unsuccessful Repeat or Abort as indicated by REP variable ; REP 1 = Error - Repeat prompt ; 0 = Error - Do not repeat ; Y New field value ; |
|
| INSTRUCT | ;
|
|
| CONFIRM | ;
|
|
| PROC(VAL) | ;process the input and return a type of value
; input ; VAL - The value to examine ; ; output ; a value type ; VALUE = input - validation is a separate task and is not done here ; NULL = NULL input ; UPCAR = the "^" character ; DELETE = the "@" character |
|
| QUES | ;
|
|
| ANSW(YIN,DGOLD,DGN,MSG,YOUT,REP,RET,REVERSE) | ;analyze input commands
; This API will process reads and set bits, messages and flags accordingly. ; Because there is different behavior depending on prompt and input, the input ; of each field needs to be evaluated separately at the time of input and before ; deciding to continue the edit. Input rules are loaded into array RPROC at the ; beginning of this routine in call to INIT^DGREGTE2. ; ; Input ; N - User input "Y" value ; DGOLD - Array of current values ; DGN - Current field ; MSG - Variable for Text message ; YOUT - User input ("Y") value ; REP - Flag to repeat prompt ; RET - Flag to return success or failure to calling module ; REVERSE - Flag to revert to first prompt in sequence ; ; Output ; MSG - Text message (for incorrect entries) ; REP - Repeat current prompt ; REVERSE - Revert to first prompt in sequence ; |
|
| EOP | ;End of page prompt
|
| Name | Line Occurrences |
|---|---|
| Function Call: WRITE |
|
| Function Call: WRITE |
|
| Function Call: WRITE |
|
| Routine Call |
|
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DPT - [#2] | EN+18, EN+20 |
| ^HL(779.004 - [#779.004] | SAVE+4 |
| Name | Line Occurrences |
|---|---|
| $$PROC | ANSW+31 |
| $$READ | INPUT+13 |
| @( | ANSW+35, INSTRUCT+1 |
| ANSW | READ+31 |
| INPUT | EN+22 |
| SAVE | EN+24 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| ACT | ANSW+22~, ANSW+34*, ANSW+35 |
| CNTRY | EN+12~, EN+20*, EN+21, EN+24, SAVE~, SAVE+4 |
| CNTYFLD | READ+15~, READ+16*, READ+26 |
| CPEICE | EN+14~, EN+20 |
| DA | INPUT+9~, READ+15~, READ+18* |
| DATA | SAVE+1~, SAVE+7 |
| DATA( | SAVE+6* |
| DFN | EN~, EN+16, EN+18, EN+19, EN+20, EN+21, EN+22, EN+24, INPUT~, INPUT+13 , READ~, READ+18, SAVE~, SAVE+2 |
| DGCMP | EN+12~, EN+19! |
| DGCMP("OLD" | EN+19 |
| DGENDA | SAVE+1~, SAVE+2*, SAVE+7 |
| DGINPUT | EN+12~, EN+22*, EN+23, EN+24, INPUT~, INPUT+10, INPUT+12, INPUT+14*, SAVE~ |
| DGINPUT( | INPUT+17*, READ+22, READ+23, READ+25, SAVE+4*, SAVE+6 |
| DGN | INPUT+9~, INPUT+10*, INPUT+12, INPUT+13, INPUT+17, READ~, READ+17, READ+22, READ+23, READ+24 , READ+28, READ+31, ANSW~, ANSW+31, ANSW+32, REVERSE+2, CONFIRM+1 |
| DGOLD | EN+12~, EN+19*, INPUT+13, READ~, READ+31, ANSW~ |
| DGOLD( | READ+17, READ+23, READ+28, ANSW+31, CONFIRM+1 |
| DGR | INPUT+9~ |
| DGST | READ+15~ |
| DIR | INPUT+9~, READ+15~, EOP+1~ |
| DIR("A" | READ+26*, EOP+3* |
| DIR("B" | READ+17*, READ+23*, READ+28* |
| DIR(0 | READ+17*, READ+25*, EOP+2* |
| DIROUT | INPUT+9~, READ+15~, READ+20!, EOP+1~ |
| DIRUT | READ+15~, READ+31, ANSW+22~ |
| DTOUT | INPUT+9~, READ+15~, READ+20!, READ+30, ANSW+22~, EOP+1~ |
| DUOUT | INPUT+9~, READ+15~, READ+20!, ANSW+22~, EOP+1~ |
| ERROR | SAVE+1~, SAVE+7 |
| FCITY | EN+13~ |
| FCNTRY | EN+14~, EN+21, SAVE+4, SAVE+5 |
| FCOUNTY | EN+13~, READ+22, READ+24 |
| FILE | SAVE+1~, SAVE+2*, SAVE+7 |
| FNODE1 | EN+14~, EN+18 |
| FNODE2 | EN+14~, EN+20 |
| FORGN | EN+12~, EN+21*, EN+22 |
| FPHONE | EN+13~ |
| FPROV | EN+14~ |
| FPSTAL | EN+14~ |
| FSLINE1 | EN+13~, REVERSE+2 |
| FSLINE2 | EN+13~ |
| FSLINE3 | EN+13~ |
| FSTATE | EN+13~, READ+22, READ+25 |
| FSTR | EN+12~, EN+22*, EN+24, INPUT~, INPUT+10, SAVE~, SAVE+5*, SAVE+6 |
| FZIP | EN+13~ |
| I | EN+15~ |
| ICNTRY | EN+12~, EN+20*, EN+21 |
| L | INPUT+9~, INPUT+10*, INPUT+16*, READ+15~, SAVE+1~, SAVE+6* |
| MSG | READ+21*, READ+31*, ANSW~ |
| MSUB | REVERSE+1~, REVERSE+2*, REVERSE+3 |
| NEWVAL | ANSW+23~, ANSW+31*, ANSW+32, ANSW+33, ANSW+34 |
| OLDC | EN+14~ |
| OLDVAL | ANSW+23~, ANSW+31*, ANSW+32, ANSW+33, ANSW+34 |
| POP | READ+15~, READ+16*, READ+19, READ+22*, READ+30*, READ+33* |
| PRMPT | ANSW+22~, ANSW+25*, ANSW+26 |
| PSTR | EN+12~, EN+22 |
| REP | INPUT+9~, INPUT+11*, INPUT+13, INPUT+14, READ~, READ+31, READ+32*, ANSW~, REPEAT+2*, QUES+2* , CONFIRM+1*, CONFIRM+2*, INSTRUCT+2* |
| RET | EN~, EN+21*, EN+23*, READ+31, ANSW~ |
| REVERSE | READ+15~, READ+16*, READ+31*, READ+32, ANSW~, REVERSE+4* |
| RMSG | ANSW+22~ |
| RMSG( | REVERSE+3 |
| RMSG("INSTRUCT" | ANSW+30*, INSTRUCT+1 |
| RMSG("LINE" | ANSW+26* |
| RMSG("QUES" | ANSW+29*, QUES+1 |
| RMSG("REPEAT" | ANSW+28*, REPEAT+1 |
| RMSG("REVERSE" | ANSW+27* |
| RPROC | EN+14~ |
| RPROC( | ANSW+32, ANSW+33*, ANSW+34 |
| SUCCESS | INPUT+9~, INPUT+13*, READ+15~, READ+16*, READ+30*, READ+31*, READ+32*, READ+34 |
| T | READ+15~, READ+28*, SAVE+1~, SAVE+6* |
| TDGN | ANSW+22~, ANSW+32*, ANSW+33, ANSW+34 |
| TYPE | EN~, EN+19, READ+16, ANSW+25, ANSW+30 |
| U | EN+18, READ+25, SAVE+6 |
| VAL | PROC~, PROC+10 |
| X | EN+15~, INPUT+9~, READ+15~, READ+31, ANSW+22~, EOP+1~ |
| Y | EN+15~, INPUT+9~, INPUT+13, INPUT+17, READ~, READ+31, ANSW+22~, EOP+1~ |
| YIN | ANSW~, ANSW+31, CONFIRM+2 |
| YOUT | ANSW~, CONFIRM+1*, CONFIRM+2* |