DIKK ;SFISC/MKO-CHECK KEY INTEGRITY ;9:14 AM 23 Feb 1999
Source file <DIKK.m>
| Package | Total | Caller Graph | 
|---|---|---|
| VA Fileman | 4 | DICN1 DIKK2 DIKKUTL DIKKUTL3 | 
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| UICHK(FILE,DA,OUT,DIKKQUIT) | ;Walk through uniqueness index and check for duplicates | |
| INTEG(DIFILE,DIREC,DIFLD,DIKKEY,DICTRL,DIKPROC) | ; | |
| DUPL(KEY,UI,UIFIL,UIRFIL,DA,IX1,IX2,IXV,NS,SS,DIKKQUIT) | ;Process duplicate | |
| NULLCHK(KFIL,DA,DITAR,DIKKQUIT) | ;Check whether any of the key fields at | |
| IENS(DA) | ;Return IENS from DA array | |
| SETN(DIFIL,DIIENS,DIFLD,DITAR,DIKKQUIT) | ; | |
| CHECKSUB(DIFILE,DA,DIROOT,DIMF,DITAR,DIKKQUIT) | ;Process all records in subfiles | |
| MOVE | ;Move error messages if necessary | |
| CHECK(DIFILE,DA,DIROOT,DIMF,DITAR,DIKKQUIT) | ;Check one record | |
| SETK(DIRFIL,DIIENS,DIKEY,DITAR,DIKKQUIT) | ; | |
| DLOOP | ;Compare IX1 with IX2 and subsequent indexes | |
| EXIT | ;Cleanup ^TMP and quit | |
| CHECKALL(DIFILE,DA,DIROOT,DIMF,DITAR,DIKKQUIT) | ;Check all records | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^TMP("DIKK" | INTEG+16!, INTEG+22, EXIT+1!, CHECK+1, CHECKALL+1, CHECKALL+2, CHECKALL+6, NULLCHK+4, NULLCHK+5, NULLCHK+6 , NULLCHK+7, UICHK+3, UICHK+5, UICHK+8, UICHK+16, UICHK+20*, UICHK+21* | 
| Name | Line Occurrences | 
|---|---|
| $$IENS | NULLCHK+8, DLOOP+6, DLOOP+15 | 
| CHECK | INTEG+27 | 
| CHECKALL | INTEG+28, CHECKSUB+9 | 
| CHECKSUB | CHECK+2, CHECKALL+7 | 
| DLOOP | DLOOP+30 | 
| DUPL | UICHK+31 | 
| EXIT | INTEG+22 | 
| MOVE | INTEG+12 | 
| NULLCHK | CHECKALL+6 | 
| SETK | DLOOP+18, DLOOP+24, DLOOP+26 | 
| SETN | NULLCHK+10 | 
| UICHK | CHECKALL+1 | 
| Name | Field # of Occurrence | 
|---|---|
| ^( | UICHK+20* | 
| ^("SS" | UICHK+8 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| DA | INTEG+1~, INTEG+26, INTEG+27, INTEG+28, CHECK~, CHECK+1, CHECK+2, CHECKALL~, CHECKALL+1, CHECKALL+5* , CHECKALL+6, CHECKALL+7, CHECKSUB~, CHECKSUB+2, CHECKSUB+9, CHECKSUB+11, NULLCHK~, NULLCHK+8, UICHK~, UICHK+24 , UICHK+31, UICHK+35, DUPL~, DLOOP+5*, DLOOP+6, DLOOP+14*, DLOOP+15, IENS~, IENS+2 | 
| DA( | DLOOP+5*, DLOOP+14*, IENS+2 | 
| DA(" " | IENS+2 | 
| DA(1 | CHECKSUB+7 | 
| DICTRL | INTEG~, INTEG+5, INTEG+7, INTEG+13*, INTEG+20, MOVE+2!* | 
| DICTRL("MSG" | MOVE+1 | 
| DICTRL("TAR" | INTEG+5* | 
| DICTRL1 | INTEG+5~*, MOVE+2 | 
| >> DIERR | MOVE+1 | 
| DIF | INTEG+1~, INTEG+7*, INTEG+8, INTEG+9, MOVE+1 | 
| DIFIL | SETN~, SETN+1 | 
| DIFILE | INTEG~, INTEG+23, INTEG+27, INTEG+28, CHECK~, CHECK+1, CHECK+2, CHECKALL~, CHECKALL+1, CHECKALL+2 , CHECKALL+6, CHECKALL+7, CHECKSUB~, CHECKSUB+6, CHECKSUB+7, CHECKSUB+8 | 
| DIFLD | INTEG~, INTEG+18, INTEG+19, SETN~, SETN+1 | 
| DIFM | INTEG+9~* | 
| DIIENS | SETN~, SETN+1, SETK~, SETK+1 | 
| DIKERR | INTEG+1~, INTEG+12, MOVE+2 | 
| DIKEY | SETK~, SETK+1 | 
| DIKFIL | INTEG+1~, INTEG+19, INTEG+20, INTEG+23 | 
| DIKKEY | INTEG~, INTEG+17, INTEG+21 | 
| DIKKQUIT | INTEG+1~, INTEG+27, INTEG+28, CHECK~, CHECK+1, CHECK+2, CHECKALL~, CHECKALL+1, CHECKALL+5, CHECKALL+6 , CHECKALL+7, CHECKSUB~, CHECKSUB+6, CHECKSUB+9, NULLCHK~, NULLCHK+4, NULLCHK+6, NULLCHK+10, UICHK~, UICHK+3 , UICHK+28, UICHK+31, DUPL~, DLOOP+11, DLOOP+18, DLOOP+24, DLOOP+26, SETN~, SETN+3*, SETK~ , SETK+3* | 
| DIKKTAR | INTEG+5~, MOVE+2 | 
| DIKPROC | INTEG~, INTEG+4*, INTEG+5, INTEG+13, MOVE+2 | 
| DIMF | INTEG+1~, INTEG+20, INTEG+23, INTEG+27, INTEG+28, CHECK~, CHECK+2, CHECKALL~, CHECKALL+7, CHECKSUB~ , CHECKSUB+9 | 
| DIMF( | CHECK+2, CHECKALL+2, CHECKALL+7, CHECKSUB+6, CHECKSUB+7, CHECKSUB+8 | 
| DIMULTF | CHECKSUB+1~, CHECKSUB+6*, CHECKSUB+7, CHECKSUB+8 | 
| DIQUIET | INTEG+8~* | 
| DIREC | INTEG~ | 
| DIRFIL | SETK~, SETK+1 | 
| DIROOT | INTEG+1~, INTEG+27, INTEG+28, CHECK~, CHECK+2, CHECKALL~, CHECKALL+5, CHECKALL+7, CHECKSUB~, CHECKSUB+7 | 
| DISBFILE | CHECKSUB+1~, CHECKSUB+8*, CHECKSUB+9 | 
| DISBROOT | CHECKSUB+1~, CHECKSUB+7*, CHECKSUB+9 | 
| DITAR | INTEG+1~, INTEG+27, INTEG+28, CHECK~, CHECK+1, CHECK+2, CHECKALL~, CHECKALL+1, CHECKALL+6, CHECKALL+7 , CHECKSUB~, CHECKSUB+9, NULLCHK~, NULLCHK+10, DLOOP+18, DLOOP+24, DLOOP+26, SETN~, SETN+1, SETK~ , SETK+1 | 
| DUPL | DUPL+2~, DLOOP+18*, DLOOP+24*, DLOOP+26 | 
| FIL | NULLCHK+2~, NULLCHK+4*, NULLCHK+5, NULLCHK+6, NULLCHK+7, NULLCHK+10 | 
| FILE | UICHK~, UICHK+3, UICHK+5, UICHK+8, UICHK+20, UICHK+21, UICHK+31 | 
| FLD | NULLCHK+2~, NULLCHK+6*, NULLCHK+7, NULLCHK+10 | 
| I | DUPL+2~, DLOOP+5*, DLOOP+14*, IENS+1~, IENS+2* | 
| IENS | NULLCHK+2~, NULLCHK+8*, NULLCHK+9*, NULLCHK+10, IENS+1~, IENS+2*, IENS+3 | 
| IENS1 | DUPL+2~, DLOOP+4*, DLOOP+5, DLOOP+6*, DLOOP+26 | 
| IENS2 | DUPL+2~, DLOOP+13*, DLOOP+14, DLOOP+15*, DLOOP+18, DLOOP+21, DLOOP+24 | 
| IENSDONE | DUPL+2~ | 
| IENSDONE( | DLOOP+21, DLOOP+24* | 
| IX0 | UICHK+1~, UICHK+8*, UICHK+10, UICHK+20, UICHK+27*, UICHK+28 | 
| IX1 | UICHK+1~, UICHK+27*, UICHK+29, UICHK+30*, UICHK+31, UICHK+32*, DUPL~, DLOOP+4, DLOOP+29*, DLOOP+30 | 
| IX2 | UICHK+1~, UICHK+27*, UICHK+28*, UICHK+29, UICHK+30, UICHK+31, UICHK+32*, DUPL~, DLOOP+11*, DLOOP+13 , DLOOP+23, DLOOP+29*, DLOOP+30 | 
| IXV | DUPL~, DUPL+6, DLOOP+4, DLOOP+11, DLOOP+13 | 
| IXV1 | UICHK+1~, UICHK+29*, UICHK+30, UICHK+31, UICHK+32 | 
| IXV2 | UICHK+1~, UICHK+29*, UICHK+30 | 
| KEY | UICHK+1~, UICHK+5*, UICHK+6, UICHK+7*, UICHK+19*, UICHK+20, UICHK+31, DUPL~, DLOOP+18, DLOOP+24 , DLOOP+26 | 
| KFIL | NULLCHK~, NULLCHK+4, NULLCHK+5, NULLCHK+6, NULLCHK+7, UICHK+1~, UICHK+7*, UICHK+10, UICHK+16, UICHK+20 , UICHK+31 | 
| L | DUPL+2~, DLOOP+4*, DLOOP+5, DLOOP+13*, DLOOP+14 | 
| LDIF | NULLCHK+2~, NULLCHK+5*, NULLCHK+9, UICHK+1~, UICHK+7*, UICHK+10, UICHK+20, UICHK+24, UICHK+35 | 
| ML | DUPL+2~, DLOOP+9, DLOOP+18 | 
| ML( | DUPL+6*, DLOOP+9, DLOOP+22 | 
| NEXTIX1 | DUPL+2~, DLOOP+1!, DLOOP+23*, DLOOP+27, DLOOP+29 | 
| NS | UICHK+1~, UICHK+27*, UICHK+28, UICHK+29, UICHK+31, DUPL~, DUPL+6, DLOOP+11, DLOOP+30 | 
| OUT | UICHK~ | 
| S | UICHK+1~, UICHK+14*, UICHK+15, UICHK+16, DUPL+2~, DUPL+5*, DUPL+6*, DLOOP+9*, DLOOP+22*, DLOOP+23 | 
| SS | UICHK+1~, UICHK+8*, UICHK+10, UICHK+21, UICHK+29, UICHK+31, DUPL~, DLOOP+11, DLOOP+30 | 
| SS( | UICHK+14, UICHK+15!, UICHK+16*, DUPL+6 | 
| U | UICHK+6, UICHK+7, UICHK+15, UICHK+16, UICHK+20, DUPL+6 | 
| UI | UICHK+1~, UICHK+3*, UICHK+5, UICHK+8, UICHK+10, UICHK+20, UICHK+21, UICHK+31, DUPL~ | 
| UIFIL | DUPL~ | 
| UIRFIL | DUPL~, DLOOP+18, DLOOP+24, DLOOP+26 | 
| V1 | DUPL+2~, DLOOP+9! | 
| V1( | DLOOP+9*, DLOOP+22 | 
| X | NULLCHK+2~, NULLCHK+7, DUPL+2~, DLOOP+9, DLOOP+22 |