home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
database
/
dbfchk.zip
/
CHK_ALL.PRG
< prev
next >
Wrap
Text File
|
1988-08-18
|
6KB
|
294 lines
SET ECHO OFF
SET TALK OFF
SET STATUS OFF
SET UNIQUE ON
SET BELL OFF
*SET INTENSITY ON
SET COLOR TO W/B, /W,B
CLEAR
DO WHILE .T.
STORE .F. TO FLAG_LOOP,FLAG_EXIT
NORMAL='W/B, /W,B'
GOLD='GR/B'
YELLOW='GR+/B'
YEL_FLSH='GR+*/B'
MEMVAR1=SPACE(8)
MEMVAR2=SPACE(8)
MEMVAR3=SPACE(8)
MEMVAR4=SPACE(8)
MEMVAR5=SPACE(8)
MEMVAR6=SPACE(1)
SET COLOR TO &NORMAL
@04,10 SAY "Reference Filename: <" GET MEMVAR1 PICTURE "!!!!!!!!"
@04,42 SAY '>'
@05,10 SAY "Reference Index : <" GET MEMVAR3 PICTURE "!!!!!!!!"
@05,42 SAY '>'
SET COLOR TO &GOLD
@08,10 SAY "Test Filename : <" GET MEMVAR2 PICTURE "!!!!!!!!"
@08,42 SAY '>'
@09,10 SAY "Test Index : <" GET MEMVAR4 PICTURE "!!!!!!!!"
@09,42 SAY '>'
SET COLOR TO &NORMAL
@11,10 SAY "Field Name that establishes Relationship: <" GET MEMVAR5
MEMVAR5=UPPER(MEMVAR5)
@11,63 SAY '>'
@12,10 SAY "Field Type N/C : <" GET MEMVAR6 PICTURE "!"
@12,35 SAY '>'
@16,20 SAY 'Press <Esc> to Terminate Program.'
READ
IF READKEY() = 12 .OR. READKEY() = 268
STORE 0 TO LTIMER
DO WHILE LTIMER < 100
LTIMER = LTIMER + 1
ENDDO
@ 02,01 SAY 'Quitting to DOS Now...'
QUIT
ENDIF
MEMVAR1=TRIM(MEMVAR1)
MEMVAR2=TRIM(MEMVAR2)
MEMVAR3=TRIM(MEMVAR3)
MEMVAR4=TRIM(MEMVAR4)
MEMVAR5=TRIM(MEMVAR5)
MEMVAR6=TRIM(MEMVAR6)
LAA=MEMVAR1+'.DBF'
IF .NOT. FILE(LAA)
SET COLOR TO &YEL_FLSH
@04,50 SAY '<----'
SET COLOR TO &YELLOW
@20,20 SAY 'File Does Not Exist As Specified...Try Again.'
SET COLOR TO &NORMAL
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@04,50 CLEAR TO 04,54
@20,00 CLEAR
CLEAR MEMORY
LOOP
ENDIF
LBB=MEMVAR2+'.DBF'
IF .NOT. FILE(LBB)
SET COLOR TO &YEL_FLSH
@08,50 SAY '<----'
SET COLOR TO &YELLOW
@20,20 SAY 'File Does Not Exist As Specified...Try Again.'
SET COLOR TO &NORMAL
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@08,50 CLEAR TO 08,54
@20,00 CLEAR
CLEAR MEMORY
LOOP
ENDIF
LCC=MEMVAR3+'.IDX'
IF .NOT. FILE(LCC)
SET COLOR TO &YEL_FLSH
@05,50 SAY '<----'
SET COLOR TO &YELLOW
@20,20 SAY 'File Does Not Exist As Specified...Try Again.'
SET COLOR TO &NORMAL
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@05,50 CLEAR TO 05,54
@20,00 CLEAR
CLEAR MEMORY
LOOP
ENDIF
LDD=MEMVAR4+'.IDX'
IF .NOT. FILE(LDD)
SET COLOR TO &YEL_FLSH
@09,50 SAY '<----'
SET COLOR TO &YELLOW
@20,20 SAY 'File Does Not Exist As Specified...Try Again.'
SET COLOR TO &NORMAL
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@09,50 CLEAR TO 09,54
@20,00 CLEAR
CLEAR MEMORY
LOOP
ENDIF
STORE 0 TO R,ENDVAR
USE &MEMVAR1 INDEX &MEMVAR3
STORE 0 TO C
DO WHILE .T.
C = C + 1
IF TRIM(FIELD(C))=MEMVAR5
STORE .T. TO FLAG_EXIT
EXIT
ENDIF
IF LEN(FIELD(C))=0
STORE .T. TO FLAG_LOOP
SET COLOR TO &YEL_FLSH
@11,66 SAY '<----'
SET COLOR TO &YELLOW
@20,20 SAY 'Field Name Does Not Exist'
@21,20 SAY ' As Specified...Try Again.'
SET COLOR TO &NORMAL
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@11,53 CLEAR TO 11,70
@20,00 CLEAR
EXIT
ENDIF
ENDDO && WHILE .T.
IF FLAG_LOOP
RELEASE MEMVAR5
MEMVAR5=''
LOOP
ENDIF
IF FLAG_EXIT
EXIT
ENDIF
IF TYPE([&MEMVAR1 -> &MEMVAR5])='L' .OR. TYPE([&MEMVAR1 ->&MEMVAR5])='D'
SET COLOR TO &YELLOW
@20,20 SAY 'Cannot select Logic or Date Fields for Comparison.'
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@20,00 CLEAR
CLEAR MEMORY
SET COLOR TO &NORMAL
LOOP
ENDIF
IF TYPE([&MEMVAR1 ->&MEMVAR5])='U'
SET COLOR TO &YELLOW
@20,20 SAY 'Field Does Not Exist as Specified, Please Try again.'
STORE 0 TO LTIMER
DO WHILE LTIMER < 400
LTIMER = LTIMER + 1
ENDDO
@20,00 CLEAR
CLEAR MEMORY
SET COLOR TO &NORMAL
LOOP
ENDIF
IF TYPE([&MEMVAR1 ->&MEMVAR5])='C' .OR. TYPE([&MEMVAR1 ->&MEMVAR5])='N'
EXIT
ENDIF
ENDDO && WHILE .T.
DIMENSION X(1400)
DO WHILE .NOT. EOF()
*DO WHILE R<10
IF .NOT. EOF()
R=R+1
STORE &MEMVAR1 ->&MEMVAR5 TO X(R)
? &MEMVAR5,X(R)
SKIP
IF TYPE([&MEMVAR1 ->&MEMVAR5])='L'
EXIT
ENDIF
ELSE
EXIT
ENDIF
ENDDO && WHILE .NOT. EOF()
IF TYPE([&MEMVAR2 ->&MEMVAR5])='C'
ENDVAR='FINISHED'
ENDIF
IF TYPE([&MEMVAR2 ->&MEMVAR5])='N'
ENDVAR=9999999
ENDIF
STORE 0 TO R
USE &MEMVAR2 INDEX &MEMVAR4
IF MEMVAR6='C'
TESTVAR=SPACE(8)
TESTVAR=''
ENDIF
IF MEMVAR6='N'
STORE 0 TO TESTVAR
ENDIF
SET PRINT ON
? 'Record Comparison Verification checking file '+MEMVAR1+' against file '+MEMVAR2
SET PRINT OFF
DO WHILE .T.
R=R+1
IF TYPE([X(R)])='L'
EXIT
ENDIF
SEEK X(R)
IF FOUND()
? X(R),&MEMVAR2 ->&MEMVAR5
STORE X(R) TO TESTVAR
SKIP
IF MEMVAR6='C'
IF TRIM(&MEMVAR2 ->&MEMVAR5)=TESTVAR
SET COLOR TO &YELLOW
SET PRINT ON
? 'Found Duplicate Record No. '+RIGHT(str(recno()),4)+' in '+MEMVAR2+' '
?? X(R)
SET PRINT OFF
SET COLOR TO &NORMAL
ENDIF
ENDIF
IF MEMVAR6='N'
IF &MEMVAR2 ->&MEMVAR5=TESTVAR
SET COLOR TO &YELLOW
SET PRINT ON
? 'Found Duplicate Record No. '+RIGHT(str(recno()),4)+' in '+MEMVAR2
?? X(R)
SET PRINT OFF
SET COLOR TO &NORMAL
ENDIF
ENDIF
ELSE
SET COLOR TO &YELLOW
SET PRINT ON
? 'Record NOT Found( ) '+RIGHT(STR(R),4)+ ' in '+MEMVAR2+' '
IF MEMVAR6='N'
?? STR(X(R))
ENDIF
IF MEMVAR6='C'
?? X(R),STR(R)
ENDIF
SET PRINT OFF
SET COLOR TO &NORMAL
ENDIF
ENDDO && While .NOT. EOF()
SET PRINT ON
? CHR(12)
SET PRINT OFF
? 'End of File Encountered Program Terminated Normally.'
CLEAR MEMORY
QUIT