Defining and making use of Advanced tasks in MOVEit CentralTechnical top tips for MOVEit MFT
MOVEit Automation (MOVEit Central) allows the creation of “Advanced Tasks”; these are tasks which include a degree of logic inside them. Using an Advanced Task you can decide the destination for a file based upon any recognisable parameter, for example part of the name, day of the week, size of the file or basically any macro or result. A good example of the sort of logic you can apply is to select a different source folder based upon the day of the week, something that would require unique traditional tasks to accomplish
You can create an Advanced Task in one of two ways; either from scratch or by right-clicking an existing MOVEit Central task and selecting “Create Advanced Task from Task”
The logic in and Advanced Task can be broken into two parts – “File Loops” and “If Blocks”. In general (but not necessarily – see the example above), an If Block appears inside a File Loop and File Loops appear after the download step; in this way you download files then enter a loop for each file and apply the logic.
Take a moment to examine the Advanced Task below which shows many of the capabilities of advanced tasks:
The task is scheduled to execute daily every 15 minutes. If the day of the week is Monday, we download files from a network share; If it is Tuesday, we download from a MOVEit DMZ server. For the rest of the week, we download from an FTP server. Once we’ve downloaded the files, we then have a File Loop containing actions to be executed against each file. The first action is to execute a batch file using a command line app; if this fails an email is sent and we move on to the next file. If the batch file execution is successful, we check the size of the file and upload it into a folder based upon the size – Over 1GB goes into a “Large Backup Files” folder, anything smaller goes into a “Small Backup Files” folder. If the upload is successful and the weekday is Friday the file is sent as an email attachment to a user, then a separate task is executed – this task will wait for the new task to complete before continuing. Finally, if there are no errors, the source file is removed.
As you can see, the logic that the Advanced Task brings allows functionality that would never have been possible in traditional tasks; however it is worth remembering that the extra logic handling functionality requires more system resources to run – as a consequence you should only use Advanced Tasks where the logic is required.