Download a free tool that will do your job for you fast.
If you've been tasked with putting together a secure FTP process for exchanging files with a partner or a remote location, then this TechTip will save you many days of work. A new, free tool from Arpeggio Software will make it very easy for you to fully automate any sFTP task, with built-in recovery, using only one CL program, and it can be fully implemented in minutes. Best of all, you won't need to worry about PASE and parsing error codes because this solution is all native.
This article shows you how to set up a bullet-proof secure FTP script. Details on downloading the tool can be found at the end of the article.
Every sFTP process follows a similar pattern: you connect, you validate yourself to the server, you send and receive files, and then you disconnect. Of course, you can do other things too, but those are the primary actions.
The free tool provides promptable CL commands that allow you to connect to a server, get files, put files, and disconnect from a server. This enables you to build a soft-coded sFTP process that can accept variables and allows you to build logic-enabled scripts using MONMSG commands after any sFTP command. By the way, you'll like how tracking is simplified; everything happens in the current job, so you won’t have to hunt through submitted jobs or have Java processes to worry about.
Simple Setup
Before we look at our first script, we need to do a little setup. The first thing to do is define a remote server. In ARP-SFTP, the remote server definition is where the parameters needed to connect and log in to the server are stored. This information is stored outside the script so that it can be changed without having to modify the CL. To get to the server configuration option, type the command AWRKFTPSVR on the command line. On a fresh install, you'll see a panel with no servers defined, so choose option 1 to add one. You should see the panel to add a new server shown below:
Figure 1: Add a new server.
The first thing to do is give the definition a name. This is the name you'll use in your scripts. You'll need to enter the host name/IP address, port number, user id, and password that the trading partner gave you. We're using password authentication in this example. Fill in the fields, press Enter, and you're done.
Test Your Connection
Now we're ready to look at the scripting commands. A side benefit of having commands to work with is that you can use them from a command line. If you want to test your connection to the server you've just defined, then type the command AFSTRFTP on a command line and press <F4> to prompt. You'll be given a field to enter the server name. Hit Enter, and you'll watch it connect and log in. To disconnect, type AFENDFTP and Enter. Those are the commands we'll use in our CL script to start and end an FTP session.
Build the sFTP Script
Two other commands introduced here are AFPUTDBF, which "puts" or sends a database file, and AFGETDBF, which “gets” or retrieves data into a database file. The very basic script that connects to the server PAYROLLSRV and sends the PF file called PAYROLL would use the following commands:
- AFSTRFTP SVRDFN(PAYROLLSRV)
- AFPUTDBF FROMFILE(PYRLIB/PAYROLL)
- AFENDFTP
If you wanted to also receive a submission file after the send, you could add the following:
- AFSTRFTP SVRDFN(PAYROLLSRV)
- AFPUTDBF FROMFILE(PYRLIB/PAYROLL)
- AFGETDBF RMTPATH(payrollconfirmation.txt) TOFILE(PYRLIB/PAYCONF)
- AFENDFTP
We've just shown the basic parameters on these commands, but of course there are values to control character translation, record layout, naming, etc. If you prompt on the commands, you'll see the full range of options. Even though the commands typed above would work, what's missing is the error trapping and logic that make this a powerful tool. Have a look at the CL below to see how we could use MONMSG and branching to make this script intelligent:
Figure 2: Use MONMSG and branching to make this script intelligent.
These are only a few of the command options available, but you've seen enough to get the idea that building FTP scripts and integrating them into your other processes can be easy.
In an upcoming TechTip, we'll look at more advanced scripting.
To download this free product, click here. If you have any questions, contact
LATEST COMMENTS
MC Press Online