I am pulling files from an SMB server and would like to process both 'new' (never processed before) and 'changed' (processed on a date earlier than the current file modification date) files. Is there a way to do this with Find and FindCache?
You would not use a cache if you want to find all files... Its only for when you want to reference a prior cache to exclude those items from the find...
So with that in mind, I can't follow your question.
The directory in question has a normal size of approximately 400 files. Of that number, approximately 20 will have either changed or be new files between times that I run the job. Additionally if my processing has failed on a particular file in the most recent pass, I want to try to process it again on the current pass. So I don't want to process a file that I've seen, unless it has a modification date newer than it was the last time I successfully processed it. Note that it is possible for a simplified (all times on the same day) example for File X to be first seen with a modification time of 1:00a when the job runs at 4:00p and then updated with new content and a modification time of 6:00a when the job runs again at 4:15p - for this example I need to process the file at both 4:00p and 4:15p.
I'm hoping FindCache already does this and it is just a matter of me not understanding the parameters or the way it works.
With FindCache you will never "Find" a file again if it was found and processed the prior time. So either use that, and it protects you from finding it again.
Otherwise use the date timings in the Find to prevent multiple finds.