[AccessD] Transfer complete?

John W. Colby jwcolby at colbyconsulting.com
Thu Mar 10 11:26:28 CST 2005


How do you tell if a file transfer completes?

I am working on a system where we send files to email addresses as
attachments, and also FTP them to sites.  We also receive Emails with
attachments and may need to get them from FTP sites but that is another
issue.  The client is bring in a brand new software package at their end
which gives me an opportunity to rewrite my end as well.  

I am developing a pair of classes - a transfer job and a transfer job
supervisor - that can Email or FTP files from a directory location.  The
supervisor class of the whole system (which requests the documents) knows
whether the file created is going to be emailed, FTPed or both and to where.
As documents are created and stored on disk, records about the files are
stored in a FileTransferJob table by this supervisor class along with the
destination and type of transfer (Email or FTP).  

The TransferFile Supervisor then loads records from this table where the
"TransferComplete" field is NULL, builds TransferFile class instances and
saves them in a collection of files needing to be transmitted.  Each
TransferFile instance is then polled periodically telling it to perform the
transfer.  If the transfer completes successfully, the TransferFile instance
updates it's associated record in the table and unloads itself from the
supervisor's collection.

The system sends New Claim Notices and Payment Requests (records) from my
disability insurance call center software to the client insurer, and
receives back from them claim numbers and check information.

The issue is how do you determine that an email (or FTP) transmitted
correctly.  My current rev of the software has problems where the email is
"sent" but the email server at DIS was down for backup (for example) and
while the documents are sitting out on the disk, the transfer did not
complete correctly (no email sent).  We are not doing FTPs yet but I foresee
similar issues where the destination is not on the internet for some reason
and the transfer does not occur.  One of the reasons I want to build a
generic system like this is that in the event of a failure, the file record
TransferComplete field can be set back to null and it will just be
re-transmitted automatically.

I am currently using a class (C)1998-99 Dev Ashish and Terry Kreft to do the
FTP Transfer and I may be able to get feedback from the class on a variety
of errors that may occur in their class - the remote site being down may be
one of them.  Unfortunately their class is poorly (not) documented so it is
a problem trying to figure out how it works if something goes wrong.

I'm really looking for developers who have done this and can discuss their
solutions to this issue.

John W. Colby
www.ColbyConsulting.com 

Contribute your unused CPU cycles to a good cause:
http://folding.stanford.edu/





More information about the AccessD mailing list