Our Products
Classes
BMP
Crypto
CSVStrings
DataLogger
Dates
DebugRecorder
FileNameSet
FileSender
RDOConnectMaster
ReportAids
Sheller
StringSet
WEBUtilities
Modules
DAOLib
Globals
Registry
Programs
Batcher
HTMLGen
KillTime
TimedMessage
|
|
FileNameSet: This class wraps a simple Collection of file names with methods for creating the Collection via a mask, removing individual names, deleting old files, and deleting all files in the Collection. As with a Collection, Count provides the number of files in the set of files and GetName returns the ith file name. Below are three examples of how you might use FileNameSet in one of your programs. They have been extracted from working programs, and
simplified a little. |
 |
|
This subroutine is used in a program that processes purchase orders contained in .ORD files. When a purchase order is processed, the extent is changed to .PCD. This subroutine is called at the end of processing to remove the processed files so that they will not be processed again. It does this by using a FileNameSet object, fns, to first create the list of .PCD files and then delete all of them. |
Sub DeleteOldFiles() 'clean out processed files
Dim fns As FileNameSet 'declare object
Set fns = New FileNameSet 'initialize object
Call fns.CreateSet(PCDataDirectory, "PO*.PCD") 'create list of files
Call fns.DeleteSet 'delete all of them
Set fns = Nothing 'clean up memory
End Sub
|
|
This subroutine is part of a program that periodically checks for the existance of certain file types and performs actions based on what is found in the files. While there is no error in reprocessing the files, this subroutine is called at the beginning of processing to delete any files that have already been processed to keep the load down. A FileNameSet object, fns, is used to perform these actions by first creating a list of files matching the mask, "FOF$*.$$$", and then deleting all whose date/time stamp is more than one day old. |
Sub DeleteExpiredFiles() 'clean out files older than todays
Dim fns As FileNameSet 'declare object
Set fns = New FileNameSet 'initialize object
Call fns.CreateSet(PCDataDirectory, "FOF$*.$$$") 'create list of existing files
Call fns.DeleteOld(1) 'delete old files
Set fns = Nothing 'clean up memory
End Sub
|
|
As part of a program that collects timecard inputs, this subroutine uses a FileNameSet object, fileset, to look for two types of files on a network server, delete any files more than 30 days old, and then to fetch the full name of each remaining file and send it off to a processing subroutine.. |
Sub Process() 'Process upload and change files
Dim fileset as FileNameSet 'declare object
Set fileset = New FileNameSet 'initialize object
Call fileset.CreateSet("C:\", "PY*.TXT") 'add upload files to list
Call fileset.CreateSet("C:\","PY*.CHG") 'add change files to list
Call fileset.DeleteOld(30) 'delete files older than 30 days
For i = 1 to fileset.Count 'loop through list of files
Call ProcessFile(fileset.GetName(i)) Then 'process a file
next i
Set fileset = Nothing 'clean up memory
End Sub
|
|