home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1993 #2
/
Image.iso
/
clipper
/
bcklib2.zip
/
ELIDUP.PRG
< prev
next >
Wrap
Text File
|
1993-01-16
|
2KB
|
55 lines
/*
The source code contained within this file is protected under the
laws of the United States of America and by International Treaty.
Unless otherwise noted, the source contained herein is:
Copyright (c)1990, 1991, 1992 BecknerVision Inc - All Rights Reserved
Written by John Wm Beckner THIS NOTICE MUST NOT BE REMOVED
BecknerVision Inc
PO Box 11945 DISTRIBUTE ONLY WITH SHAREWARE
Winston-Salem NC 27116 VERSION OF THIS PRODUCT.
Fax: 919/760-1003
*/
#include "beckner.inc"
FUNCTION EliDup(cFilename, cDupExpr)
LOCAL aRC, cOld := Chr(255), cTemp, nCount := 0
fSaveRecord()
vCursSave()
cDupExpr := iif(cDupExpr=NIL, Space(200), sSetLength(cDupExpr, 200))
cFilename := iif(cFilename=NIL, Space(64), sSetLength(cFilename, 64))
vSave(2, 70)
aRC := vWindow(2, 70, .y., "")
@ aRC[1], aRC[2] say "Filename ..............." get cFilename picture "@!K"
@ Row()+1, aRC[2] say "Duplicate expression ..." get cDupExpr
READ
vRestore()
vMessageOn("Creating temporary index...")
USE (cFilename := Trim(cFilename)) EXCLUSIVE NEW
INDEX on (cDupExpr := Trim(cDupExpr)) to (cTemp := fUnique())
vMessageOff()
vMessageOn("Eliminating duplicate records")
GO TOP
vSave(MaxRow())
@ MaxRow(), 0
WHILE !eof()
cTemp := &(cDupExpr)
@ MaxRow(), 6 say cTemp
IF cTemp=cOld
nCount++
@ MaxRow(), 0 say nCount picture "9,999"
DELETE
ENDIF
cOld := cTemp
SKIP
ENDWHILE
vRestore()
vMessageOff()
vCursRest()
CLOSE
fRestoreRecord()
ENDFUNCTION