DICN0 ;SFISC/GFT,XAK,SEA/TOAD/TKW-ADD NEW ENTRY ;10:39 AM 3 Apr 2006
Source file <DICN0.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| INCR | ||
| D | ||
| LOCK(DIROOT,DIEN,DIRESULT) | ; | |
| N1 | ; if LAYGO nodes are present, XECUTE them and verify they don't object | |
| NEW | ; try to add a new record to the file ; called from FILE, ^DICN | |
| N2 | ; process DINUM | |
| N3 | ; add the new record at the IEN selected | |
| N4 | ; if compound index and we don't know internal value of .01, we'll prompt for it in ^DIE. | |
| N5 | ; If .01 is marked for auditing, update audit file | |
| N6 | ; if we have lookup values to stuff, or DIC("DR"), or if the file has ; IDs or KEYS, go do DIE. ; Code will return at D if successful. We set output and go exit | |
| OUT | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^DD( | N1+3, N1+4, N1+9, N5+2, N5+9, N5+11, N5+12, N5+16, N6+7 | 
| ^DD("IX" - [#.11] | N5+18 | 
| ^DD("KEY" - [#.31] | N6+5 | 
| ^DIA - [#1.1] | N2+17, N2+18 | 
| Name | Line Occurrences | 
|---|---|
| D | N4+1 | 
| INCR | N2+17 | 
| LOCK | N2+6, N2+13, N2+20 | 
| OUT | NEW+9, NEW+11, NEW+13, N1+5, N1+9 | 
| Name | Field # of Occurrence | 
|---|---|
| ^( | N2+18 | 
| ^("AUDIT" | N5+2 | 
| ^(0 | N1+4, N3+8*, N5+11 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| % | NEW+3~, NEW+5!*, N2+17*, N5+10!*, N5+13*, N5+15*!, N5+16, N5+19!*, N5+20!*, INCR* | 
| %DT | NEW+3~ | 
| %H | NEW+3~ | 
| %RCR | N5+12~* | 
| %RCR( | N5+13* | 
| %T | NEW+3~ | 
| C | NEW+3~ | 
| D | N3+7!*, N5+15~, N5+20~, D | 
| D0 | NEW+5~* | 
| DA | N3+7*, N3+8, N4+3, N5+15~*, N5+20~*, N5+21, N6+4, D* | 
| DD | N5+7~*, N5+9*, N5+11, N5+12, N5+15~, N5+20~ | 
| DDH | NEW+3~ | 
| >> DDS | OUT | 
| DI | NEW+3~ | 
| DIC | NEW+8, NEW+10, NEW+11, N2+6, N2+13, N2+18, N2+20, N3+2, N3+3, N3+8 , N4+3, N5+15~*, N5+19~* | 
| DIC("DR" | N6+5 | 
| DIC("P" | NEW+10* | 
| DIC(0 | NEW+13, N6+6, OUT | 
| DIE | NEW+3~ | 
| DIEN | LOCK~ | 
| DIENS | NEW+6~, NEW+8, N5+8~, N5+21 | 
| >> DIENTRY | N2+10, N2+11 | 
| DIFAUD | N2+17~*, N2+18 | 
| DIFILEI | NEW+6~, NEW+8, NEW+9, NEW+10, N5+8~ | 
| >> DIFROM | N1+10 | 
| DIG | NEW+3~ | 
| DIH | NEW+3~ | 
| DIK | NEW+3~ | 
| DINDEX | NEW+6~, NEW+7*, N5+8~ | 
| DINDEX("#" | NEW+6, NEW+7*, NEW+12, NEW+13 | 
| DINDEX("START" | NEW+7* | 
| DINO01 | NEW+14~*, N4+1 | 
| >> DINUM | N2+3, N2+4 | 
| >> DIOVRD | N1+10 | 
| DIRESULT | LOCK~, LOCK+6*, LOCK+7 | 
| DIROOT | LOCK~, LOCK+5, LOCK+6, LOCK+7 | 
| DISUBVAL | N5+8~ | 
| DISUBVAL( | N6+5 | 
| DISYS | NEW+3~ | 
| DIU | NEW+3~ | 
| DIV | NEW+3~ | 
| DIVAL | N5+8~ | 
| DIX | NEW+14~, N1+2*, N1+3*, N1+4, N2+2*, N2+4, N2+5~, N2+11, N2+12~, N2+19~ , N3+2, N3+7, N4+2*, N4+3* | 
| DIY | NEW+14~, N2+18, INCR* | 
| DO | NEW+11, N2+17, N2+19, N5+20~*, INCR | 
| DO(1 | N4+2, N6+9, OUT+1 | 
| DO(2 | N1+3, N1+4, N1+9, N5+2, N5+9, N5+11, N5+12, N5+16, N5+18, N5+21 , N6+5, N6+7 | 
| DQ | NEW+3~ | 
| DR | NEW+3~ | 
| >> DS(0 | N4+2*, N6+9*, OUT+1* | 
| >> DTOUT | OUT+1 | 
| DUZ(0 | N2+19 | 
| DZ | N5+12~* | 
| I | NEW+3~ | 
| U | N1+9, N2+17, N2+19, N3+8, N4+3, N5+2, D, INCR | 
| X | NEW+5~*, NEW+12*, NEW+13, NEW+14, N2+2, N2+4*, N2+6, N2+11*, N2+13, N2+17* , N2+18*, N2+20, N3+7*, N4+2*, N4+3*, N5+10~*, N5+19~*, D, INCR | 
| X(1 | NEW+12 | 
| >> Y | N1+2*, N1+4*, N1+5, N1+9, N1+10*, N2+4*, N2+6, N2+11, N2+13, N2+17 , N2+19, N2+20*, N2+22*, N4+1, N4+2, N6+4*, N6+9, D*, OUT+1* |