Active Transfer Parameterized Jobs
How to Parametrize Active Transfer Jobs
In my case, I was looking for a way to send multiple files from different locations using a single flow service to multiple SFTP locations.
Our project used webMethods Active Transfer (AT), so I wanted to know if AT jobs could be parameterized. Having one flow service that would take input parameters and feed those parameters to an AT job.
That information is a bit obscure to find, but it is doable. Not everything can be parameterized.
Let's say I want to pass the name of the outbound file at run-time to the Move action. All you need to do is put a parameter in square brackets. Let's say [outboundFIleName].
The parameter definition in AT XML markup looks like this:
<moveFileTask>
...
<renameFilesTo>[outboundFileName]</renameFilesTo>
...
</moveFileTask>
Then in a flow service, map input parameters to the placeholders in AT job.
Execute wm.mft.schedule:executeEvent service to invoke an AT job with given parameters. The scheduleName parameter is the name of the AT job you want to invoke.
Keep in mind the service is synchronous, and it might take some time to finish!
Check for output/success flag and handle success or error states.
Finally, you can store the returned output/eventLogId and use wm.mft.ui.monitoring:getActivityLogForEvent service to retrieve audit logs without using myWebmethods server.
This way, you can parametrize an AT job and call it from a flow service.