With this option, you write a script (or use a vendor-supplied script) to parse a directory listing. Directory parsing scripts are written in VBScript and are configured and edited the same as other MOVEit Automation scripts. Two directory-parsing-specific functions are available:
Returns the entire verbatim listing from the FTP or SSH server. This typically contains lines separated by CR and LF (ASCII 13 and 10).
Adds an entry to the FTP or SSH directory listing being parsed.
FilenameToMatch |
is the filename against which MOVEit Automation matches when doing filename wildcard matches. |
Date |
is a string in one of the date formats specified below. This can be "", but in that case, the "Only New Files" feature will not work. |
Size |
is the size in bytes. Set this to 0 if the size is unknown. |
bIsDir |
is a boolean variable that should be True if this entry is a directory rather than a file. |
FilenameForGet |
is the filename to send to the server when requesting a download of the file. It is usually the same as FilenameToMatch |
FilenameOriginal |
is the filename to return as the original filename, in such contexts as the [OrigName] macro. It is usually the same as FilenameToMatch. |
The last two parameters, FilenameForGet and FilenameOriginal, are for use with FTP servers running on operating systems with unusual filesystems. Normally all three filenames should be set the same.
Most other MOVEit Automation MIxxx functions are not available in a directory parsing script.
To explain the differences between the three versions of the filename, consider a hypothetical FTP server that allows multiple numbered versions of a file, with the version following the filename in a directory listing. Suppose the directory listing looks like this:
MYFILE.DAT;22 45321 2006-05-06 08:11:56
MYFILE.DAT;21 44090 2006-05-05 17:20:40
README.TXT;3 8192 2005-12-30 21:38:27
In this directory listing, there are two versions of MYFILE.DAT, with version 22 being the more recent.
Ordinarily, the user will not know in advance which numeric version is desired; the user will only know that they want the most recent version, or perhaps the next-to-most-recent version, etc. Therefore, it would be unreasonable to configure a MOVEit Automation source with a filemask that refers to a specific version number.
For the purposes of this FTP server, we can invent a filemask syntax in which the most recent version is referred to as MYFILE.DAT(0), the next most recent version as MYFILE.DAT(-1), etc. However, when transferring the file to the destination, we don't care about the version number at all, because most destination servers will not recognize file versions. We want to name the file simply MYFILE.DAT.
Therefore, there are three versions of the name
So, a script parsing this directory listing would do the equivalent of:
FilenameToMatch = "MYFILE.DAT(0)"
MyDate = "2006-05-06 08:11:56"
MySize = 45321
bIsDir = False
FilenameForGet = "MYFILE.DAT;22"
FilenameOriginal = "MYFILE.DAT"
MIDirAddEntry FilenameToMatch, MyDate, MySize, bIsDir, FilenameForGet, FilenameOriginal