Universal FTP Interface System Guide

Universal FTP Interface System

User Guide

UFTP Version 4.1
April 1, 2003

Systems Development and Automation Tools

For the latest information about Surround Technologies' products, visit: www.surroundtech.com

Copyright © 1998-2003 SURROUND TECHNOLOGIES, LLC.
Notice: This guide and the Software described by this guide are protected by copyright. You may not copy, modify, translate, or reproduce this guide or any part of this guide in any form without prior written permission from Surround Technologies, LLC.


End User License Agreement

IMPORTANT - PLEASE READ CAREFULLY: This End User License Agreement (this
"Agreement") is a legal agreement between you (either an individual or a single
entity) and Surround Technologies, LLC (Surround) for the Surround products
identified above, which includes computer software and associated media, printed
materials and electronic or "on-line" documentation (Software). By installing,
copying, or otherwise using the Software, you agree to be bound by the terms of
this Agreement. If you do not accept the terms of this Agreement, promptly
return the unused Software to the place in which you obtained it for a full
refund.

1.  GRANT OF LICENSE. Surround Technologies, LLC, grants you a nonexclusive
    license to use the Software, subject to the following:

     * Except as stated below, you may install the Software on only one computer. If
       the Software can be used from any computer other than the computer on which it
       is installed (whether because the computer on which it is installed is part of a
       network or for any other reason), you must license a copy of the Software for
       each computer from which the Software may be used. For example, if there are ten
       computers that have access to the Software on your network, then you must
       license ten copies of the Software solely for use on that network.

     * If you are the primary user of more than one computer (such as an office
       computer and a home computer), you may install the Software on each of them so
       long as the Software is never used on more than one of the computers at the same
       time. If you want to allow the Software to be used on more than one of the
       computers at the same time, then you must license a copy of the Software for
       each computer.

     * If you remotely install or otherwise install the Software on another user's
       computer for file transfers or other remote operations, you must delete the
       Software from the other computer immediately after you complete your transfer or
       remote operation.

     * You may make a reasonable number of back-up copies of the Software. The back-
       up copies may be used only to replace an unusable copy of the Software. You must
       destroy any copies of the Software that are replaced by a back-up copy. Back-up
       copies must include all proprietary rights notices appearing on the original and
       must remain in your possession or control.

     * Except as specifically permitted in this Agreement, you may not (i) copy the
       Software, (ii) modify the Software or separate out any of its components for use
       with other software (except to the extent contemplated in the enclosed user
       documentation) (iii) use the Software to provide time sharing, service bureau or
       similar services, or (iv) decompile, disassemble, or otherwise reverse engineer
       the Software.

     * You may not allow anyone to do anything that this Agreement prohibits you from
       doing.

     (b) You understand that the Software is licensed to you and not sold. Surround
         retains title to all copies of the Software.

2.  LIMITED WARRANTIES AND DISCLAIMER OF IMPLIED WARRANTIES. (a) Surround
    warrants that, for ninety (90) days after you obtain the Software (the "Warranty
    Period"), (i) the Software will operate as stated in the enclosed user
    documentation, and (ii) the disk or other media on which the Software is
    provided will be free of defects in material or workmanship. This limited
    warranty does not cover anything caused by accident or abuse or by use of the
    Software other than for its reasonably intended purposes and as recommended in
    the accompanying user documentation. Also, Surround does not warrant that the
    operation of the Software will be uninterrupted or error free. This warranty
    gives you specific legal rights, and you may also have other rights which vary
    from state to state.

    (b) Except as stated in Section 2(a), Surround does not make any warranties. In
        particular, Surround disclaims all implied warranties, including the implied
        warranties of merchantability, fitness for a particular purpose, and non-
        infringement. The duration of any implied warranty that is not effectively
        disclaimed will be limited to the 90 day Warranty Period. Some states do not
        apply limitations on how long an implied warranty lasts, so the above limitation
        may not apply to you.

3.  EXCLUSIVE REMEDIES. (a) If, during the Warranty Period, you report any breach
    of warranty to Surround and Surround is reasonably able to verify that breach,
    Surround or its agent will, at its option, either (i) correct the Software or
    replace any defective media, (ii) help you work around or avoid the problem, or
    (iii) allow you to return the Software, all accompanying documentation, and all
    other accompanying written materials in the original packaging for a full
    refund. If you return the Software for a refund, you may not retain or use the
    Software, and you must immediately destroy all back-up copies and any other
    copies of the Software in your possession or control.

    (b) During the Warranty Period, you may report breaches of warranty over the
        phone by calling 908.490.1235 or by letter addressed to P.O. Box 47, Scotch
        Plains, NJ 07076, Attention: Customer Service. You must describe the breach in
        detail and include a phone number or address at which you can be reached during
        normal business hours. Surround will respond within a reasonable time to any
        reported breach. You must pay all costs of shipping any Software or other
        materials. Any corrected or replaced software that you obtain under this Agreement
        will be considered part of the Software licensed under this Agreement and will be
        covered by warranty only for any time remaining in the original Warranty Period.

    (c) The remedies stated in this Section 3 are your only rights or remedies, and
        will be Surround's only liability or obligation, for any breach by Surround of
        any warranty.

4.  PROPRIETARY RIGHTS. Subject to this Agreement, Surround and its licensors
    retain all copyrights, trade secret rights, patents, trademarks, and any other
    proprietary rights covering or relating to the Software. You acknowledge that
    the Software includes or incorporates proprietary and confidential information
    belonging to Surround and/or its licensors. All rights not expressly granted by
    Surround in this Agreement are reserved.

5.  EXCLUSION OF CONSEQUENTIAL DAMAGES; LIMITATION OF LIABILITY. Neither Surround
    nor its affiliates nor its licensors will be liable for any special, incidental,
    consequential or exemplary damages, including without limitation damages for
    loss of use, lost profits or loss of data or information of any kind, arising
    out of or in connection with the Software or its use or this Agreement, even if
    Surround Technologies or its affiliates or its licensor have been advised of the
    possibility of such damages. In no event will Surround's or its affiliates' or
    its licensors' liability for any claim relating to the Software or its use or
    this Agreement, whether in contract, tort or any other theory of liability,
    exceed the license fee paid by you. Some states do not allow the exclusion or
    limitation of incidental or consequential damages, so the above limitation or
    exclusion may not apply to you.

6.  CAUTIONS REGARDING DATA. The Software contains tools to be used in
    transmitting, searching, and retrieving data in various forms as described in
    the documentation. You assume the entire responsibility for determining the
    legality of any transmission or copying you may engage in and for protecting
    yourself, your business, family, and associates from any offensive or inaccurate
    data, information, or material you may choose to receive or allow to be
    transmitted to you. Without limiting the foregoing, if you access data from
    sources including, but not limited to, bulletin boards, data services, or the
    Internet, your access is provided only on an "as is" and "as available" basis.
    Surround does not grant any warranty with respect to, or assume any
    responsibility for any consequences whatsoever suffered by any person as a
    result of, your access or use of the Internet including, without limitation,
    access to or resulting in false, incomplete or unreliable data, sexually
    explicit or violent material, defamatory or derogatory content, computer
    viruses, or corrupted data.

7.  LIMITS ON YOUR RIGHT TO TRANSFER. You may not sublicense, rent, lease, lend,
    sell, grant a security interest in, or otherwise transfer the Software or any
    rights under this Agreement, except that you may transfer your copy of the
    Software if: (i) you transfer to the same person all copies of the Software and
    of any accompanying documentation in your possession or control, (ii) that
    person agrees in writing to assume all of your obligations under and otherwise
    to be bound by this Agreement, and (iii) you notify Surround at the address or
    phone number specified below of the transfer of the Software, including the
    name, address and phone number of the new owner of the Software and the serial
    number of the Software. Your rights under this Section 7 only apply to
    incidental transfers. No right is granted to transfer or in any way distribute
    multiple copies of the Software in connection with a trade or business (whether
    as a value added reseller, OEM, distributor, systems integrator, or otherwise).

8.  EXPORT. You acknowledge that the Software is subject to United States export
    control laws, including the export administration regulations. You will not
    export, re-export or divert the Software in contravention of those laws.

9.  TERMINATION. Surround may terminate this Agreement if you violate it. You
    must destroy all copies of the Software in your possession or control promptly
    upon termination. Upon Surround's request, you must certify in writing that you
    have complied with your obligations under this Section 9 and otherwise under
    this Agreement. Termination by Surround will not limit any of its other rights
    or remedies under this Agreement or at law or in equity. Any provision of this
    Agreement that by its sense and context is intended to survive termination of
    this Agreement will survive termination.

10.  SEVERABILITY. If any provision of this Agreement is illegal or
     unenforceable under applicable law, the remaining provisions of this Agreement
     will remain valid and fully enforceable. If any provision is in part enforceable
     and in part unenforceable, it will be enforced to the extent permitted under
     applicable law.

11.  U.S. GOVERNMENT RESTRICTED RIGHTS. If this product is licensed by a DoD
     agency, such agency's rights in this product are governed by the restrictions in
     the Technical Data -- Commercial Items clause at DFARS 252.227-7015 and DFARS
     227.7202, or any successor regulation. If this product is licensed by any other
     agency or instrumentality of the United States of America, use, duplication and
     disclosure are subject to restriction as set forth in subparagraphs (a) - (d) of
     the rights in Technical Data and Computer Software clause at FAR 52.227-19 or
     any successor regulation, or as set forth in the particular department or agency
     regulations or rules which provide Surround Technologies, LLC or its licensors
     protection equivalent to or greater than that clause.

12.  GOVERNING LAW. This Agreement is governed by New Jersey law.

13.  ENTIRE AGREEMENT. This Agreement, together with any special rights or
     promotions provided in writing with your copy of the Software, is the entire
     agreement between you and Surround relating to the Software. It supersedes any
     prior or contemporaneous oral or written communication relating to the Software.

Should you have any questions concerning this Agreement, or if you desire to contact
Surround Technologies, LLC for any reason, please write: P.O. Box 47, Scotch Plains,
NJ 07076, Attention: Customer Service. Alternatively, you may:
     Call Surround at (908) 490-1235,
     Fax Surround at (908) 490-1236, or
     Email Surround at surround_info@surroundtech.com


Using this documentation.

This guide provides both instructional and reference material to help you understand the capabilities and functionality of the UFTP Interface System. This guide contains a general overview of the system, samples of the menus used, and some screen displays. It also provides further details on entering and maintaining system information and tracking file transfers

For Windows users:
This documentation set assumes that you are familiar with windows based programs, and can navigate through the interface using a mouse and keyboard.

For AS/400 users:
This documentation set assumes that you are familiar with the AS/400 environment, and can navigate through the interface using the keyboards function keys.

For Web users:
This documentation set assumes that you are familiar with the Internet and WWW environment, and can navigate through the interface using an Internet Browser.

Copyright © 1998-2002 Surround Technologies, LLC.


What's new in UFTP Version 4.0

New in version 4.0

  • FTP Sites – FTP Sites have been introduced to separate the connection information from the Scripts to execute. This, combined with FTP Sessions, allows for one Site to be defined and used to execute multiple scripts.
  • FTP Sessions – FTP Sessions have been introduced to separate the session information from the Scripts to execute. An FTP Session references an FTP Site and a Script to perform a specific set of FTP Functionality. All FTP Session Executions can be logged for review and auditing.
  • FTP Server Users – FTP Server Users have been introduced to separate and secure the User IDs and Passwords from the FTP Site Connection information. This makes it much easier to change the User IDs and Passwords that are used by the system. Also, by having the User and Password information in a separate location than the Server information, it further secures the information. Include that with UFTP's encrypted passwords, and your FTP connectivity is secure within UFTP.
  • FTP Command Prompting – Don't worry about knowing FTP commands any longer. Use UFTPs command prompting to provide you with easy to understand prompts that automatically build the FTP commands in the background. Optionally, if you feel the need, you can review the commands generated in the background and learn how to do some of the difficult FTP tasks.
  • Improved Windows User Interface – The Windows User Interface has been completely rebuilt utilizing Surround Technologies own Frameworks For Windows Development Tool making it more robust and intuitive.
  • Expanded Field Lengths – All of the limiting Field Values such as User ID, Password, Commands, etc. have been expanded to 250 characters.
  • Auto-Recovery – Additional Controls have been added to Auto-Recovery to specify the delay time between each recovery attempts and the time to halt recovery attempts.
  • System Variable enhancements
    • User Defined Variables – New System Variable will save you time by improving Script Maintenance and re-usability.
    • User ID and Password Variables – New System Variables to link to the FTP Server User File to use them within Script Commands. Also, UFTP will clear all password information from the script execution logs to further secure this information.
    • Multiple System Variable use per command – You can now specify the same system variable more than once in a single command.
    • External Script File Variable - Want to include your own set of commands on the fly. No problem. Put them in a designated file and include this system variable in your script.
  • Execution Failure Identification – The Execution History Log has been enhanced to provide more detailed information as to the nature of and reason for script failure.
  • Re-execute Script Executions – It is now possible to re-execute a previously run execution using the same commands that were used in that execution. This is particularly useful when system variables are used within the command to dynamically create the commands based on information such as dates and times at execution.
  • New Generic Script Execution - Now you can build a script and run it in one command. Great for the immediate, one time only, FTP needs. No need to go into FTP and run each command individually. Simply run one command to enter all the necessary information and commands.
  • Many New Sample Scripts Available – Use and learn from these sample scripts to make you even more productive in using UFTP.
    << New >> System File Exchange (SFE) Module
    A completely new application integrated with UFTP to provide File Exchanges between multiple Systems. A great solution for sharing files in a controlled and secure environment.
  • Exchange Systems Set-up and Administration - Manage who files are exchanged with and how they are exchanged.
  • File Loading - Load files to SFE for exchanging to other Systems.
  • File Exchange – Both Send and Retrieve files between partners. Exchange can be initiated by either System.
  • File Unloading – Unload files that were exchanged to SFE.
  • Reporting/Auditing - Monitor and report on exchange status and traffic.


Introduction - Getting Started

Welcome to UFTP

UFTP Overview
What Is UFTP?
Who is it for?
What does it do?
What does it look like?
What are its benefits?
How do you use it?

Understanding File Transfer Protocol and TCP/IP
Protocols, TCP/IP and FTP
Elements of TCP/IP
Elements of FTP
Standard FTP Session Example

Understanding UFTP
UFTP Definitions

Installing Universal FTP

Copyright © 1998-2003 Surround Technologies, LLC.


Welcome to the Universal FTP Interface System

Welcome to Surround Technologies’ AS/400 Communications Systems and Automation Software. The Universal FTP Interface System, UFTP, is a file transfer automation utility for the AS/400 and Windows environments that allows you to easily retrieve, send, and manage files between local and remote hosts regardless of the host platform type or operating system. Transferring files is typically an interactive, manually intensive and error prone task. UFTP is designed to automate the distribution and management of files by using the File Transfer Protocol, FTP, over TCP/IP and by executing flexible, pre-defined and proven scripts.

The UFTP Interface System lets you securely create and modify FTP Scripts that can be executed interactively or in an unattended batch mode. The FTP Script contains all the connection information along with a sequenced list of FTP Commands. This system is very useful in automating interactive FTP sessions, scheduling off peek hours file transfers, and integrating into your systems to provide a complete automation solution.

Transferring information between systems is essential to conducting business today.

UFTP provides this essential need efficiently, accurately and securely.


UFTP Overview

What Is UFTP?
Who is it for?
What does it do?
What does it look like?
What are its benefits?
How do you use it?


What is a UFTP?

What is UFTP?

The Universal FTP Interface System, or UFTP, is a file transfer automation utility. It is designed to automate the distribution and management of files by using the File Transfer Protocol, FTP, over TCP/IP and by executing flexible, pre-defined and proven scripts.

UFTP hides the complexities of interfacing with FTP, letting you concentrate on the business requirements.

UFTP consists of 3 major pieces:

  • FTP Automation Engine – The FTP Automation Engine is the core of the actual file transfer process. It is a set of programs that dynamically assembles all the information from UFTP to form FTP scripts and the FTP transactions. It can be invoked interactively, from a scheduler system, or from within your other programs and systems. It has powerful FTP analysis functionality that can evaluate the outcome of your FTP transactions to determine whether the transaction was successful and take appropriate actions based on that analysis, including automatically recovering from any failure and re-processing the transaction.
  • UFTP Maintenance and Administration – A full system to Maintain and Administer the UFTP information and environment. Both a 5250 interface as well as a powerful Windows interface is available to work with, manage, and audit the UFTP information and Executions.
  • FTP Sample Scripts and Automation Wizards – A series of sample scripts are available to quickly demonstrate how to do most of the tasks available with FTP and UFTP. Automation Wizards can step you through the creation of scripts to get you up and running quickly with your next File transfer requirement.

Create full file transfer solutions in minutes, while maintaining standards and system security.

With sample scripts and wizards to create scripts quickly, protection of critical connection information to maintain a secure system, pre-built stable environment to reduce testing requirements, and multiple-platform support for full system integration, the overall time to deliver your essential file transfer solutions will be significantly decreased.

The End result: significant reduction in costs and time from the the very first file transfer requirement and beyond, allowing you to concentrate on using the data not transferring it. UFTP Pays for itself with the first script.

Easier, Faster, Cheaper, Better

Copyright © 1998-2002 Surround Technologies, LLC.


Who is it for?

Transferring Data is Essential to Conducting Business Today.
We at Surround Technologies recognize that efficient, accurate and secure data transfer management is essential to performing business and remaining competitive in today’s rapidly changing environment.
So we developed Universal File Transfer Protocol Interface System (UFTP) a utility that improves upon today’s file transfer mechanism.
Proven Technology, File Transfer Protocol (FTP) has been a commonly used, standard, reliable and secure method for sending, receiving and managing files from remote locations. Available on virtually every platform, FTP is specifically designed to work efficiently over the Internet.
But typically, FTP can be a manually intensive and error-prone task.

Simplifies. Automates.
UFTP simplifies the standard FTP process by organizing the connection information along with a sequenced list of FTP commands into packaged Scripts.
These packaged Scripts can then be executed interactively or in an unattended batch mode. Using proven Scripts eliminates user error and improves network and data security.
In this manner, UFTP builds upon common FTP capabilities, but improves upon their usability. UFTP provides users the ability to manage files remotely, as well as to manage and automate the file transfer process. Users can access, create, rename and delete directories from remote sites, transfer one or more files, and even execute remote commands in a single request.

Transfer Files without Affecting Network Performance.
While transferring files is critical to operating most businesses, doing so during peak business hours can bring the enterprise network to a slow crawl.
By packaging all of the file transfer information into a UFTP Scripts, we found a way to offload file transfers to off-peak network usage times.
With UFTP, your company can run scheduled file transfers, such as data backups and updates, during off-peak hours – when your network usage is at its lowest.

Open Systems/Multiple Platforms.
UFTP is available on a variety of platforms to meet all of your enterprise needs. Our open systems architecture enables our clients to use UFTP on a variety of platforms. UFTP Scripts can be accessed over multiple servers and can be executed on multiple platforms.
UFTP is rooted in proven technology. It is built upon the long-proven File Transfer Protocol utilized over the Internet, running on TCP/IP.
Transmission Control Protocol/Internet Protocol (TCP/IP) refers to a specific set of protocols that allows computers to share resources and exchange information via the Internet. Standard FTP is a high-level protocol that is used to provide file directory and transfer services over TCP/IP.

Many Industries, Many Uses
No matter what industry you are in; Utilities, Apparel, Transportation, Banking, Distribution, Retail, etc.; if data transfer management is critical to your business, UFTP can facilitate in transferring files:

  • To/from suppliers, distributors, retailers and business partners
  • Between different systems within the company
  • To deploy Web hosting sites and backup sites
  • To real time testing environments
  • To backup data recovery machines
  • Between different areas of the same machine
  • To deploy new systems
  • And many more applications


What does it do?


What does it look like?


What are its benefits?

Introduction to Benefits.

Useful and usable scripts
Description.

Rapid FTP solution implementation
Description.

Low cost of ownership
Compare to building yourself.

Intuitive, easy to use Windows interface available
Description.

Multi-platform capable
UFTP can execute on an iSeries server, a Windows server, or standalone on any Windows PC.

Does not require strong knowledge of FTP
Automation and Prompting facilities make knowledge of FTP significantly less important. Your business need is sending a file and knowing that it was transferred successfully, not knowing the specific Return codes that identify this outcome.

Ease the learning curve of FTP
While you can be quite productive with UFTP with very little knowledge of FTP, the more about FTP you know, the more powerful UFTP will become. Additionally, UFTP will ease that learning curve by providing easy access to pertinent FTP information and usage

Modular Design
Description.

Safe and secure connection and password information
Description.

Dynamic runtime script build and compile
Description.

Separate Production and test Mode Facilities
Description.

Detailed execution logging
Description.

Benefit
Description.

Benefit
Description.

Benefit
Description.


How do you use it?


Understanding File Transfer Protocol and TCP/IP

This section of the guide is designed to provide a A brief overview of FTP and TCP/IP.

Protocols, TCP/IP and FTP.
Elements of TCP/IP.
Elements of FTP
Standard FTP Session Example?


Protocols, TCP/IP and FTP

Network protocols are sets of rules that control the communication and transfer of data between two or more devices in a communications system. The term TCP/IP refers to a family of nonproprietary network protocols, of which TCP, providing host-to-host transmission, and IP, providing data routing from source to destination, are two important parts.

TCP/IP (Transmission Control Protocol/Internet Protocol) refers to a specific set of protocols that allows computers to share resources and exchange information in a network. TCP/IP also can be described as a set of vendor-independent communications protocols that support peer-to-peer connectivity functions for both local and wide area networks. Because TCP and IP are two of the best-known protocols in this set, the term TCP/IP has become the commonly used name for the whole family. Remember this when looking at the protocols and how they fit together.

Some of the protocols provide low-level data delivery functions that are needed by many applications. Other protocols are actually high-level applications that provide services such as file transfer, mail, and remote logon. FTP, SMTP, and TELNET are examples of high-level protocols. There are many other protocols as well that are outside the scope of the discussion for this guide.

File Transfer Protocol (FTP) allows you to transfer data between local and remote hosts. FTP is built on the services of TCP in the transport layer. FTP transfers files using either an ASCII or EBCDIC mode. ASCII mode is used to transfer data sets that contain only text characters.

FTP provides functions such as listing the remote directories, changing the current remote directory, creating and removing the remote directories, and transferring one or more files in a single request.


Elements of TCP/IP

Transmission Control Protocol (TCP) provides a reliable delivery of a stream of bytes in sequence. TCP takes a stream of data, breaks it into segments (a TCP header and application data), sends each one individually (using IP), and then reassembles the segments back into the original stream. If any segments are lost or damaged during the transmission, TCP detects this fact and resends the missing segments.

The Internet Protocol (IP) provides the basic transportation rules for communication between hosts on the different networks that make up an Internet. A host is a node on the network that has a unique Internet address and an associated system name. IP is responsible for routing packets from a host on one network through a series of routers to a host on the same or another network.

In IP-based networks, information is transmitted between nodes in the form of packets. A packet includes an IP header and data. A packet or network frame can contain a complete IP datagram or a fragment of an IP datagram. A datagram is the basic unit of information in the TCP/IP protocol, consisting of a source address, destination address, and data. At the Internet level, all addressing is host-to-host, using fixed-length addresses to identify source and destination hosts. The protocol layers above only need to know each host's Internet address to make a connection.

A brief history of TCP/IP
TCP/IP was developed as a result of the Advanced Research Projects Agency network (ARPANET) research conducted in the United States during the 1960s by the Defense Advanced Research Projects Agency (DARPA). ARPANET, which was based on packet switching technology, interconnected research centers, military bases, and government locations. By 1980, most of the machines on the ARPANET had been converted to use the TCP/IP protocols. TCP/IP quickly became the standard method for connecting to the ARPANET. Today, most vendors provide support for TCP/IP.

Today, TCP/IP is used to interconnect networks at universities, research institutions, businesses and industries, and military installations. The term Internet applies to this entire set of interconnected networks. Because these networks are interconnected, information can be sent from one to another if security restrictions permit. The Internet is controlled by a central authority, which is responsible for assigning network addresses to new users and sub-networks. Many smaller private networks around the world use TCP/IP protocols, but they are not connected to the Internet. An example would be organizations that have machines from several vendors and need to interconnect them. TCP/IP provides a good solution for these small networks.


Elements of FTP

File Transfer Protocol (FTP) consists of two parts, the client and the server. The FTP client function allows you to send and receive copies of files to or from remote systems across a TCP/IP network. In addition, FTP client subcommands are provided for renaming, appending to, and deleting files. The FTP server function allows you to send or receive copies of files to or from server systems across a TCP/IP network. In addition, the FTP server provides functions for renaming, adding, and deleting files.

The client has a user interface from which you can enter client subcommands for making requests to an FTP server. The results of these requests are then displayed. One may interact with the client online or run the FTP client in an unattended batch mode where client subcommands are read from a file and the responses to these subcommands are written to a file.

To transfer files between the client and the server, two connections are established. The control connection is used to request services from the server with FTP server subcommands. The server sends replies back to the client to indicate how the request was handled. The second connection, called the data connection, is used for transferring lists of files and the actual file data.

Both the client and the server have a data transfer function that interfaces to the resident file systems. These functions read or write data to the local file systems and to and from the data connection.

Requests for transferring files originate from the client. The user makes these requests with the FTP client subcommands that are read by the client user interface function. The client subcommands are interpreted by the client protocol interpreter, which translates them into appropriate FTP server subcommands. The server protocol interpreter receives the subcommands from the control connection and processes it. The results of each server subcommand are transmitted back to the client in the form of an FTP server reply

The distinction between FTP client and FTP server is from the viewpoint of where the FTP commands are initiated, and not from the viewpoint of where the data resides. Thus, the commands are initiated from the FTP client session, while the files being transferred may initially reside on either system. The remote client may be any system that supports a TCP/IP FTP client.


Standard FTP Session Example

Accessing the server:
Accessing the server is a two-step process.
1. The client must be connected to the server.
2. The client user must be authenticated by the server.

Only after these two steps are successful can files be transferred.

When initially starting the client, the client automatically requests a connection to the server. Once the client is running, any subsequent connections to a server are done with the OPEN subcommand.

Upon a successful connection, the server requests user identification by asking for a user ID and a password. When FTP is operated interactively (subcommands entered from the keyboard), the client prompts for the user ID and password. The client sends this identification data to the server. The server verifies this information and sends back a reply indicating if the identification information has been accepted or rejected.

Defining a directory:
Before actually transferring files, the client determines the present directory (PWD) on the server system and changes it as necessary (CD). The local (client) working directory can also be displayed (LPWD) and changed (LCD).

Notes:
1. When using the subcommand CD (or LCD) to change from one file system to another file system, the root directory for the particular file system must be specified.
2. For AS/400 database files, library is equivalent to directory.

Identifying the data to be transferred:
A list of the files in a directory can be displayed with the LS subcommand to help determine the files to be transferred.

When working with AS/400 files, the file names must be in a specified format. The file naming format to be used is selected with the NAMEFMT subcommand. There are two available naming options NAMEFMT = 0 and 1.

0 Tells AS/400 client and server that file names are in the original FTP file naming format (used by pre-V3R1 versions of FTP).
1 Tells AS/400 client and server that file names conform to the path naming format convention (introduced in V3R1).

Notes
1. Save files and HFS files must use NAMEFMT = 1.
2. The name format can only be changed to 0 when the working directory is a database file system directory.

Preparing for the data transfer:
Before the data is transferred, certain setups or adjustments may be required. This is particularly true when transmitting data between dissimilar systems. Items that may need to be adjusted or set up are:

  • Data Transfer Types
  • Data Structure
  • Transmission modes
  • Unique server requirements

Transferring the data:
Files can be transferred to the server machine with the PUT or APPEND subcommands. Files are obtained from the server by using the GET subcommand. Also, multiple files can be transferred using the MGET and MPUT subcommands.

Ending the transfer session
To terminate an FTP session, issue the QUIT subcommand. To conclude a server session, issue the CLOSE subcommand. A connection to another server can then be initiated with the OPEN subcommand.


Understanding UFTP

  • UFTP Definitions
    • Sites
    • Scripts
    • Script Commands
    • Command Execution Validation Rules
    • Sessions
    • Session Logs
    • Session Log Detail
    • System Variables
    • FTP Server User IDs
    • Override Files
    • FTP Client Types
    • FTP Server Types
    • FTP Commands
    • Production Vs. Test Mode
    • FTP Server Reply Codes
    • ID Numbers
  • UFTP 5250 Interface
    • Menus
    • Work Withs
    • Details
    • Prompting
    • On-line Help
  • UFTP Windows Interface
    • Logon
    • Logon
    • Browsers
    • Detailers
    • Search and Selections
    • Other Interfaces

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Definitions

  • Sites
  • Scripts
  • Script Commands
  • Command Execution Validation Rules
  • Sessions
  • Session Logs
  • Session Log Detail
  • System Variables
  • FTP Server User IDs
  • Override Files
  • FTP Client Types
  • FTP Server Types
  • FTP Commands
  • FTP Server Reply Codes
  • ID Numbers


Site (Definition)

UFTP Site (Definition)

A UFTP Site is used to define the FTP Site and associated connection information and preferences for that site in the UFTP System.

A single UFTP Site can be used by one or multiple UFTP Sessions and subsequently during the Session Executions.

Related Topics:
Defining A Site
Browsing Sites

Copyright © 1998-2002 Surround Technologies, LLC.


Script (Definition)

A Script is

Copyright © 1998-2002 Surround Technologies, LLC.


Script Command (Definition)

A Script Command is

Copyright © 1998-2002 Surround Technologies, LLC.


Command Execution Validation Rule (Definition)

A Command Execution Validation Rule is used to determine whether a commands execution was successful or not. A rule is specified on a UFTP Script Command. When that script command is used in a session execution, UFTP will use that rule to determine if the command was completed successfully.

It is only necessary to specify the rule if the session is configured to validate the outcome. However, since scripts can be used by different sessions, it is recommended that a rule be specified.


Session (Definition)

A Session combines specific Session information with an FTP Site to connect with and a script to perform to process a specific set of functionality through FTP.

It is a session in which you select when executing file transfers or other FTP functionality through UFTP.


UFTP Hosts

UFTP Session Execution History

A UFTP Session Execution History is an execution record of a particular Session. It contains information about the execution and its results. Detailed information about the execution can be viewed in the History Message Log.

Related Topics:
Reviewing a Session Execution History
Browsing Session Execution History

Copyright © 1998-2002 Surround Technologies, LLC.


Session Log Detail (Definition)

A Session History is

Copyright © 1998-2002 Surround Technologies, LLC.


FTP System Variable (Definition)

System Variable (Definition)

A system Variable is ...

Types of System Variables

Substitution Variable |
Date Variable |
Time Variable |
User Defined Variable | This System Variable can be used to define literal values that can be used inside of scripts. It is typically used for text that is static for most of the time, but may need to be changed periodically. For example, it is recommended that Directory names that are used to specify the location of files in multiple scripts be set up as a variable. If that directory changes in the future, you need only change it in one place for all the scripts to use the new directory.
External Script File Variable |
User Variable |

Related Topics:
Defining a System Variable
Browsing System Variables

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Server User ID (Definition)

An FTP Server User ID is ...

Related Topics:
Defining an FTP Server User
Browsing FTP Server Users

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Override File (Definition)

A File Type is used to identify a group of files used for a particular application.

For Example, you may use the following File Types:

Inventory | - Used to identify all files used in processing a company's inventory.
Invoices | - Used to identify all files used in processing invoices.
Orders | - Used to identify all files used in processing orders.

Related Topics:
Defining a File Type
Exchange File Definition

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Client Type (Definition)

A FTP Client Type is used to identify the type of FTP Client that the script is being executed with.

Related Topics:
Defining An FTP Client Type
Browsing FTP Client Types

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Server Type (Definition)

A FTP Server Type is used to identify the type of FTP Server that the script is being executed with.

Related Topics:
Defining An FTP server Type
Browsing FTP Server Types

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Command (Definition)

FTP Ccommand (Definition)

An FTP Command is used to .

Related Topics:
Defining An FTP Command
Browsing FTP Commands

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Server Reply Code (Definition)

A FTP Server Reply Code is used to .

Related Topics:
Defining An FTP Server Reply Code
Browsing FTP Server Reply Codes

Copyright © 1998-2002 Surround Technologies, LLC.


Reviewing Session Execution

Production Vs. Test Mode

An FTP Session can be executed in one of two modes:
1) Production Mode: This is the typical mode that a script will be executed in in which the FTP functionality and file transfers are actually performed.
2) Test Mode: Running a script in test mode can be very useful to test scripts without actually performing the production only functionality. For example, you can set physical File transfer commands to be Production only commands so that when the script is executed, all the connection, FTP site navigation and environment setup is performed, but the actual transfer are not.

Test and production mode flags are set on each individual Command. They can be set as either
1) Production Only:
2) Test Only:
3) Both Test and Production:

By setting these flags appropriately, the same exact sessions/scripts can be used for both testing and production runs of a Session.

To select the mode when running a session, ...

Related Topics:


ID Number (Definition)

An ID Number is used internally by the system to keep track of the different objects within the system. An objects ID number is system generated and can not me modified. It is displayed and made available for selection wherever the object is referenced. Some users find it easier and faster to reference something by an ID number rather than a name. When creating a new object, the ID number will be zero and then automatically generated when the the object is saved.

UFTP ID numbers are configured and maintained through the ID Number Maintenance. Information on how to do this, please refer to the UFTP User Guide for ID Number Configuration.

Some ID numbers can not be configured as they refer specifically to another Object. For Example, a Partner System refers specifically to a Partner and the ID number can not be configured.

The following Configurable ID numbers are used in the UFTP system:

Exchange Partner | -
Exchange File | -
File Type | -

The following NON-configurable ID numbers are used in the UFTP system:

Partner System | -
Partner Group | -
Exchange Log | -


UFTP 5250 Interface


UFTP Menus


UFTP Work Withs


UFTP Details


UFTP Prompting

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP On-line Help

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Windows

UFTP Windows Interface

Copyright © 1998-2002 Surround Technologies, LLC.


UFTP Logon


UFTP Browsers


UFTP Detailers


UFTP Search And Selections


UFTP Other Interfaces

Sub-browsers

Sub-browsers are simply a way of browsing and maintaining objects that are referenced by, used by, or belong to another object.

Quick Add

Quick add is an interface to allow you to quickly add references to other objects onto the current object being defined. The quick add interface is usually shown above the toolbar of a reference list in an objects detailer and is hidden when you first open or create the object. To display the Quick Add interface, simple press the Quick Add button.


UFTP Web Interface


Installing UFTP

Packing Checklist

Prerequisites

Getting the latest software from the Surround Technologies Web Site

UFTP for the AS/400 Software Installation
Installing from the CD-ROM in the AS/400 optical drive
Installing using save files transferred using FTP
If you already have LANSA on the AS/400
Installing additional UFTP environments

UFTP for the AS/400 Software Upgrade

UFTP Windows Client Software Installation

UFTP for the Web Software Installation

Entering License Codes

Copyright © 1998-2003 Surround Technologies, LLC.


Packing Checklist

UFTP Installation CD
The Installation CD should contains the following folders:
\ | Root directory
AUTORUN.EXE AUTORUN.INF STUFTP.ico | Windows CD Drive Auto Run files
Contents.txt | CD Contents text File
QDSETMAP QTEMP ST@DTALI ST@PGMLI ST@QGPL STFTLDAT STFTLPGM STGPLUFT STUFTPIN | iSeries Installation Software in iSeries Optical Drive format
\Documentation | Documentation for UFTP
\EPC | Expedited Program Changes
\Installation | The Windows Installation Interface
\iSeries FTP | Contains the iSeries Software in Save Files for FTP format
\WIN | Windows Client Software


Installation Prerequisites

AS/400

  • AS/400 must be a RISC (Reduced Instruction Set) machine.
  • The AS/400 operating system must be at Version 4 Release 4 or higher.
  • UFTP Windows client requires TCP/IP connectivity with the server using Port 4545.

Windows

  • Windows 98SE, NT, 2000, XP
  • UFTP Windows client requires TCP/IP connectivity with the server using Port 4545.

UNIX

Web

Copyright © 1998-2002 Surround Technologies, LLC.


Getting the latest software from the Surround Technologies Web Site

The latest Version of UFTP and all supporting documentation can be downloaded from the Surround Technologies Web Site at www.surroundtech.com. To get and use this software:

  • Download the Zip Files from the Internet at www.surroundtech.com.
  • Make folders on your hard drive "C:\UFTP", "C:\UFTP\WIN", "C:\UFTP\iSeries", and "C:\UFTP\Guides" or some other temporary folders like that.
  • Extract the Zip files to the appropriate folder.

Documentation:

  • Extract the latest guides from their respective Zip Files to the C:\UFTP\Guides or other temporary Folder from previous step. One .chm file will be extracted for each guide.
  • The Guides can be put anywhere and accessed without the UFTP Software.
  • The UFTP Windows Software references the files in the %install dir%\X_LANSA\X_FTL\Source folder where the %install dir% is where you installed the software. This is typically "C:\Program Files\Surroundtech". The Latest Guides must be put there in order for UFTP to reference the correct guides.

Windows Installation:

  • Extract the Windows Installation Zip File (usually uftp4wn.zip) to the C:\UFTP\WIN or other temporary Folder from previous step. Six Files will be extracted.
  • Execute the Setup.exe program and follow the on screen instructions.

iSeries Initial Installation:

  • Extract the iSeries Installation Zip File (usually uftp4is.zip) to the C:\UFTP\iSeries or other temporary Folder from previous step. Six Files will be extracted.
  • Follow the instructions for Installing using save files transferred using FTP.

iSeries Full Upgrade:

  • Extract the iSeries Upgrade Zip File (usually uftpimp.zip) to the C:\UFTP\iSeries or other temporary Folder from previous step. One File, UFTPIMP.SAVF will be extracted. This is a Save File that contains the objects for the upgrade.
  • Follow the Upgrade instructions in UFTP for the AS/400 Software Upgrade.

iSeries EPC Updates:

  • Extract the iSeries Update Zip Files (usually UFTP4ISUnn.zip where nn is the EPC Number) to the C:\UFTP\iSeries or other temporary Folder from previous step. One File, UFTP4ISUnn.SAVF will be extracted. This is a Save File that contains the objects for the update.
  • Follow the EPC Update instructions in UFTP for the AS/400 Software Upgrade.


UFTP for the AS/400 Software Installation

UFTP for the iSeries Software Installation

UFTP can be installed right from the iSeries Optical Drive using the shipped CD-ROM or the software can be transferred to the iSeries using FTP and installed.

Installing from the CD-ROM in the AS/400 optical drive

Installing using save files transferred using FTP

ATTENTION: Existing LANSA Shops
UFTP was developed using the LANSA Development tools. The Full AS/400 UFTP installation contains a production version of this LANSA software that may conflict with your current installation.

If you are not sure if you have LANSA on your AS/400 system, check to see if a Data area, DC@A01, exists on your machine. If it does, then you have LANSA.

If you already have LANSA on the AS/400

UFTP can be installed multiple times on the same system.

Installing additional UFTP environments

Copyright © 1998-2002 Surround Technologies, LLC.


Installing from the CD-ROM in the AS/400 optical drive

Installing from the CD-ROM in the iSeries optical drive

Use the following procedures to install UFTP on your iSeries Server.

Step 1: Insert CD into the iSeries optical drive.
Step 2: Sign-on the iSeries as QSECOFR.
Step 3: Load and Run the installation program.
Use the OS/400 LODRUN Command. Use the Prompt Key if you are unsure of the parameters
Device: Optical Drive Device name (Default is *OPT which uses OPT01)
Step 4: You will be presented with the UFTP Installation Options:
Create QOTHPRDOWN User Profile? | *YES
Start Universal FTP Install? | *YES
Device: | Optical Drive Device name (Usually OPT01)
Setup Listener Subsystem/Job? | *YES

This installation automatically creates and loads the libraries needed to use UFTP on the AS/400.
It also creates the QOTHPRDOWN User Profile that can be used to administer the UFTP System.
Step 5: Next you must enter the UFTP License Keys and the System will be ready to use.
Refer to the Entering UFTP License Codes section of this Guide.

An alternative to using LODRUN (if it is not supported on your machine)

Step 1: Insert CD into the iSeries optical drive.
Step 2: Sign-on the iSeries as QSECOFR.
Step 3: Restore the Installation Program from the CD.
Use the Restore Object Command. Use the Prompt Key if you are unsure of the Parameters.
Objects: | *ALL
Saved Library: | STUFTPINS
Device: | Optical Drive Device name (Usually OPT01)
Optical File | STUFTPIN
Restore to Library: | QTEMP

Example:
RSTOBJ OBJ(*ALL) SAVLIB(STUFTPINS) DEV(OPT01) OPTFILE(STUFTPIN) RSTLIB(QTEMP)
This will restore 3 Objects to the QTEMP Library
Step 4: Run the installation program.
Use the UFTP Installation Command, STRUFTPINS, in the QTEMP Library to install UFTP. Use the Prompt Key if you are unsure of the parameters.
Create QOTHPRDOWN User Profile? | *YES
Start Universal FTP Install? | *YES
Device: | Optical Drive Device name (Usually OPT01)
Setup Listener Subsystem/Job? | *YES

This installation automatically creates and loads the libraries needed to use UFTP on the AS/400.
It also creates the QOTHPRDOWN User Profile that can be used to administer the UFTP System.
Step 5: Next you must enter the UFTP License Keys and the System will be ready to use.
Refer to the Entering UFTP License Codes section of this Guide.

Copyright © 1998-2003 Surround Technologies, LLC.


Installing using save files transferred using FTP

On the iSeries:

  • Create the UFTP Program and Data Libraries.
    Use the OS/400 CRTLIB command. Use the prompt key if you are unsure of the parameters.
    ST LANSA Program Library File
    Library Name: ST@PGMLIB
    Library Type: *PROD
    Description/Text: ST LANSA Program Library
    ST LANSA Data Library File
    Library Name: ST@DTALIB
    Library Type: *PROD
    Description/Text: ST LANSA Data Library
    ST LANSA QGPL Objects Library File
    Library Name: ST@QGPL
    Library Type: *PROD
    Description/Text: ST LANSA QGPL Objects Library
    ST UFTP Program Library File
    Library Name: STFTLPGM
    Library Type: *PROD
    Description/Text: ST UFTP Program Library
    ST UFTP Data Library File
    Library Name: STFTLDAT
    Library Type: *PROD
    Description/Text: ST UFTP Data Library
    Surround Tech General Purpose Library
    Library Name: STGPL
    Library Type: *PROD
    Description/Text: Surround Tech General Purpose Library

  • Create the Temporary UFTP Installation Library.
    Use the OS/400 CRTLIB command. Use the prompt key if you are unsure of the parameters.
    Library Name: STINSTALL
    Library Type: *PROD
    Description/Text: ST Installation Library

  • Create the Six UFTP Save Files (If the Save Files already exist, clear them with the CLRSAVF command.)
    Use the OS/400 CRTSAVF command. Use the prompt key if you are unsure of the parameters.
    ST LANSA Program Library Save File
    Save File: ST@PGMLIB
    Library:   STINSTALL
    Text 'description': ST LANSA Program Library
    ST LANSA Data Library Save File
    Save File: ST@DTALIB
    Library:   STINSTALL
    Text 'description': ST LANSA Data Library
    ST LANSA QGPL Objects Library Save File
    Save File: ST@QGPL
    Library:   STINSTALL
    Text 'description': ST LANSA QGPL Objects Library
    ST UFTP Program Library Save File
    Save File: STFTLPGM
    Library:   STINSTALL
    Text 'description': ST UFTP Program Library
    ST UFTP Data Library Save File
    Save File: STFTLDAT
    Library:   STINSTALL
    Text 'description': ST UFTP Data Library
    ST General Purpose Library Save File
    Save File: STGPL
    Library:   STINSTALL
    Text 'description': ST General Purpose Library

On the PC:

  • FTP the AS/400 Save Files from your PC to your AS/400.
    Start an FTP session to your AS/400 sign on and execute the following commands:
    bin Set the transfer method to BINARY
    bin       Set the transfer method to BINARY
    cd stinstall
                  Change to the STINSTALL directory
    lcd << PC Path and folder of Save Files >>
              Change the Local Directory to the appropriate folder
              ie: "C:\UFTP\iSeries" or "D:\iSeries FTP"
    put ST@PGMLIB ST@PGMLIB
                 Put the ST@PGMLIB save file on the AS/400
    put ST@DTALIB ST@DTALIB
                 Put the ST@DTALIB save file on the AS/400
    put ST@QGPL ST@QGPL
                 Put the ST@QGPL save file on the AS/400
    put STFTLPGM STFTLPGM
                 Put the STFTLPGM save file on the AS/400
    put STFTLDAT STFTLDAT
                 Put the STFTLDAT save file on the AS/400
    put STGPL STGPL
                 Put the STGPL save file on the AS/400
    quit      Sign off of the FTP session

On the iSeries:

  • Restore the UFTP Libraries from the Save Files
    Use the OS/400 command RSTOBJ Command. Use the prompt key if you are unsure of the parameters.
    ST LANSA Program Library Save File
    Objects:           *ALL
    Saved Library:     ST@PGMLIB
    Device:            *SAVF
    Save File:         ST@PGMLIB
    Save File Library: STINSTALL
    ST LANSA Data Library Save File
    Objects:           *ALL
    Saved Library:     ST@DTALIB
    Device:            *SAVF
    Save File:         ST@DTALIB
    Save File Library: STINSTALL
    ST LANSA QGPL Objects Library Save File
    Objects:           *ALL
    Saved Library:     ST@QGPL
    Device:            *SAVF
    Save File:         ST@QGPL
    Save File Library: STINSTALL
    ST UFTP Program Library Save File
    Objects:           *ALL
    Saved Library:     STFTLPGM
    Device:            *SAVF
    Save File:         STFTLPGM
    Save File Library: STINSTALL
    ST UFTP Data Library Save File
    Objects:           *ALL
    Saved Library:     STFTLDAT
    Device:            *SAVF
    Save File:         STFTLDAT
    Save File Library: STINSTALL
    Surround Tech General Purpose Library
    Objects:           *ALL
    Saved Library:     STGPLUFTP4
    Device:            *SAVF
    Save File:         STGPL
    Save File Library: STINSTALL
    Restore to Library: STGPL << Note: additional Parameter >>

    The commands for this are:

     RSTOBJ OBJ(*ALL) SAVLIB(ST@PGMLIB) DEV(*SAVF) SAVF(STINSTALL/ST@PGMLIB) RSTLIB(ST@PGMLIB)
 RSTOBJ OBJ(*ALL) SAVLIB(ST@DTALIB) DEV(*SAVF) SAVF(STINSTALL/ST@DTALIB) RSTLIB(ST@DTALIB)
 RSTOBJ OBJ(*ALL) SAVLIB(STFTLPGM)  DEV(*SAVF) SAVF(STINSTALL/STFTLPGM)  RSTLIB(STFTLPGM)
 RSTOBJ OBJ(*ALL) SAVLIB(STFTLDAT)  DEV(*SAVF) SAVF(STINSTALL/STFTLDAT)  RSTLIB(STFTLDAT)
 RSTOBJ OBJ(*ALL) SAVLIB(ST@QGPL)   DEV(*SAVF) SAVF(STINSTALL/ST@QGPL)   RSTLIB(ST@QGPL)
 RSTOBJ OBJ(*ALL) SAVLIB(STGPLUFT4) DEV(*SAVF) SAVF(STINSTALL/STGPL)     RSTLIB(STGPL)

You have now created and loaded the libraries needed to use UFTP on the AS/400.

Next you must enter the UFTP License Keys and the System will be ready to use.
Refer to the Entering UFTP License Codes section of this Guide.


If you already have LANSA on the AS/400

UFTP was developed using the LANSA Development tools. The Full AS/400 UFTP installation contains a production version of this LANSA software that may conflict with your current installation.

If you are not sure if you have LANSA on your AS/400 system, check to see if a Data area, DC@A01, exists on your machine. If it does, then you have LANSA.

If you DO NOT have LANSA then you do not need to worry about these procedures.

If you do already have LANSA on your AS/400 you can install UFTP in 2 ways:

  1. You can install UFTP and the associated LANSA environment. This will create a separate LANSA environment from your existing LANSA environment. UFTP can be safely installed and both LANSA environments can coexist as long as the Libraries do not conflict. The Libraries used for UFTP are:
    ST@PGMLIB | this is the LANSA Program Library (the standard LANSA install uses DC@PGMLIB).
    ST@DTALIB | this is the LANSA Data Library (the standard LANSA install uses DC@DTALIB).
    ST@QGPL | this is the LANSA QGPL Library (the standard LANSA install uses QGPL).
    STFTLPGM | this is the UFTP Program Library.
    STFTLDAT | this is the UFTP Data Library.
    STGPL | this is the Surround Tech general Purpose Library.

    Note: This is a production run time environment only and cannot be used to edit, view, or even compile code. In order to use this LANSA environment, these libraries must exist in your library list ahead of any other LANSA environment libraries.
  2. Set up a partition for UFTP in your existing LANSA environment and install UFTP into that partition.
    Note: the LANSA environment must be at LANSA Version 9.0 or later.

Option 1

If you choose Option 1 to install UFTP and the associated LANSA environment, follow the installation instructions in the previous sections.

Option 2

If you choose Option 2 to install UFTP into your existing LANSA environment, use the instruction below.

Set up UFTP LANSA Partition

Step 1: | Create Program and Data Libraries. Use the OS/400 CRTLIB command. Use the prompt key if you are unsure of the parameters. ST UFTP Program Library Library Name: FTLPGM Library Type: *PROD Description/Text: ST UFTP Program Library ST UFTP Data Library Library Name: FTLDAT Library Type: *PROD Description/Text: ST UFTP Data Library
Step 2: | Create an FTL Partition in LANSA by following the LANSA instructions for creating a partition. Set the following Parameters when creating the Partition Partition Identifier: FTL Partition Description: Universal FTP Interface System Module Library: FTLPGM Unique Prefix: F (This is suggested. Any available prefix can be used) Security Officer: Usually QSECOFR or QOTHPRDOWN Default file library: FTLDAT Include into library list: YES Multilingual Support: YES Leave the rest as the default values.
Step 3: | Add Multilingual Languages by following the LANSA instructions for Working with partition multilingual attributes. English Language: ENG Language Description: English Default Language: Yes French Language: FRA Language Description: French Note: The French Language is not required, but it is recommended by LANSA to have at least 2 languages in a Multilingual Partition

Install UFTP Programs

Follow the instructions for UFTP for the iSeries: FULL Software Upgrade

You have now created and loaded the libraries needed to use UFTP on the AS/400.

Next you must enter the UFTP License Keys and the System will be ready to use.
Refer to the Entering UFTP License Codes section of this Guide.

Copyright © 1998-2003 Surround Technologies, LLC.


Installing additional UFTP environments

UFTP can be installed multiple times. This is often useful when setting up testing environments or for breaking users into there own individual environment.

There are multiple ways of doing this, however the easiest is to set up another partition within the LANSA environment. This configuration requires 2 additional libraries per LANSA Partition to be created.
Our recommended Partition and Library is as follows:
STpppPGM - The Program library. STFTLPGM for the standard UFTP installation
STpppDAT - The Data Library. STFTLDAT for the standard UFTP installation
Where ppp is the Partition Identifier. The standard UFTP installation uses FTL for UFTP Live. For additional environments we recommend you use use FT1, FT2, FT3, etc.

To set up another environment, follow the instructions below. For the Instructions, FT1 was used for the Partition Identifier, and STFT1PGM and STFT1DAT were used as the Program and Data Libraries. These are just being used as an example and can be replaced with whichever you choose to use for your needs.

Set up UFTP LANSA Partition

  • Sign onto the AS/400 as the System Security Officer, QSECOFR.
  • Create Program and Data Libraries.
    Use the OS/400 CRTLIB command. Use the prompt key if you are unsure of the parameters.
    ST UFTP Program Library
    Library Name:     STFT1PGM
    Library Type:     *PROD
    Description/Text: ST UFTP 1 Program Library
    ST UFTP Data Library
    Library Name:     STFT1DAT
    Library Type:     *PROD
    Description/Text: ST UFTP 1 Data Library
  • Create an FTL Partition in LANSA by following the LANSA instructions for creating a partition.
    Set the following Parameters when creating the Partition
    Partition Identifier:  FTL
    Partition Description: Universal FTP Interface System
    Module Library:        FTLPGM
    Unique Prefix:         F (This is suggested. Any available prefix can be used)
    Security Officer:      Usually QSECOFR or QOTHPRDOWN
    Default file library:  FTLDAT
    Include into library list: YES
    Multilingual Support:  YES
    Leave the rest as the default values.
  • Add Multilingual Languages by following the LANSA instructions for Working with partition multilingual attributes.
    English
    Language: ENG
    Language Description English
    Default Language Yes
    French
    Language: FRA
    Language Description French
    Note: The French Language is not required, but it is recommended by LANSA to have at least 2 languages in a Multilingual Partition
  • Create a new UFTP Partition in LANSA.
    Use the LANSA Command to enter LANSA in the FTL Partition.
    LANSA REQUEST(MENU) PARTITION('FTL') DEVELOPER(A) ALLOW_MSGS(Y)
    • Select the “Work with Housekeeping Tasks” menu option.
    • Select the “Create or change system partition definitions” menu option.
    • Press F6=Add/Create to create a new partition
    • Press Enter to get past the “Note about Partitions”
    • Set the following Parameters when creating the Partition
      Partition Description: Universal FTP Interface System
      Module Library: STFT1PGM
      Unique Prefix: 1 (This is suggested. Any available prefix can be used)
      Security Officer: Usually QSECOFR or QOTHPRDOWN
      Default file library: STFT1DAT
      Include into library list: YES
      Multilingual Support: YES
      Leave the rest as the default values and Press enter through the following screens until you return to the Housekeeping Menu.
    • Use F12 repeatedly until you have backed all the way out of LANSA.
  • UFTP is set up to be multilingual. Even if you opt not to use these facilities, you must add at least two Multilingual Languages for the system to function properly.
    Use the LANSA Command to enter LANSA in the new Partition.
    LANSA REQUEST(MENU) PARTITION('FT1') DEVELOPER(A) ALLOW_MSGS(Y)
    • Select the “Work with Housekeeping Tasks” menu option.
    • From the Housekeeping Menu, Select the “Work with partition multilingual attributes” menu option
    • Press F6=Add/Create to create a new Language.
      You must do this twice, once for each language.
      Set the following Parameters when creating the Languages
      English
      Language: ENG
      Language Description English
      Default Language Yes
      French
      Language: FRA
      Language Description French
      Note: The French Language is not required, but it is recommended by LANSA to have at least 2 languages in a Multilingual Partition
    • Use F12 repeatedly until you have backed all the way out of LANSA.

Install UFTP Programs

  • Import the UFTPIMP Save file into the FT1 Partition
    Use the OS/400 SBMJOB command with the LANSA provided OS/400 LANSA command. Use the prompt key if you are unsure of the parameters
    SBMJOB RQSDTA('LANSA REQUEST(IMPORT) PARM02(''STGPL/UFTPIMP'') PARM03(your workstation message queue) PARM04("AS/400") PARM06(Y) PARM07(*ALL) PARM09(NO) PARTITION(FT1)')
    WARNING: Make sure you select the appropriate Partition Identifier
    Depending on your AS/400 or iSeries, this job can take a fair amount of time. When the import is complete, review the Job Log and Import Run Report to make sure it was successful. There may be many Warnings, but must be Zero Fatal.

    Note: you can also follow the instructions for performing a LANSA Import in the LANSA manuals to import the UFTPIMP Save file into the FTL Partition manually.
  • An inquiry message will be sent asking for the Library to install the Data.
    Reply with the Data Library that you had created - STFT1DAT for this example.
  • When the import is complete, review the Job Log to make sure it was successful. There may be many Warnings, but zero Fatal.

You have now created and loaded the libraries needed to use UFTP in another environment on the AS/400.

Next you must enter the UFTP License Keys and the System will be ready to use.
Refer to the Entering UFTP License Codes section of this Guide.
The same key that was used for the primary installation will also work for additional installations on the same machine. You do not need to enter the LANSA keys again.


Set up the ST Listener

To prepare the iSeries for TCP/IP and Surround Technologies’ Workstation Products, a Listener job must be started.
(Note: if you are already using the ‘LANSA’ Listener Job for other systems, this step may not be needed)

  • Sign-on to the iSeries as QSECOFR
  • Create the ST Listener Job Queue
    CRTJOBQ JOBQ(ST@QGPL/STLISTEN) TEXT('ST Listener Job Queue')
  • Create the ST Listener Job Description
    CRTJOBD JOBD(ST@QGPL/STLISTEN) JOBQ(ST@QGPL/STLISTEN) TEXT('ST Listener Job Description') USER(user profile for Jobd) RQSDTA('SBMJOB CMD(ST@PGMLIB/LANSA REQUEST(STRLISTEN)) JOB(LISTENER) JOBQ(STLISTEN)')
  • Create the ST Listener Subsystem Description
    CRTSBSD SBSD(ST@QGPL/STLISTEN) POOLS((1 *BASE)) TEXT('ST Server Listener Subsystem')
  • Create the ST Listener Job Queue Entry
    ADDJOBQE SBSD(ST@QGPL/STLISTEN) JOBQ(ST@QGPL/STLISTEN) MAXACT(*NOMAX) SEQNBR(10)
  • Create the ST Listener Auto-start Job Entry
    ADDAJE SBSD(ST@QGPL/STLISTEN) JOB(LISTENER) JOBD(ST@QGPL/STLISTEN)
  • Create two Routing Entries for the STLISTEN Subsystem
    ADDRTGE SBSD(ST@QGPL/STLISTEN) SEQNBR(10) CMPVAL(QCMDI) PGM(QCMD) CLS(QINTER)
    ADDRTGE SBSD(ST@QGPL/STLISTEN) SEQNBR(999) CMPVAL(*ANY) PGM(QCMD) CLS(QINTER)

After the setup is complete, start the ST Listener Jobs by simply starting up the Sub-system with the following command:

STRSBS SBS(STLISTEN)

The Job LISTENER should start automatically in the Subsystem which should in turn start up a TP00000001 Transaction Processing Job. Each time someone uses the UFTP client a Transaction Processing job will be started. The number at the end of the Job name will be incremented by one each time. These jobs end automatically when the user disconnects.

System Startup Recommendation: To ensure that the Listener is always up and available, it is recommended to include the start of the sub-system in your System Startup procedures.

Copyright © 1998-2003 Surround Technologies, LLC.


Configuring Your Library List

To use UFTP, three libraries must be present in your library list: STGPL, ST@QGPL, and ST@PGMLIB.

The easiest method to support all the facets of UFTP is to add it to the Default User Library List. To do this, you must change the System Variable QUSRLIBL using the OS/400 Command

WRKSYSVAL SYSVAL(QUSRLIBL)

Then use Option 2=Change to change the system value. Add the three libraries, STGPL, ST@QGPL and ST@PGMLIB in the available spots.

If it is not possible to add the libraries to the QUSRLIBL system value, then the following will be required to use the system.

Add the Libraries to work Interactively: Add the 3 libraries to your library list with the EDTLIBL Command. You can also set up a small CL program to add the libraries to your library list using the ADDLIBLE command.

Use a CL Program to add the Libraries: A small CL Program with the following commands can be used to add these libraries to the library list.
ADDLIBLE LIB(STGPL) POSITION(*AFTER QTEMP)
ADDLIBLE LIB(ST@DTALIB) POSITION(*AFTER QTEMP)
ADDLIBLE LIB(ST@PGMLIB) POSITION(*AFTER QTEMP)
For scheduled jobs or inline programming, these commands can also be used just prior to the STRUFTP Command.

Use a Job Description: A job description can also be used to have these libraries automatically added when a user signs on. Many shops already use individual Job Descriptions per user already, which will actually override the USRLIBL values as well. A new job description can be created using the CRTJOBD command and existing Job Descriptions can be changed using the CHGJOBD command. The libraries, QTEMP, STGPL, ST@QGPL and ST@PGMLIB, must be added to the Job Descriptions Initial Library List.

Starting the STLISTEN Subsystem: Change the STLISTEN Job Description to include the appropriate Libraries. The JOBD is set up with an initial Library List of *SYSVAL. You will need to change the initial Library List using the OS/400 Command CHGJOBD ST@QGPL/STLISTEN and Pressing F4 to Prompt the parameters. Then press F10 for Additional Parameters, and page down once. Put a '+' on the Initial Library List Parameter and press to get more values. Enter in the QTEMP, STGPL, ST@QGPL and ST@PGMLIB Libraries.
Note: If this method is used, each UFTP Windows Client User will also need to use a Job Description with these Libraries in it.


UFTP for the iSeries: Software Upgrades

The Golden Rule
Before performing any upgrades always remember the Golden Rule: Back up.
Back up the following libraries:

LANSA Program Library – usually ST@PGMLIB or DC@PGMLIB

LANSA Data Library – usually ST@DTALIB or DC@DTALIB

LANSA General Purpose Library – usually ST@QGPL or QGPL

UFTP Program Library – usually STFTLPGM or FTLPGM

UFTP Data Library – usually STFTLDAT or FTLDAT

ST General Purpose Library – STGPL

The UFTP Upgrades can be installed from the iSeries Optical Drive using the shipped CD-ROM or the software can be transferred to the iSeries using FTP and installed.

There are two types of Upgrades provided:

  1. Full Software Upgrade: The Full Software Upgrade contains all of the previous upgrades to its release. It is the required upgrade for major Version upgrades and recommended for those that have not kept up to date with all the EPCs.
  2. Expedited Program Changes (EPCS): Expedited Program Changes, or EPCs, are the incremental version upgrades and enhancements. Unless otherwise documented, they must be installed in sequential order

Clients using UFTP Versions V3.x or earlier should also refer to V3.x to V4.x Upgrade as well for additional upgrade information

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP for the iSeries: FULL Software Upgrade

The Golden Rule
Before performing any upgrades always remember the Golden Rule: Back up.
Back up the following libraries:

LANSA Program Library – usually ST@PGMLIB or DC@PGMLIB

LANSA Data Library – usually ST@DTALIB or DC@DTALIB

LANSA General Purpose Library – usually ST@QGPL or QGPL

UFTP Program Library – usually STFTLPGM or FTLPGM

UFTP Data Library – usually STFTLDAT or FTLDAT

ST General Purpose Library – STGPL

The Full Software Upgrade contains all of the previous upgrades to its release. It is the required upgrade for major Versions and recommended for those that have not kept up to date with all the EPCs.

Use the following procedures to install the UFTP Full Software Upgrade on your iSeries Server

Step 1: Load the Upgrade Files onto your 400.

From CD-ROM (UFTP Installation CD Disk 2):

Create the UFTPUPGD Library if it does not already exist

CRTLIB LIB(UFTPUPGD) TEXT('UFTP Upgrade Files')

Restore the Upgrade objects from the CD-ROM to the Upgrade Library

RSTOBJ OBJ(*ALL) SAVLIB(UFTPUPGD) DEV(OPT01) OPTFILE(UFTPUPGD)

This will restore the save files UFTPIMP, UFTP4ISULN, UFTP4ISUGP, UFTP4ISUFW, UFTP4ISUUW, and UFTP4ISUDT into the UFTPUPGD Library.

Using FTP:

Create the UFTPUPGD Library if it does not already exist

CRTLIB LIB(UFTPUPGD) TEXT('UFTP Upgrade Files')

Create the Upgrade Save File on your 400 in the UFPTUPGD Library.

CRTSAVF FILE(UFTPUPGD/UFTPIMP) TEXT('ST UFTP Full Import Save File')

CRTSAVF FILE(UFTPUPGD/UFTP4ISULN) TEXT('ST@PGMLIB objects: Ver 3.x to Ver 4.x Upgrade')

CRTSAVF FILE(UFTPUPGD/UFTP4ISUGP) TEXT('STGPL objects')

CRTSAVF FILE(UFTPUPGD/UFTP4ISUFW) TEXT('UFTP/SFE Windows Framework')

CRTSAVF FILE(UFTPUPGD/UFTP4ISUUW) TEXT('UFTP/SFE 5250 Framework')

CRTSAVF FILE(UFTPUPGD/UFTP4ISUDT) TEXT('UFTP/SFE Version 4.x Data Initialization')

Start an FTP session to your AS/400, sign on, and execute the following FTP commands:
bin Set the transfer method to BINARY
   bin       Set the transfer method to BINARY
   cd uftpupgd  Change to the STGPL directory, or which ever directory you put the Save File in
   lcd << PC Path and folder of Save Files >>
             Change the Local Directory to the appropriate folder
             ie: C:\UFTP or D:\AS400F~1)
   put UFTPIMP.SAVF UFTPIMP
   put UFTP4ISULN.SAVF UFTP4ISULN
   put UFTP4ISUGP.SAVF UFTP4ISUGP
   put UFTP4ISUFW.SAVF UFTP4ISUFW
   put UFTP4ISUUW.SAVF UFTP4ISUUW
   put UFTP4ISUDT.SAVF UFTP4ISUDT
             Put the the save file on the AS/400
   quit      Sign off of the FTP session

Step 2: Sign-on the iSeries as the System Security Officer, QSECOFR.
Step 3: Make sure ST@PGMLIB, ST@QGPL, and STGPL are in your library list.
Step 4: Delete $$ Temporary files from the UFTP Data library. For standard Installations this is either STFTLDAT or FTLDAT. The $$ Temporary Files are created as backups of your existing data when upgrades are performed. These backups are then used to restore the data back into your system after the upgrade.
Step 5: Import the upgraded objects into the system using the command:

SBMJOB RQSDTA('LANSA REQUEST(IMPORT) PARM02(''UFTPUPGD/UFTPIMP'') PARM03(your workstation message queue) PARM04("AS/400") PARM06(Y) PARM07(*ALL) PARM09(NO) PARTITION(FTL)')

Depending on your AS/400 or iSeries, this job can take a fair amount of time. When the import is complete, review the Job Log and Import Run Report to make sure it was successful. There may be many Warnings, but must be Zero Fatal.
Note: you can also follow the instructions for performing a LANSA Import in the LANSA manuals to import the UFTPIMP Save file into the FTL Partition manually.

An inquiry message may be sent asking for the Library to install the Data.
Reply with the UFTP Data Library. For standard Installations this is either STFTLDAT or FTLDAT.

When the import is complete, review the Job Log to make sure it was successful. There may be many Warnings, but must be Zero Fatal.

Step 6: Restore the STGPL objects in the Save File to STGPL

RSTOBJ OBJ(*ALL) SAVLIB(QTEMP) DEV(*SAVF) SAVF(UFTPUPGD/UFTP4ISUGP) MBROPT(*ALL) ALWOBJDIF(*ALL) RSTLIB(STGPL)

UFTP V3.x Users: Restoring these objects automatically sets the STRUFP Command to Version 4.x. To reset it to Version 3.x, use the command:

SETUFSV VERSION(3)

To set it back to Version 4.x, simply set it to 4 useing the same command:

SETUFSV VERSION(4)
Step 7: Import the UFTP/SFE Windows Framework definitions into the system using the command:

CALL PGM(F4WIMPF) PARM(<Data Library> UFTP4ISUFW N)

Where:
<Data Library> is the UFTP Data Library, which is typically STFTLDAT or FTLDAT

Step 8: Import the UFTP/SFE Windows Framework definitions into the system using the command:

CALL PGM(UWWIMPF) PARM(<Data Library> UFTP4ISUUW)

Where:
<Data Library> is the UFTP Data Library, which is typically STFTLDAT or FTLDAT

Installing Shipped UFTP Definitions and Samples

Installing the shipped UFTP Definitions and samples is an optional step and will clear out all existing data in the UFTP Version 4.x system. To install, use the command:

CALL PGM(UFTPIMPF) PARM(<Data Library> UFTP4ISUDT Y)

Where:
<Data Library> is the UFTP Data Library, which is typically STFTLDAT or FTLDAT

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP for the iSeries: Expedited Program Changes (EPCs)

The Golden Rule
Before performing any upgrades always remember the Golden Rule: Back up.
Back up the following libraries:

LANSA Program Library – usually ST@PGMLIB or DC@PGMLIB

LANSA Data Library – usually ST@DTALIB or DC@DTALIB

LANSA General Purpose Library – usually ST@QGPL or QGPL

UFTP Program Library – usually STFTLPGM or FTLPGM

UFTP Data Library – usually STFTLDAT or FTLDAT

ST General Purpose Library – STGPL

Use these instructions to apply Expedited Program Changes (EPCs)

  • Sign onto the AS/400 as the System Security Officer, QSECOFR.
  • Make sure ST@PGMLIB, ST@QGPL, and STGPL are in your library list.
  • Delete $$ Temporary files from the UFTP Data library. For standard Installations this is either STFTLDAT or FTLDAT. The $$ Temporary Files are created as backups of your existing data when upgrades are performed. These backups are then used to restore the data back into your system after the upgrade.
  • Create the UFTP4ISUnn Save File on your 400 in the STGPL Library.
    CRTSAVF FILE(UFTPUPGD/UFTP4ISUnn) TEXT('UFTP/SFE EPC nn')
  • FTP the AS/400 Save Files from your PC to your AS/400.
    Start an FTP session to your AS/400 sign on and execute the following commands:
    bin Set the transfer method to BINARY
    bin       Set the transfer method to BINARY
    cd stgpl   Change to the STGPL directory, or which ever directory you put the Save File in
    lcd << PC Path and folder of Save Files >>
              Change the Local Directory to the appropriate folder
              ie: C:\UFTP or D:\AS400F~1)
    put UFTP4ISUnn.SAVF UFTP4ISUnn
                 Put the UFTP4ISUnn save file on the AS/400
    quit      Sign off of the FTP session
  • Import the upgraded objects into the system using the command:
    SBMJOB RQSDTA('LANSA REQUEST(IMPORT) PARM02(''STGPL/UFTP4ISUnn'') PARM03(your workstation message queue) PARM04("AS/400") PARM06(Y) PARM07(*ALL) PARM09(NO) PARTITION(FTL)')
    Depending on your AS/400 or iSeries, this job can take a fair amount of time. When the import is complete, review the Job Log and Import Run Report to make sure it was successful. There may be many Warnings, but must be Zero Fatal.
    Note: you can also follow the instructions for performing a LANSA Import in the LANSA manuals to import the UFTP4ISUnn Save file into the FTL Partition manually.
  • An inquiry message may be sent asking for the Library to install the Data.
    Reply with the UFTP Data Library. For standard Installations this is either STFTLDAT or FTLDAT.
  • When the import is complete, review the Job Log to make sure it was successful. There may be many Warnings, but must be Zero Fatal.

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP for the iSeries: Software Upgrades

The Golden Rule
Before performing any upgrades always remember the Golden Rule: Back up.
Back up the following libraries:

LANSA Program Library – usually ST@PGMLIB or DC@PGMLIB

LANSA Data Library – usually ST@DTALIB or DC@DTALIB

LANSA General Purpose Library – usually ST@QGPL or QGPL

UFTP Program Library – usually STFTLPGM or FTLPGM

UFTP Data Library – usually STFTLDAT or FTLDAT

ST General Purpose Library – STGPL

Step 1: Perform Steps 1 - 4 on UFTP for the iSeries: FULL Software Upgrade
Step 2: Upgrade the ST@PGMLIB Program objects:

RSTOBJ OBJ(*ALL) SAVLIB(ST@PGMLIB) DEV(*SAVF) SAVF(UFTPUPGD/UFTP4ISULN) MBROPT(*ALL) ALWOBJDIF(*ALL) RSTLIB(ST@PGMLIB)

Objects upgraded are:
   Object Name Object Type Library
   ENDIF          *CMD     ST@PGMLIB
   DC@P3506       *PGM     ST@PGMLIB
   BI@P020        *PGM     ST@PGMLIB
   LXXP0020       *PGM     ST@PGMLIB
   LXXP0030       *PGM     ST@PGMLIB
   LXXP0040       *PGM     ST@PGMLIB

Step 3: Perform the remaining steps Steps (from Step 5 on) for UFTP for the iSeries: FULL Software Upgrade

Switching between UFTP Version 3.x and 4.x:

It is possible to use both UFTP Versions 3.x and 4.x simultaneously. Each version has its own access command:

STRUFTP3 - Version 3 Start UFTP Command
STRUFTP4 - Version 4 Start UFTP Command

The primary Start UFTP, STRUFTP, command can be set to invoke either Version 3.x or 4.x by using the "Set UFTP Default Start Version" Command as follows:

SETUFSV VERSION(3)

SETUFSV VERSION(4)

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Windows Client Software Installation

Use the following instructions to install UFTP onto a Windows PC.

  • Install the UFTP Windows Client Software
    Using the UFTP Installation CD
    Insert the CD in the PC CD ROM. An installation Screen should automatically be displayed in your default Web Browser. Click the "Install UFTP" Button.
    If Autorun is not available on your pc, you can execute the Setup.exe program located in the WIN folder of the CD.
    Follow the on screen installation instructions to install the software on the PC.

    Using the downloaded installation
    Execute the Setup.exe program in the folder with the downloaded installation programs (i.e.: C:\UFTP\WIN) and follow the on screen instructions.
    Follow the on screen installation instructions to install the software on the PC.
  • Set-up the Communication with the server
    • Execute the "Universal FTP v4.0 Browser" Shortcut that was installed on your desktop. A Universal FTP Logon window will be displayed.
    • Click on the "Administration" Button. A Communications Administrator window will be displayed.
    • Click on the New Button. A Host Route Information window will be displayed.
    • Enter the Host name and IP Address of the Server.

Partner LU name (Host)

This is the name for the Host Server to Which you will connect. (For example, the name might appear as APPN.S102ABCD.) This name is simply used to represent the fully qualified name.

For iSeries, if you are not sure of the Partner LU Name, sign on to your AS/400 and use the DSPNETA (Display Network Attributes) command to determine your local control point name (It is typically the serial number of your server such as S102ABCD, but can be changed, for example, to ST2ASDEV).

Tip:

When defining a system, it may save you time if you define it twice with different Partner LU Names. For example, if your AS/400 LU Name was MYHOST, then you could define it under the LU Names MYHOST and APPN.MYHOSTLU. The two entries should be identical in all other respects. Using this approach allows you to specify either the short name MYHOST, or the more formal name APPN.MYHOSTLU. For example, internally, UFTP will always use the formal name APPN.MYHOSTLU, so unless you specify the formal name it will fail to start. However, UFTP will link to the formal name from a shorter. The shorter name MYHOST is simpler and easier to remember for users, especially if the more formal name uses the serial number.

Fully qualified name

The fully qualified host name can be the IP address i.e. 123.123.123.123 or it can be the assigned TCP Host Name i.e. S102ABCD.APPN.SNA.IBM.COM for the Host Server.

Communications method

Enter SOCKET.


UFTP for the Web Software Installation

This feature is not available in the current release.


Entering License Codes

License Codes Required

Obtaining License Codes

Entering LANSA License Codes

Entering UFTP License Codes

Copyright © 1998-2002 Surround Technologies, LLC.


License Codes Required

Separate UFTP Licenses are required for the different UFTP products. The Product and License Types are listed in the following table.

Product Code | License Type | Product | Description
UFTP | AS400 | UFTP for the iSeries | Full Version of UFTP on the iSeries (AS/400)
UFTP | WINSERVER | UFTP for Windows | Full Version of UFTP on Windows
UFTP | WINCLIENT | UFTP Windows Client | Client only Version of UFTP for Windows
UFTP | WEBCLIENT | UFTP Web Browser Client | Client only Version of UFTP for Web Browsers
SFE | AS400 | SFE for the iSeries | Full Version of SFE on the iSeries (AS/400)
SFE | WINSERVER | SFE for Windows | Full Version of SFE on Windows
SFE | WINCLIENT | SFE Windows Client | Client only Version of SFE for Windows
SFE | WEBCLIENT | SFE Web Browser Client | Client only Version of SFE for Web Browsers

Refer to Entering UFTP License Codes.

If the Windows or Web clients are used, the following LANSA licenses may also be required. These licenses are included with the UFTP product.

Product Code | Product | Description
LXX | LANSA Super Server | LANSA Server Connectivity
WEB | LANSA Web Server | LANSA Web Connectivity Server

Refer to Entering LANSA License Codes.

In order to enter any of the License Codes, be sure the required libraries have been added to your Library List.


Obtaining License Codes

You will need to provide Surround Technologies with the machine details listed below.

Example:
     Server Information
     Company. . . . . . . . : Surround Technologies, LLC
     Server Type. . . . . . : AS/400
     Model. . . . . . . . . : 9406-170
     Feature Code . . . . . : 2289
     Serial Number. . . . . : 10-4MC0M

The Model can be obtained using the command DSPSYSVAL QMODEL, or by looking on the front of the AS/400 control Panel.

The Feature Code can be obtained using the command DSPSYSVAL QPRCFEAT, or by looking on the front of the AS/400 control Panel.

The Serial number can be obtained using the command DSPSYSVAL QSRLNBR, or by looking on the front of the AS/400 control Panel.

The Model and Feature code information can also be found by using the WRKHDWRSC (*PRC). The main card enclosure provides the Model and the system processor card provides the Feature. If there is any question, simply provide all the information on the Screen.

Getting iSeries info using UFTP:

This information can also be quickly accessed using the UFTP on the iSeries. After UFTP is installed use the License request from the Start UFTP Command to access the License Code Maintenance.

STRUFTP REQUEST(LICENSE)

From this screen, Press F10=Srv info to get to the Server Information Screen.


Entering LANSA License Codes

To enter the License Code into the LANSA System, sign onto the system as QSECOFR and use the License request from the LANSA Command:

LANSA REQUEST(LICENSE).

This will put you onto the Work With Licenses display.

Use Option 2 to enter a New License Code.

Use Option 1 to see existing License Codes.


Entering UFTP License Codes

UFTP License Code Maintenance can be accessed from either the iSeries Command Line using the STRUFTP command or from a Windows interface through the UFTP Help About Dialog.

From iSeries Command Line

Sign onto the iSeries as QSECOFR or with a profile that has security officer access.

To enter the License Codes into the UFTP System, use the License request from the Start UFTP Command to access the License Code Maintenance.

STRUFTP REQUEST(LICENSE)

From this screen you can Press F6=Add/Create to enter new license codes.

Or if licenses already exist, place the cursor on the License code you wish to change or delete and press enter to get the Maintain License Code Display. From here, press F21=change to make changes to the Code, or press F22=Delete to remove the code from the system.

From UFTP Help About Dialog

The UFTP Help About Dialog can be accessed from the UFTP Logon Window and from the UFTP Browser Help Menu Item.

When you click on the License Maintenance Button, another Logon Window will be displayed. You must sign on as a Security Officer to use the License Maintenance.

Once connected, the License Maintenance window will be presented. Enter or change the License codes as needed.

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial

The UFTP Tutorial Overview

Jump Start Tutorials

UFTP Tutorial 1.1: Send a file

UFTP Tutorial 1.2: Use System Variables to create a generic session to send a file

UFTP Tutorial 1.3: Use Variable Prompting to prompt the user for file information to send

UFTP Tutorial 1.4: Send a file from an iSeries command line

Tutorials for General FTP Usage and Functionality

UFTP Tutorial 2.1: Getting familiar with basic FTP
UFTP Tutorial 2.1a: Using FTP on the iSeries
UFTP Tutorial 2.1b: Using FTP on a PC with Windows
UFTP Tutorial 2.1c: Using FTP Scripts

UFTP Tutorial 2.2: Verifying a Connection

UFTP Tutorial 2.3: Getting a listing of a remote folder
UFTP Tutorial 2.3a: Listing a remote directory
UFTP Tutorial 2.3b: Getting a remote directory listing in a file

UFTP Tutorial 2.4: Sending a File

UFTP Tutorial 2.5: Getting a File

UFTP Tutorial 2.6:

Tutorials for Performing FTP Tasks

UFTP Tutorial 3.1: Verifying a Connection

UFTP Tutorial 3.n: Executing Local System Commands

UFTP Tutorial 3.n: Executing Remote System Commands

Tutorials for Automating FTP Tasks

UFTP Tutorial 4.1: Scheduling UFTP Session Executions
UFTP Tutorial 4.1a: Using the iSeries Scheduler
UFTP Tutorial 4.1b: Using the Windows Scheduled Tasks

UFTP Tutorial 4.2: Creating a Menu of UFTP Sessions
UFTP Tutorial 4.2a: Creating an iSeries Menu
UFTP Tutorial 4.2b: Creating a Windows Folder

UFTP Tutorial 4.3: Executing a UFTP Session From another Program
UFTP Tutorial 4.3a: Using a CL Program
UFTP Tutorial 4.3b: Using an RPG Program
UFTP Tutorial 4.3c: Using a Windows Script
UFTP Tutorial 4.3d: Using Visual Basic

UFTP Tutorial 4.4: Executing a UFTP Session From another LANSA Program
UFTP Tutorial 4.4a: From a LANSA For iSeries Function
UFTP Tutorial 4.4b: From a Visual LANSA Component
UFTP Tutorial 4.4c: From a LANSA Web Function

UFTP Tutorial 4.n:

UFTP Tutorial 4.n:

UFTP Tutorial 4.n:

Copyright © 1998-2003 Surround Technologies, LLC.


The UFTP Tutorial Overview

This tutorial is designed to walk someone through using UFTP to automate many of the typical File Transfer tasks involved in business. It is based on the simple premise of having to send a file of data from one machine to another.

This tutorial assumes that some basic knowledge of FTP is understood beforehand. Below is some terminology referred to in this Tutorial.

FTP Client - This is the machine in which the UFTP Session is executing on. It can be either the 400 or Windows.

FTP Server - This is the machine in which the UFTP Session is connecting to and performing FTP functions with. For most of this tutorial, the FTP Server on the 400 is used.

Loopback - Some of the Sites used in this tutorial utilize the "Loopback address" to connect to. This can be a bit confusing because both the FTP Client and the FTP Server are the same machine. Don't let this mislead you. FTP does not distinguish nor is it aware that the FTP client has actually connect to an FTP Server on the very same machine. This can be quite useful for testing your own UFTP sessions.

Standard FTP

Universal FTP

Universal FTP Client System

Continue the tutorial:
 | Contents: Tutorial Contents
 | UFTP Tutorial 1.1: Send a file from your PC to your iSeries

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.1: Send a file from your PC to your iSeries

UFTP Tutorial 1.1: Send a physical file to an iSeries FTP Server

NOTE: This is a Jump Start Tutorial: Jump Start Tutorials are limited to a defined scope and task to get beginners up and using an application quickly. If what you are trying to do is not covered in this tutorial, you may find more in depth instruction in other tutorials in this guide.

Objective:

Learn how to use UFTP to send a file

UFTP Tutorial 1.1a: Using UFTP for Windows
UFTP Tutorial 1.1b: Using UFTP for the iSeries

Summary:

In both the Windows interface and the iSeries interface, you should now know:

  • How to define a new UFTP Session.
  • How to define a new UFTP Site.
  • How to define a new Script by copying a UFTP Shipped Script definition.
  • How to define UFTP Script Commands.
  • How to execute a UFTP Session.
  • How to send files using UFTP.

Continue the tutorial:
 | UFTP Tutorial Overview
 | Contents: Tutorial Contents
 | UFTP Tutorial 1.2: Use System Variables to create a generic session to send a file.

UFTP Tutorial 1.1a: Using UFTP for Windows

Back to Top

Go back to the Top

Step 1:

Open up the Universal FTP Browser.

From Sessions Module, click New to create a new Session

Fill in the Name,

Copy the UFTP Shipped Script: UFTP_TEMPLATE_SEND_400_PF

UFTP Tutorial 1.1b: Using UFTP for the iSeries

Back to Top

Go back to the Top

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.2: Use System Variables to create a generic session to send a file

Continue the tutorial:
 | UFTP Tutorial 1.1: Send a file from your PC to your iSeries.
 | Contents: Tutorial Contents
 | UFTP Tutorial 1.3: Use Variable Prompting to prompt the user for file information to send.

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.3: Use Variable Prompting to prompt the user for file information to send

Continue the tutorial:
 | UFTP Tutorial 1.2: Use System Variables to create a generic session to send a file.
 | Contents: Tutorial Contents
 | UFTP Tutorial 1.4: Send a file from an iSeries command line.

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.4: Send a file from an iSeries command line

Continue the tutorial:
 | UFTP Tutorial 1.3: Use Variable Prompting to prompt the user for file information to send.
 | Contents: Tutorial Contents
 | UFTP Tutorial 2.1: Getting familiar with basic FTP.

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.1: Getting familiar with basic FTP

UFTP Tutorial 2.1: Getting familiar with basic FTP

UFTP Tutorial 2.1a: Using FTP on the iSeries
UFTP Tutorial 2.1b: Using FTP on a PC with Windows
UFTP Tutorial 2.1c: Using FTP Scripts

Continue the tutorial:
 | UFTP Tutorial 1.4: uftp_tutorial_jump_start_send_file
 | Contents: Tutorial Contents
 | UFTP Tutorial 2.2: Getting a listing of a remote folder

UFTP Tutorial 2.1a: Using FTP on the iSeries

Back to Top

Go back to the Top

UFTP Tutorial 2.1b: Using FTP on a PC with Windows

Back to Top

Go back to the Top

UFTP Tutorial 2.1c: Using FTP Scripts

Back to Top

Go back to the Top

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.2: Verifying a Connection

UFTP Tutorial 2.2: Verifying a Connection

UFTP Tutorial 2.2a: Verify the Connection
UFTP Tutorial 2.2b: Verify the Connection and ability to Navigate the System
Summary

Continue the tutorial:
 | UFTP Tutorial 2.1: Getting familiar with basic FTP
 | Contents: Tutorial Contents
 | UFTP Tutorial 2.3: Getting a listing of a remote folder

UFTP Tutorial 2.2a: Verify the Connection

Back to Top

Go back to the Top

From Windows, run the Build and Run a Generic Script Utility.

Enter the connection information
FTP Host Address: Enter the Remote FTP Host Address. You can also use "Loopback" to simply connect to the same Server.
User ID: Enter your User ID for the Remote FTP Server
Password: Enter your Password for the Remote FTP Server

Then Open the VFYCON1.SCR Script.

The resulting FTP Script Commands should be:

lcd qgpl
cd qgpl
noop
quit

Run the Script on the Server

The Output will be similar to the following:

Output redirected to a file.
Input read from specified override file.
Connecting to host LOOPBACK at address 127.0.0.1 using port 21.
220-QTCP at LOOPBACK.
220 Connection will close if idle more than 5 minutes.
Enter login ID (qothprdown):
331 Enter password.
230 LEE logged on.
 OS/400 is the remote operating system. The TCP/IP version is "V4R4M0".
250  Now using naming format "0".
257 "QGPL" is current library.
Enter an FTP subcommand.
> lcd qgpl
Local working directory is QGPL
Enter an FTP subcommand.
> cd qgpl
250 "QGPL" is current library.
Enter an FTP subcommand.
> noop
200 OK.
Enter an FTP subcommand.
> quit
221 QUIT subcommand received.

Now change the "cd QGPL" to "cd XXXXXXXXXX" and Run the Script on the Server

You will see the Ouput results show an error on the cd command:

Output redirected to a file.
Input read from specified override file.
Connecting to host LOOPBACK at address 127.0.0.1 using port 21.
220-QTCP at LOOPBACK.
220 Connection will close if idle more than 5 minutes.
Enter login ID (qothprdown):

31 Enter password.
230 LEE logged on.

S/400 is the remote operating system. The TCP/IP version is "V4R4M0".
250 Now using naming format "0".
257 "QGPL" is current library.
Enter an FTP subcommand.
> lcd qgpl
Local working directory is QGPL
Enter an FTP subcommand.
> cd XXXXXXXXXX
550-Specified library does not exist or cannot be accessed.
550 Current library not changed.
Enter an FTP subcommand.
> noop
200 OK.
Enter an FTP subcommand.
> quit
221 QUIT subcommand received.

Now Change the Host Address to "XXXXXXXXXX" and Run the Script on the Server

You will see the Ouput results show an error on the connection:

Output redirected to a file.
Input read from specified override file.
Cannot find host xxxxxx.
Enter an FTP subcommand.
> lee ******
Subcommand 'lee' not valid.
For a list of available FTP subcommands, enter subcommand HELP.
Enter an FTP subcommand.
> lcd qgpl
Local working directory is QGPL
Enter an FTP subcommand.
> cd qgpl
You must first issue the OPEN subcommand.
Enter an FTP subcommand.
> noop
Not connected to a FTP server.
Enter an FTP subcommand.
> quit

UFTP Tutorial 2.2b: Verify the Connection and ability to Navigate the System

Back to Top

Go back to the Top

From Windows, run the Build and Run a Generic Script Utility.

Enter the connection information
FTP Host Address: Enter the Remote FTP Host Address. You can also use "Loopback" to simply connect to the same Server.
User ID: Enter your User ID for the Remote FTP Server
Password: Enter your Password for the Remote FTP Server

Then Open the VFYCON.SCR Script.

Summary

Back to Top

Go back to the Top

Try using some of the other Verrify Connection Scripts

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Tutorial 1.3: Getting a listing of a remote folder

UFTP Tutorial 2.3: Getting a listing of a remote folder

Getting a listing of the files on a remote system is very useful for numerous reasons:

  • To view what files are available for download.
  • To verify the existence of files.
  • To retrie

UFTP Tutorial 2.3a: Listing a remote directory
UFTP Tutorial 2.3b: Getting a remote directory listing in a file

Continue the tutorial:
 | UFTP Tutorial 2.2: Verifying a Connection
 | Contents: Tutorial Contents
 | UFTP Tutorial 2.4: Sending a File

UFTP Tutorial 2.3a: Listing a remote directory

Back to Top

Go back to the Top

UFTP Tutorial 2.3b: Getting a remote directory listing in a file

Back to Top

Go back to the Top

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP 5250 Users Interface


Accessing UFTP (5250 Interface)

Using the Start UFTP, STRUFTP, Command
Using the STRUFTP Command to execute a session
Universal FTP Menu

Copyright © 1998-2002 Surround Technologies, LLC.


Using the STRUFTP Command

The STRUFTP command can be used to easily access all of the UFTP facilities. It can also be used to execute a UFTP Session from the command line, within a scheduler, or inside of another program.

Command Parameters

Action Requested:
REQUEST() 		This is the action requested to be performed within UFTP. The action requested can be up to 10 characters in length. The actions that may be requested include:
MENU: | Use the UFTP Main Menu
RUN: | Execute (or Run) a UFTP Session.
SUBMIT: | Submit a UFTP Session to Execute in Batch.
LICENSE: | Work with the UFTP Licenses

Additional Parameters

Partition to be used:
PARTITION() 		This is the Partition that is used for UFTP/SFE. The standard UFTP/SFE installation uses “FTL”, which is the default value for the command.

Example 1: To access the UFTP Main Menu use the command:
STRUFTP REQUEST(MENU)

Refer to Using the STRUFTP Command to Run or Submit a UFTP Session for use and additional parameters on the Run and Submit request.

Related Topics:


Using the STRUFTP Command to Run or Submit a UFTP Session

The STRUFTP REQUEST(RUN) or STRUFTP REQUEST(SUBMIT) command can be used to execute a UFTP session from the command line, within a scheduler, or inside of another program.

REQUEST(RUN) and REQUEST(SUBMIT) Specific Parameters

Use Advanced Request: ADVANCED() | If Yes (the default value) then a more robust display will be presented that allows the user to search and select for information for the parameters of the request. Refer to Execute a UFTP Session Interactively and Submit a UFTP Session to Batch. This is the recommended method for User initiated requests. If No, the UFTP request will be performed directly from the STRUFTP command. This value MUST be used if the request is being performed from a scheduler or another program.
Session ID: SESSIONID() | The UFTP Session ID of the Session to be executed
Execution Mode: EXECMODE() | The mode in which to execute the Session. Enter a "T" for Test Mode or a "P" for Production Mode. For more information refer to Production vs. Test Mode.
Substitution Variables: SUBVAR(() () ...) | Specify up to 20 Substitution Variables to be used during this session execution.
SV Name: | The Name of the Substitution Variables.
SV Value: | The Value to be Substituted.

Example 1: To execute Session 1 in Production Mode use the command:
STRUFTP REQUEST(RUN) ADVANCED(*NO) SESSIONID(1) EXECMODE(P)

When using the the STRUFTP REQUEST(RUN) command from within a CL program, it may be necessary to do something based on the outcome of the Session. This can be accomplished with the use of the MONMSG Command to monitor for messages:
Y149900 - UFTP completed the session successfully.
Y149990 - UFTP Session execution FAILED.
The following CL commands demonstrate how to do this:

...
STRUFTP REQUEST(RUN) ADVANCED(*NO) SESSIONID(1) +
EXECMODE(P)
MONMSG MSGID(Y149990) EXEC(SNDMSG MSG('UFTP +
Session Execution FAILED') TOUSR(QSYSOPR))
MONMSG MSGID(Y149900) EXEC(SNDMSG MSG('UFTP +
Session Execution SUCCESSFUL') +
TOUSR(QSYSOPR))
...

Related Topics:


Using the UFTP Menu

The UFTP Menu can be accessed using the STRUFTP or STRUFTP REQUEST(MENU) command.

This menu is the main access to the different UFTP features:

  1. Execute a UFTP Session Interactively -
  2. Submit a UFTP Session to Batch -
  3. Work With Sessions -
  4. Work With Session Execution Logs -
  5. Work With Sites -
  6. Work With Scripts -
  7. Work With Script Commands -
  8. Work With System Variables -
  9. Work With Server Users -
  10. Universal FTP System - FTP Reference -
  11. Universal FTP System - System File Exchange -
  12. System Maintenance -
  13. Security -

Universal FTP System - FTP Reference

Universal FTP System - System File Exchange

Refer to the System File Exchange User Guide.

System Maintenance

Security

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Maintenance (5250 Interface)

Working With Sessions

Copyright © 1998-2002 Surround Technologies, LLC.


Working With Sessions

The Session Work With provides the ability to browse, search, and work with the Sessions that are defined in the system as well as create new ones. Different views and values are available to search and position to the Session entries of interest.

From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing sessions.

View by:

Enter the View Number and Press Enter to sort the Sessions by that View or Press F4=Prompt to select from a list of Views available for Sessions. For more information on these Features go to the Work Withs section of this guide and review the Function Keys usage of F4=Prompt Function Key, F21=Posn To Function Key and F22=Sel View Function Key.

The available views for Sessions are:

01 - View By Session ID
02 - View By Name
03 - View By Description
04 - View By FTP Site ID
05 - View By Script ID
90 - View By Create User and Date
91 - View By Create Date
92 - View By Last Change User and Date
93 - View By Last Change Date
94 - Recycle Bin: View By User and Date
95 - Recycle Bin: View By Date

Options

2=Edit

3=Copy

4=Delete

6=Print

8=View

11=Run

12=Submit

20=Notes

21=Session Logs

22=Substitution Variables

Session Logs

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Creating a Session

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Copying a Session

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Editing a Session

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Viewing a Session

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Deleting a Session

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Selecting Sessions

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Printing a Sessions

Related Topics:
Session Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Working With Sites

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


Working With Scripts

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


Working With Script Commands

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


FTP Reference (5250 Interface)

Copyright © 1998-2003 Surround Technologies, LLC.


Working With FTP Server Types

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


Working With FTP Client Types

The FTP Client Type Work With provides the ability to browse, search, and work with the FTP Cleint Types that are defined in the system.

Related Topics:
FTP Client Type Definition

Copyright © 1998-2003 Surround Technologies, LLC.


Working With FTP Commands

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


Working With FTP Server Reply Codes

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Session Execution (5250 Interface)

Executing a Session
Production Vs. Test mode
Reviewing Session Executions

Copyright © 1998-2003 Surround Technologies, LLC.


Executing A Session (5250 Interface)

Related Topics:


Working With Session Execuitons

The Session Execuiton Work With provides the ability to browse, search, and work with the Session Execuitons that are available in the system.

Related Topics:
Session Execuiton Definiton

Copyright © 1998-2002 Surround Technologies, LLC.


UFTP Session Execution (5250 Interface)

UFTP Utilities (Windows Interface)

Build and Run a Generic Script
UFTP System Cleanup
UFTP System Archive

Copyright © 1998-2003 Surround Technologies, LLC.


Build and Run a Generic Script

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP System Cleanup


UFTP System Archive


UFTP Application Program Interfaces (iSeries APIs)


UFTP Users Windows

UFTP Windows Users Interface

Copyright © 1998-2002 Surround Technologies, LLC.


Accessing UFTP (Windows Interface)

Using the UFTP Browser
Using the STRUFTP.EXE Program

Copyright © 1998-2002 Surround Technologies, LLC.


Using the UFTP Browser

The UFTP installation will put an Icon on the Windows Desktop and an item in the Windows Start Menu under "Start-Programs-Universal FTP & SFE".

Windows Desktop Icon:
Windows Start Menu:

Both the Windows Desktop icon and the Start Menu Item can be used to start up the UFTP Browser.
The user will be presented with a Logon screen similar to the one below.

enter the necessary connection information and press connect to access the Browser.

The Browser ...

Related Topics:


Using the STRUFTP.EXE Program

The STRUFTP.EXE Program can be used to easily access all of the UFTP facilities. It can also be used to execute a session from the command line, within a scheduler, or inside of another Windows program.

Command Switches

Action Requested: |
MENU: |
LOADFILE: |
UNLOADFILE: |
RUN: |
SUBMIT: |
Partition to be used: | This is the Partition that is used for UFTP/SFE. The standard UFTP/SFE installation uses “FTL”, which is the default value for the command.

LOADFILE Request Specific Switches

Additional Partner For Exchange File

UNLOADFILE Request Specific Switches

RUN Request Specific Switches

SUBMIT Request Specific Switches

Related Topics:


UFTP Maintenance (Windows Interface)

Browsing Sessions
Defining A Session
Browsing Sites
Defining A Site
Browsing Scripts
Defining A Script
Browsing Script Commands
Defining A Script Command

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing Sessions

The Session Browser provides the ability to browse, search, and work with the Sessions that are defined in the system.

Related Topics:
Script Definition
Defining A Script

Copyright © 1998-2002 Surround Technologies, LLC.


Working With UFTP Sites

Defining A Session

A Session can be created or changed through the Session Detail window. The Session Detail can be accessed through the Session Browser or from anywhere in the system that a Script is used.

Detail Tab

Session ID | This is the ID field that is used internally by the system to keep track of sessions. It is displayed here and made available in other parts of the system for those users that find easier and faster to reference something by an ID number rather than a name.
Active | Un-check this box to make the session inactive. Making a Session inactive removes it from being available when executing sessions.
Name | This is the name of the FTP Session information you are defining. It can be anything you desire. It identifies the connection you are creating and is the name you will choose when starting an FTP session. The length of this name is limited to 60 characters.
Description | This is a brief description of the FTP Session you are defining.
FTP Site | The FTP Site that this session will connect to.
FTP Script | The FTP Script that this session will use

Script Analysis and recovery

Enable Session Analysis | Check this box to enable session analysis. Session analysis must be enabled in order to determine if a session was executed successfully and to use Auto-recovery features.
Client Type | Select what Client Type this session will be executing on. Set this to *Auto Detect to allow UFTP to check the environment at the time of execution to determine the Client Type.
Next Command Identifier | This is used by session analysis to identify the executed commands in the output of the FTP Script execution. This value is typically different between FTP Clients. To check what it is for your client, start up FTP interactively to see what precedes the Command entry line. For the Standard IBM AS/400 FTP Server it is usually ">" the greater than sign. For PC MS-DOS and Windows environments it is typically "ftp>"
Connection Successful Code | This is used by session analysis to identify that the FTP connection was established successfully. This value is sometimes different between FTP Servers. To check what it is for your server, start up FTP interactively and connect to the Server. Look for the code that is with the Connected line. For the Standard IBM AS/400 FTP Server it is usually "220"
Password Successful Code | This is used by session analysis to identify that the FTP User ID and Password are valid for the Remote System. This value is sometimes different between FTP Servers. To check what it is for your server, start up FTP interactively and connect and sign on to the Server. Look for the code that is with the Sign on successful line. For the Standard IBM AS/400 FTP Server it is usually "230"
Transfer Recovery Attempts | This field contains the number of times the system should attempt to recover for this session if an error occurs. Specify 999 to recover indefinitely until the recovery cancel time.
Recovery Delay Time | The time, in seconds, to delay in between recovery attempts.
Recovery Cancel Time | The time that recovery must be canceled whether the session has been completed successfully or not
Request Recovery | Check this box if you wish to send a message requesting if a recovery attempt should be made. This feature is only used if execution is performed on the AS/400.
Request Recovery User ID | The user ID to send the Recovery Request message to.

Execution reporting
For the following options, select the appropriate Radio button:
Always - report on every execution.
Never - never report
On Error - Report only if there was an error on the execution. If 'On Error' is disabled, it is because Enable Script Analysis is not checked.

Load History Log | Check the radio button for when a the History Log should be loaded. Always, Never, or On error.
Print History Log | Check the radio button for when a Job Log should be printed. Always, Never, or On error.
Send iSeries Message | Check the radio button for when a message should be sent. Always, Never, or On error. This option will only be utilized if the session execution is performed on the iSeries.
Message User ID | Message User ID for sending the iSeries message.
Email | Check the radio button for when an email should be sent. Always, Never, or On error. Email services must already be configured for this to work.
Email Address | Email address to send message.

Override File Usage

Use Input Override File | This flag is for backwards compatibility with previous version of UFTP on the AS/400. This flags enables the entry of a specific Input Override File to be used during script execution. It is strongly recommended that these files are not used. The use of these files may be deprecated out of future version of UFTP.
Use Output Override File | This flag is for backwards compatibility with previous version of UFTP on the AS/400. This flags enables the entry of a specific Output Override File to be used during script execution. It is strongly recommended that these files are not used. The use of these files may be deprecated out of future version of UFTP.

Override File Tab

The entries on this tab will only be enabled if the Use Input Override File or Use Output Override File boxes are checked.
Input Override File:

Library
Name
Member

Output Override File:

Library
Name
Member

Notes Tab

Notes Enter in any Notes you would like about this Session

Execution History Tab

This tab displays a list of the Session executions

Copyright © 1998-2003 Surround Technologies, LLC.


Browsing Sites

The Sites Browser provides the ability to browse, search, and work with the Sites that are defined in the system.

New and existing Site maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the Site entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing Sites.

Related Topics:
Site Definition
Defining A Site

Copyright © 1998-2003 Surround Technologies, LLC.


Defining A Site

A Site can be created or changed through the Site Detail window. The Site Detail can be accessed through the Site Browser or from anywhere in the system that a Site is used.

Detail Tab

File Type ID | This is the ID Number used for this File Type.
Name | This is the name of the FTP Site information you are defining. It can be anything you desire. It identifies the connection you are creating and is the name you will choose from your list of sites. The length of this name is limited to 60 characters. This name can (and should) be different than the Host Name/Address!
Description | This is a brief description of the FTP Site you are defining.
FTP Server Type | This is the Server Type for this Site.
FTP Host Address | This is the IP or internet address of the Site.
User | This identifies the User to use when connecting to the Site
Connection Port | This is the Port in which the FTP Site is "listening" for an FTP Request. The default Port number is typically 21.
Account | Some FTP sites, notably VM/CMS hosts, require an account in order to authenticate the client and provide access to a default directory for the user. For many sites, however, no account is required.
Passive Mode | Normally, when you connect to an FTP site, the site establishes the data connection to the FTP client. However, if the site allows passive transfers, you can have the FTP Client establish the data connection. It is recommend that you use passive mode for most transfers. Note that passive mode may be required for users who are behind some types of router-based firewalls or behind a gateway requiring passive transfers.
Secure (SSL) | For Future use.
Startup Transfer Mode | This is the Transfer Mode to start the connection up in.
Initial Local Folder | This is the path of the folder on your local machine that you want to use as your starting location when you connect to this Site.
Initial Site Folder | This is the path of the folder on the Site that you want to use as your starting location when you connect to this Site.
Initialization Script | This is a script that contains any commands that need to be issued to the FTP Site when you connect.
Completion Script | This is a script that contains any commands that need to be issued to the FTP Site before you disconnect.
Coded Char. set ID (CCSID) |
Outgoing Conv. Table Library |
Outgoing Conv. Table Name |
Incoming Conv. Table Library |
Incoming Conv. Table Name |
System/Internal |
Active | Un-check this box to make the site inactive. Making a Site inactive removes it from being available when defining sessions and also stops any sessions from executing that use the site.

Notes Tab

Notes

Sessions Tab

.

Related Topics:
Site Definition
Browsing Sites

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing Scripts

The Scripts Browser provides the ability to browse, search, and work with the Scripts that are defined in the system.

New and existing Script maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the Script entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing Scripts.

Related Topics:
Script Definition
Defining A Script

Copyright © 1998-2003 Surround Technologies, LLC.


Working With UFTP Sites

Defining A Script

A Script can be created or changed through the Script Detail window. The Script Detail can be accessed through the Script Browser or from anywhere in the system that a Script is used.

Detail Tab

UFTP Script ID | This is the ID Number used for this Script.
Name | This is the name of the Script you are defining. It can be anything you desire. It identifies the Script you are creating and is the name you will choose when specifying the script you wish to use. The length of this name is limited to 60 characters.
Description | This is a brief description of the Script you are defining.
Command Count | The number of Script Commands that are used in this Script.
Session Use Count | The number of Sessions that use this script.
Site Initialization Count | The number of Sites that use this script for Session Initialization.
Site Completion Count | The number of Sites that use this script for Session Completion.

Commands Tab

This tab provides browsing of Commands that are used in this particular Script that is opened.

Sessions Tab

This tab provides browsing of Sessions that are use this particular Script that is opened.

Sites Tab

This tab provides browsing of Sites that use this particular Script for Session Initialization or Session Completion.

Notes Tab

Enter in any Notes you would like about this Script.

Related Topics:
Script Definition
Defining A Script Command
Defining A Session
Defining A Site

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing Script Commands

The Script Commands Browser provides the ability to browse, search, and work with the Script Commands that are defined in the system.

New and existing Script Command maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the Script Command entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing Script Commands.

Related Topics:
Script Command Definition
Defining A Script Command

Copyright © 1998-2003 Surround Technologies, LLC.


Defining A Script Command

A Script Command can be created or changed through the Script Command Detail window. The Script Command Detail can be accessed through the Script Command Browser or from anywhere in the system that a Script Command is used.

Detail Tab

Command ID | This is the ID Number used for this Command.
Script | This is the Script that the Command belongs to.
Sequence | This is the sequence in which the command will be executed relative to the other Commands for the Script.
Command | This is the UFTP command that will be executed. For more information on UFTP Commands and there parameters, refer to the UFTP Command Reference. This is NOT an FTP Command. To enter a specific FTP Command, use the "EXEC_FTP" Command and put the full FTP command in the Command Parameters.
Command Parameters | These are the parameters for UFTP Command being used and are specific to each command. For more information on UFTP Commands and there parameters, refer to the UFTP Command Reference.
Execution Control | Select the desired radio button: Production Mode Only, Test Mode Only, Always Execute, or Never Execute. Refer to executing a Session in Production Vs. Test Mode.
Recovery Action | Select the desired radio button: Recover on error - This command will only be executed again in a Recovery Session if it fails on a previous execution. This option is typically set on actual file transfer commands such as GET(s) and PUT(s). Abort on error - No Auto-Recovery for the entire session execution will be performed if there is an error on this command. This option is typically set on commands that delete or manipulate files, and therefore, require manual assistance if they should fail. Always Execute - The command will always execute. This option is typically set on a commands that set up the environment for the FTP session or File transfers such as CD or BIN.
Command Analysis: Enable | Check this box to enable the command analysis during execution. If this command is checked, you must also specify the rules to validate the outcome of the command execution. It is strongly recommended NOT to disable Command Analysis. If Command Analysis is disabled, the command will always be considered successful for recovery purposes. It is recommended that the recovery action be set to "Always Execute" for any command that analysis is disabled on.
Command Analysis: Auto-Analyze |
Execution Validation Rules | Work with the Execution Validation Rules for this Command. See below for more information on working with these rules.
Notes | Enter in any Notes you would like about this Script Command

Working with Execution Validation Rules

Using the Quick Add facility

You can use the Quick Add facility to quickly select and add Rules to the command. Simply select the Rule you want and press the Add button.
Use Pre-Defined Rule | Check this box to be able to select from a Pre-defined Rule.
Rule ID | Specify the Rule ID to retrieve the Rule to be added to the Command Validation.
Rule Name | Specify the Rule Name to retrieve the Rule to be added to the Command Validation.

Related Topics:
Script Command Definition
Defining A Script
Production Vs. Test Mode

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing System Variables

The System Variables Browser provides the ability to browse, search, and work with the System Variables that are defined in the system.

New and existing System Variable maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the System Variable entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing System Variables.

Related Topics:
System Variable Definition
Defining A System Variable

Copyright © 1998-2002 Surround Technologies, LLC.


Defining A System Variable

A System Variable can be created or changed through the System Variable Detail window. The System Variable Detail can be accessed through the System Variable Browser or from anywhere in the system that a System Variable is used.

Detail Tab

System Variable ID | This is the ID Number used for this System Variable.
Variable Type | This is the Type of the System Variable. Allowable Types are Field Substitution, Date, Time, User Defined, External Script File, and User Variables. Also shown is the Variable Type description and ID Number. For Additional information on each Type refer to the System Variable Definition.
Name | This is the name of the System Variable you are defining. It can be anything you desire. It identifies the System Variable you are creating and is the name you will choose when specifying the System Variable you wish to use. The length of this name is limited to 60 characters.
Description | This is a brief description of the System Variable you are defining.

Field Substitution Variable

No additional information is required to define this type of System Variable.

Date Variable

Date Field Name | The field that will contain the date. You can specify *CURDATE to use the current system date during execution or specify a Field Substitution Variable name to use a date value that is passed in at execution time.
Date Format | The Format for the date to be put into the command as.
Operator | The operation to be performed on the date.
Number of Days | The number of days to increment or decrement from date. set this to 0 (zero) to use the date as is.

Time Variable

Time Field Name | The field that will contain the time. You can specify *CURTIME to use the current system time during execution or specify a Field Substitution Variable name to use a time value that is passed in at execution time.
Time Format | The Format for the time to be put into the command as.

User Defined Variable

User Defined Command Value of User defined Command. This can be anything needed and can include other System Variables as well.

External Script File Variable

File Location | The location of the File to use, the UFTP Server or the UFTP Client. This value designates where the UFTP execution program will find the File. The value is only important if UFTP is executing in a client/server environment. The value obviously has no meaning if UFTP is executing solely on a Server.
AS400 | The File Name, Library and Member of the file that stores the Script Commands when executing on an AS/400 or iSeries.
PC | The Path and File Name of the file that stores the Script Commands when executing on a PC

You can specify either of the AS400, PC or both files. UFTP will use the necessary file based on what the File Location specified is. If the File Location is set to UFTP client it is possible to use a different file based on which client is executing, or if it is executing on the 400.

User Variable

User Name
User variable Format

Script Commands Tab

This tab provides browsing of the Script Commands that use the particular System Variable that is opened.

Notes Tab

Enter in any Notes you would like about this System Variable.

Related Topics:
System Variable Definition
Browsing System Variables

Copyright © 1998-2002 Surround Technologies, LLC.


External Script File Format

External Script File Formatting

File Record Information

Description | Type | Length | Decimal Position | Start Position | End Position | Comments/Values
Record Type | A | 7 | 0 | 1 | 7 | Values are: COMMAND - For a Command an 1 Rule RULE - For additional Rules. These records must directly follow the commands that they are for.
Command Sequence | S | 3 | 0 | 8 | 10 | The Sequence of the Command
Command | A | 20 | 0 | 11 | 30 | The UFTP Script Command
Command Parameters | A | 250 | 0 | 31 | 280 | The UFTP Script Command Parameters
Execution Control | A | 1 | 0 | 281 | 281 | Values are: N - Never Execute A - Always Execute P - Execute only in Production Mode T - Execute only in Test Mode
Enable Command Analysis | A | 1 | 0 | 282 | 282 | Values are: Y - Enabled N - Disabled
Command Recovery Action | A | 1 | 0 | 283 | 283 | Values are: R - Recover on error N - Abort on error E - Execute Always
Enable Auto Analysis | A | 1 | 0 | 284 | 284 | Values are: Y - Enabled N - Disabled
Rule Sequence | S | 2 | 0 | 285 | 286 | The Sequence of the Rule
Use Pre-Defined Rule | A | 1 | 0 | 287 | 287 | Values are: Y - Use a Pre-Defined Rule (For Future Use) N - Do Not use a Pre-Defined Rule
Pre-Defined Rule ID | S | 8 | 0 | 288 | 295 | For Future Use
Validation Rule Type | S | 2 | 0 | 296 | 297 | Values are: 01 - Reply Code Check 02 - String Check 03 - Any Response Check 04 - No response Check
Positive Action | A | 6 | 0 | 298 | 303 | Values are: Pass - Rule Passes Fail - Command Fails Accept - Command Passes
Negative Action | A | 6 | 0 | 304 | 309 | Values are: Pass - Rule Passes Fail - Command Fails Accept - Command Passes
RC Relation | A | 2 | 0 | 310 | 311 | Reply Code Check Relational Operation EQ - Equal To NE - Not Equal To LT - Less Than LE - Less Than or Equal To GE - Greater Than or Equal To GT - Greater Than
RC Value | A | 3 | 0 | 312 | 314 | The Reply Code Check Value of the Reply Code
String To Find | A | 250 | 0 | 315 | 564 | The String Check String to Find
From Position | S | 3 | 0 | 565 | 567 | The String Check position to start searching
To Position | S | 3 | 0 | 568 | 570 | The String Check position to stop searching
Kind Of Match | A | 1 | 0 | 571 | 571 | The String Check Match type Values are: I - Ignore Case S - Same Case

AS400/iSeries Format

External Script File Field Reference File Source

     A** FLDREF   Y14Z       EXTERNAL SCRIPT FILE FIELD REFERENCE FILE
     A          R Y14Z                      TEXT('External Script File +
                                            Skeleton')
     A            Y14ZTY         7A         TEXT('Record Type')
     A                                      COLHDG('Record' 'Type' +
                                            '=======')
     A            Y14ZCMSQ       3S 0       TEXT('Command Sequence')
     A                                      COLHDG('Cmd' 'Seq' '===')
     A                                      EDTCDE(J)
     A            Y14ZCM        20A         TEXT('Command')
     A                                      COLHDG('Command' +
                                            '====================')
     A            Y14ZCMPM     250A         TEXT('Command Parameters')
     A                                      COLHDG('Command Parameters' +
     A                                      '====================')
     A            Y14ZTPFL       1A         TEXT('Execution Control')
     A                                      COLHDG('Exec' 'Ctrl' '====')
     A            Y14ZCMAN       1A         TEXT('Enable Command Analysis')
     A                                      COLHDG('Command' 'Analysis')
     A            Y14ZRCAC       1A         TEXT('Command Recovery Action')
     A                                      COLHDG('Cmd' 'Rcv' '===')
     A            Y14ZAUAN       1A         TEXT('Enable Auto Analysis')
     A                                      COLHDG('Auto' 'Analysis')
     A            Y14ZRLSQ       2S 0       TEXT('Rule Sequence')
     A                                      COLHDG('Rule' 'Seq' '====')
     A                                      EDTCDE(J)
     A            Y14ZPDFL       1A         TEXT('Use pre-defined rule')
     A                                      COLHDG('P/D' 'Rule' '====')
     A            Y14ZRLID       8S 0       TEXT('Pre-defined rule ID')
     A                                      COLHDG('Rule ID' '========')
     A                                      EDTCDE(3)
     A            Y14ZRLTY       2S 0       TEXT('Validation Rule Type ID')
     A                                      COLHDG('Val Rule' 'Type ID' +
                                            '=======')
     A                                      EDTCDE(3)
     A            Y14ZPSAC       6A         TEXT('Positive Action')
     A                                      COLHDG('Positive' 'Action' +
                                            '========')
     A            Y14ZNGAC       6A         TEXT('Negative Action')
     A                                      COLHDG('Negative' 'Action' +
                                            '========')
     A            Y14ZRCRL       2A         TEXT('RC Relation')
     A                                      COLHDG('RC' 'Rel' '===')
     A            Y14ZRCVL       3A         TEXT('RC Value')
     A                                      COLHDG('RC' 'Val' '===')
     A            Y14ZST       250A         TEXT('String to Find')
     A                                      COLHDG('String to Find' +
     A                                      '====================')
     A            Y14ZSTFP       3S 0       TEXT('From Position')
     A                                      COLHDG('Frm' 'Pos' '===')
     A                                      EDTCDE(J)
     A            Y14ZSTTP       3S 0       TEXT('To Position')
     A                                      COLHDG('To' 'Pos' '===')
     A                                      EDTCDE(J)
     A            Y14ZSTMT       1A         TEXT('Kind of Match')
     A                                      COLHDG('Kind of' 'Match' +
                                            '=======')

External Script File Skeleton Source

     A*
     A* External Script File Skeleton (Y14Z) Source
     A*
     A                                   1  REF(Y14ZREF)
     A          R Y14Z                      TEXT('External Script File Skeleton+
                                            ')
     A            Y14ZTY         7A  B      TEXT('Record Type') +
                                            COLHDG('Record' 'Type' '=======')
     A            Y14ZCMSQ       3S 0B      TEXT('Command Sequence') +
                                            COLHDG('Cmd' 'Seq' '===') EDTCDE(J)
     A            Y14ZCM        20A  B      TEXT('Command') +
                                            COLHDG('Command' +
                                            '====================')
     A            Y14ZCMPM     250A  B      TEXT('Command Parameters') +
                                            COLHDG( 'Command Parameters' +
                                            '====================')
     A            Y14ZTPFL       1A  B      TEXT('Execution Control') +
                                            COLHDG('Exec' 'Ctrl' '====')
     A            Y14ZCMAN       1A  B      TEXT('Enable Command Analysis') +
                                            COLHDG('Command' 'Analysis')
     A            Y14ZRCAC       1A  B      TEXT('Command Recovery Action') +
                                            COLHDG('Cmd' 'Rcv' '===')
     A            Y14ZAUAN       1A  B      TEXT('Enable Auto Analysis') +
                                            COLHDG('Auto' 'Analysis')
     A            Y14ZRLSQ       2S 0B      TEXT('Rule Sequence') +
                                            COLHDG('Rule' 'Seq' '====') +
                                            EDTCDE(J)
     A            Y14ZPDFL       1A  B      TEXT('Use pre-defined rule') +
                                            COLHDG('P/D' 'Rule' '====')
     A            Y14ZRLID       8S 0B      TEXT('Pre-defined rule ID') +
                                            COLHDG('Rule ID' '========') +
                                            EDTCDE(3)
     A            Y14ZRLTY       2S 0B      TEXT('Validation Rule Type ID') +
                                            COLHDG('Val Rule' 'Type ID' +
                                            '=======') EDTCDE(3)
     A            Y14ZPSAC       6A  B      TEXT('Positive Action') +
                                            COLHDG('Positive' 'Action' +
                                            '========')
     A            Y14ZNGAC       6A  B      TEXT('Negative Action') +
                                            COLHDG('Negative' 'Action' +
                                            '========')
     A            Y14ZRCRL       2A  B      TEXT('RC Relation') +
                                            COLHDG('RC' 'Rel' '===')
     A            Y14ZRCVL       3A  B      TEXT('RC Value') +
                                            COLHDG('RC' 'Val' '===')
     A            Y14ZST       250A  B      TEXT('String to Find') +
                                            COLHDG('String to Find' +
                                            '====================')
     A            Y14ZSTFP       3S 0B      TEXT('From Position') +
                                            COLHDG('Frm' 'Pos' '===') EDTCDE(J)
     A            Y14ZSTTP       3S 0B      TEXT('To Position') +
                                            COLHDG('To' 'Pos' '===') EDTCDE(J)
     A            Y14ZSTMT       1A  B      TEXT('Kind of Match') +
                                            COLHDG('Kind of' 'Match' '=======')

PC Format

Related Topics:
System Variable Definition
Browsing System Variables

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Reference (Windows Interface)

Browsing FTP Client Types
Defining An FTP Client Type
Browsing FTP Server Types
Defining An FTP Server Type
Browsing FTP Commands
Defining An FTP Command
Browsing FTP Server Reply Code
Defining An FTP Server Reply Code

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing FTP Client Types

The FTP Client Types Browser provides the ability to browse, search, and work with the FTP Client Types that are defined in the system.

New and existing FTP Client Type maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the FTP Client Type entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing FTP Client Types.

Related Topics:
FTP Client Type Definition
Defining An FTP Client Type

Copyright © 1998-2002 Surround Technologies, LLC.


Defining an FTP server Type

Defining an FTP Client Type

A FTP Client Type can be created or changed through the FTP Client Type Detail window. The FTP Client Type Detail can be accessed through the FTP Client Type Browser or from anywhere in the system that a FTP Client Type is used.

Detail Tab

FTP Client Type ID | This is the ID Number used for this FTP Client Type.
FTP Client Type | This is the name of the FTP Client Type you are defining. It can be anything you desire. It identifies the FTP Client Type you are creating and is the name you will choose when specifying the FTP Client Type when necessary in the system. The length of this name is limited to 60 characters.
Description | This is a brief description of the FTP Client Type you are defining.
Command Prompt Identifier | This value is used by the Session Validation and and Auto-Recovery system to recognize where a Command is located in the FTP Session output. It is equivalent to the FTP command prompt text that the client displays when performing an FTP session interactively. This value is typically the '>' (greater than sign) for the OS/400 FTP client and 'ftp>' for a DOS FTP client.
Notes | Enter in any Notes you would like about this File Type.

FTP Commands Tab

This tab displays an FTP Commands Browser that provides the ability to browse, search, and work with the FTP Commands that are associated with this FTP Client Type.

New and existing FTP Command maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the FTP Command entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing FTP Commands.

Related Topics:
FTP Client Type Definition
Browsing FTP Client Types

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing FTP Server Types

The FTP Server Types Browser provides the ability to browse, search, and work with the FTP Server Types that are defined in the system.

New and existing FTP Server Type maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the FTP Server Type entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing FTP Server Types.

Related Topics:
FTP Server Type Definition
Defining An FTP Server Type

Copyright © 1998-2002 Surround Technologies, LLC.


Defining an FTP Server Type

A FTP Server Type can be created or changed through the FTP Server Type Detail window. The FTP Server Type Detail can be accessed through the FTP Server Type Browser or from anywhere in the system that a FTP Server Type is used.

Detail Tab

FTP Server Type ID | This is the ID Number used for this FTP Server Type.
FTP Server Type | This is the name of the FTP Server Type you are defining. It can be anything you desire. It identifies the FTP Server Type you are creating and is the name you will choose when specifying the FTP Server Type when necessary in the system. The length of this name is limited to 60 characters.
Description | This is a brief description of the FTP Server Type you are defining.
Next Command Identifier | This value is used by the Session Validation and and Auto-Recovery system to recognize where a Command is located in the FTP Session output.
Notes | Enter in any Notes you would like about this File Type.

FTP Commands Tab

This tab displays an FTP Commands Browser that provides the ability to browse, search, and work with the FTP Commands that are associated with this FTP Server Type.

New and existing FTP Command maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the FTP Command entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing FTP Commands.

Related Topics:
FTP Server Type Definition
Browsing FTP Server Types

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing FTP Commands

The FTP Commands Browser provides the ability to browse, search, and work with the FTP Commands that are defined in the system.

New and existing FTP Command maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the FTP Command entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing FTP Client Types.

Related Topics:
FTP Command Definition
Defining An FTP Command

Copyright © 1998-2002 Surround Technologies, LLC.


Defining an FTP Command

A FTP Command can be created or changed through the FTP Command Detail window. The FTP Command Detail can be accessed through the FTP Command Browser or from anywhere in the system that a FTP Command is used.

Detail Tab

FTP Command ID | This is the ID Number used for this FTP Command.
Command | The FTP Command.
Description | This is a brief description of the FTP Command you are defining.
Notes | Enter in any Notes you would like about this FTP Command.

Related Topics:
FTP Command Definition
Browsing FTP Commands

Copyright © 1998-2002 Surround Technologies, LLC.


Browsing FTP Server Reply Codes

The FTP Server Reply Codes Browser provides the ability to browse, search, and work with the FTP Server Reply Codes that are defined in the system.

New and existing FTP Server Reply Code maintenance can be performed through this browser. From here it is possible to search for existing entries and to work with or create new ones. Different views and values are available to search and position to the FTP Server Reply Code entries of interest. From here it is possible to perform certain tasks based on user authority, including but not limited to viewing, creating, editing, deleting, and printing FTP Client Types.

Related Topics:
FTP Server Reply Code Definition
Defining An FTP Server Reply Code

Copyright © 1998-2002 Surround Technologies, LLC.


Defining an FTP Server Reply Code

A FTP Server Reply Code can be created or changed through the FTP Server Reply Code Detail window. The FTP Server Reply Code Detail can be accessed through the FTP Server Reply Code Browser or from anywhere in the system that a FTP Server Reply Code is used.

Detail Tab

FTP Server Reply Code ID | This is the ID Number used for this FTP Server Reply Code.
Reply Code | This is the FTP Server Reply Code you are defining.
Description | This is a brief description of the FTP Server Reply Code you are defining.
Notes | Enter in any Notes you would like about this FTP Server Reply Code.

Related Topics:
FTP Server Reply Code Definition
Browsing FTP Server Reply Codes

Copyright © 1998-2002 Surround Technologies, LLC.


UFTP Session Execution (Windows Interface)

Executing a Session
Production Vs. Test mode
Reviewing Session Executions

Copyright © 1998-2002 Surround Technologies, LLC.


Executing A Session (Windows Interface)

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


Browsing Session Executions

The Session Execution Browser provides the ability to browse, search, and work with the Session Executions that are available in the system.

Related Topics:
Session Execution Definition

Copyright © 1998-2002 Surround Technologies, LLC.


UFTP Session Execution (Windows Interface)

UFTP Utilities (Windows Interface)

Build and Run a Generic Script
UFTP System Cleanup
UFTP System Archive

Copyright © 1998-2002 Surround Technologies, LLC.


Build and Run a Generic Script

The UFTP installation will put two items in the Windows Start Menu under "Start-Programs-Universal FTP & SFE" for building and running a generic script.

Build and Run a Generic Script

Build and Run a Generic Script (Local Only)

These utilities allow you to build a script on the fly and execute it either on the local PC or on the Remote Server that UFTP is connected to. They can be very useful for:

1) General light usage or one time FTP functions that

WARNING: This utility does not perform any logging or analysis. It is meant primarily for a developers use.

Build and Run a Generic Script

Build and Run a Generic Script (Local Only)

Generic Script Templates

UFTP comes with several Shipped Generic Script Templates that can be used within this utility.


UFTP System Cleanup

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP System Archive

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Application Program Interfaces (Windows APIs)


UFTP Web Users Interface


UFTP Maintenance (Web Interface)


FTP Reference (Web Interface)


UFTP Session Execution (Web Interface)

Executing a Session
Production Vs. Test mode
Reviewing Session Executions

Copyright © 1998-2002 Surround Technologies, LLC.


UFTP Application Program Interfaces (Web APIs)


UFTP Script Command Reference

CHGLOCDIR - Change Local directory
CHGRMTDIR - Change Remote Directory
EXEC_FTP - Execute FTP Command

Copyright © 1998-2002 Surround Technologies, LLC.


CHGLOCDIR - Change Local Directory Command

The CHGLOCDIR script command can be used to change the local directory that ftp is currently working in.

Related Topics:
Script Command Definition
Defining a Script Command

Copyright © 1998-2002 Surround Technologies, LLC.


CHGRMTDIR - Change Remote Directory Command

The CHGRMTDIR script command can be used to change the remote directory that ftp is currently working in.

Related Topics:
Script Command Definition
Defining a Script Command

Copyright © 1998-2002 Surround Technologies, LLC.


EXEC_FTP - Execute an FTP Command

The EXEC_FTP script command is used to enter a specific FTP Command. Specify EXEC_FTP as the UFTP Command and enter the full FTP command in the UFTP Command Parameters.

EXEC_FTP Parameters:

FTPCMD - The FTP Command to be executed
PARMS - The FTP Command Parmeters

EXEC_FTP Examples:

To execute the FTP Command:
get localfile.txt remotefile.txt
Enter:
EXEC_FTP FTPCMD(get) PARMS(localfile.txt remotefile.txt)
or
EXEC_FTP get localfile.txt remotefile.txt

Related Topics:
FTP Command Definition
Script Command Definition
Defining a Script Command

Copyright © 1998-2002 Surround Technologies, LLC.


Glossary of Terms

Anonymous To log on to any FTP site, you must identify yourself with a user ID and password. For many FTP sites, you can use the word anonymous as a User ID, and your e-mail address as your password; this is known as an "anonymous login."

FTP sites that allow anonymous logins usually exist to provide files that can be downloaded by the general public; anyone on the Internet can log onto the site anonymously and copy files to his or her PC. This is similar to logging on to a file server as a "guest."

Anonymous logins have access to a vast store of software, games, music, and numerous other resources. However, if you log in anonymously, you usually are not allowed to do more than view public folders and download files. (You are usually unable to view private folders or to upload files.)

ASCII | ASCII (American Standard Code for Information Interchange). Text file format. Text files have end-of-line characters; the end-of-line character is different on different types of computers.
ASCII Transfer Mode The end-of-line character in text files is different on different types of computers; most non-PC computers use just a linefeed character to signify the end of a line, but PCs use carriage return plus linefeed <CRLF>.

Using ASCII mode ensures that the end-of-line character is translated properly. The ASCII transfer mode should be used for all text files, including text, HTML, postscript, or other ASCII format (.txt, .html, .htm, .cgi). It should also be used for EBCDIC files.

(ASCII mode contrasts with binary mode in which characters are not translated, but are transferred as exact duplicates of the original.)

Binary A file format that is used for non-text files such as bitmaps (.bmp or JPEG, .jpg), executable programs, word processing documents, spreadsheets, databases, graphics files, and sound files.
Binary Transfer Mode - The binary transfer mode transfers a file as an exact copy of the original, and should be used for transferring all binary files, including bitmaps, executables, or compressed files (.bmp, .jpg, .exe, .zip).

(Binary mode contrasts with ASCII mode which treats a file as text, translating the end-of-line characters during transfer.)

Data Transfer Types Data representation (set by the TYPE subcommand) specifies how the data is represented when transferred
  • ASCII is the default transfer type. It is normally used except when both client and server use EBCDIC data representation. IBM AS/400, VM, and MVS use EBCDIC. See the ASCII subcommand for additional information.
  • EBCDIC is the most efficient way to transfer data between machines that use this data representation. See the EBCDIC subcommand for additional information.
  • IMAGE transfer type is used to send data as contiguous bits packed in 8-bit bytes. This transfer type should always be used for transferring binary data. Binary image transfer is required for save files and hierarchical file system (HFS) files. See the BINARY subcommand for additional information.
  • Other special data types. See the TYPE FTP client subcommand for additional information.
Deprecated A deprecated element, attribute, or object is one that has been outdated by newer constructs. Deprecated items are defined in this User Guide in appropriate locations, but are clearly marked as deprecated. Deprecated elements may become obsolete in future versions.

Support for deprecated elements is provided for reasons of backward compatibility.

Download | Transfer a file to the local system from a remote FTP site.
FTP Client | This is the machine in which the UFTP Session is executing on. It can be either the 400 or Windows.
FTP Server | This is the machine in which the UFTP Session is connecting to and performing FTP functions with. For most of this tutorial, the FTP Server on the 400 is used.
Loopback address The Loopback address is a special IP number (127.0.0.1) that is designated for the software loopback interface of a machine. The loopback interface has no hardware associated with it, and it is not physically connected to a network.

The loopback interface allows IT professionals to test IP software without worrying about broken or corrupted drivers or hardware.
Mode Files can be transferred in ASCII or binary mode.

A file that is text, HTML, postscript, other ASCII format (.txt, .html, .htm, .cgi), or EBCDIC should be transferred in ASCII mode. Note: Transferring a binary file in ASCII format can damage the file.

A file that is a database, a bitmap, an executable, or compressed (.bmp, .jpg, .exe, .zip) should be transferred in binary mode. (Binary mode should also be used if there is no file extension or the file extension is not registered.)

Selecting the Transfer Mode. The FTP sub-commands “Binary” or “ASCII” will set the transfer to the appropriate Mode.

Obsolete | An obsolete element, attribute, or object is one for which there is no guarantee of support. Obsolete items are no longer defined in their respective sections, but may be listed for historical purposes in the changes section or referenced in other areas.
Secure Sockets Layer (SSL) | A proposed open standard for establishing a secure communications channel to prevent the interception of critical information, such as credit card numbers. Primarily, it enables secure electronic financial transactions on the World Wide Web, although it is designed to work on other Internet services as well.
Server | In general, a computer that provides shared resources to network users.
Session | A logical connection created between two hosts to exchange data. Typically, sessions use sequencing and acknowledgments to send data reliably.
Upload | Transfer a file from the local system to a remote FTP site.

Related Topics:


FTP Site (Definition)

An FTP site consists of an FTP server program located on an Internet host computer.

FTP Sites are used by many companies to provide access to a central repository of files and programs.

Related Topics:
UFTP Site

Copyright © 1998-2002 Surround Technologies, LLC.


FTP Subcommands

AS/400 and iSeries FTP Client Subcommands
AS/400 and iSeries FTP Server Subcommands
Windows FTP Client Subcommands

Copyright © 1998-2002 Surround Technologies, LLC.


AS/400 and iSeries FTP Client Subcommands

! 	?	ACCT	APpend	AScii	Binary
CD	CDUp	CLose	DEBug	DELete	DIr
EBcdic 	Get	Help	LCd	LOCSIte	LOCSTat
LPwd	LS	LType	MDelete	MGet	MKdir
MOde	MPut	NAmefmt	NOop	Open	PAss
PUt	PWd	QUIt	QUOte	REInitialize
REName	RESet	RMDir	SENDPAsv
SENDPOrt	SENDSite	SIte	STAtus
STRuct	SUnique	SYSCmd	SYSTem	TYpe	User
Verbose

You can abbreviate subcommands to the most unique series of characters.
For example, you can type AP for the APPEND subcommand.

FTP client subcommands grouped by task:
Starting and concluding sessions
OPEN (connect to server)
USER (login to server)
PASS (pass password to server)
ACCT (pass account information to server)
CLOSE (close the connection to the server)
REIN (reinitialize session with server)
QUIT (end your FTP session, exit FTP)

Information and status
? (show general information about FTP usage)
HELP (get help on FTP, client subcommands, server help)
RHELP (get remote server help information only)
LOCSTAT (show local client status)
STATUS (get server status information)
SYSTEM (show server system)
DIR (show server directory contents)
LS (show an abbreviated listing of server directory contents)
PWD (show server working directory)
LPWD (show local client working directory)

Preparing for data transfer
CD (change server working directory)
CDUP (change server working directory to parent of current server working directory)
MKDIR (create directory or sub-directory on server)
RMDIR (remove directory or sub-directory on server)
LCD (change client working directory)
NAMEFMT (specify the file naming format)
TYPE (specify representation type)
ASCII (set type to ASCII)
BINARY (set type to IMAGE)
EBCDIC (set type to EBCDIC)
LTYPE (to set CCSID-specified translation on only the client)
MODE (transmission mode - Block or Stream)
SITE (to send information to the server needed for server specific services)
STRUCT (set file structure - File or Record)
SENDPORT (specify if FTP server PORT command is sent to server on PUT subcommands and MPUT subcommands)
SENDSITE (specify if FTP server SITE command is sent to server on PUT subcommands and MPUT subcommands)
SUNIQUE (specify if files are to be replaced on PUT subcommands and MPUT subcommands)

Transferring files and other file operations
APPEND (append files to files on server)
GET (get files from server)
PUT (send files to server)
MGET (get multiple files from server)
MPUT (send multiple file to the server)
DELETE (delete a file on the server)
MDELETE (delete multiple files)
RENAME (rename file on the server)

Special Purposes
DEBUG (set debug mode on or off)
NOOP (send a no-operation subcommand to the server, usually to see if the server is still up)
QUOTE (to send FTP server subcommands, as is, to the server without any interpretation by the client)
RESET (resynchronize replies from server if problem occurs)
SYSCMD or the ! (exclamation mark) (run a CL command on the client machine)
VERBOSE (set verbose mode on or off)

FTP client subcommands details:

? Subcommand
To obtain a general description of FTP and how it is used, enter the ? (information) subcommand in the following format:
?

ACCT (Send Account Information)
Some systems require account information to enable certain system functions.  You can be prompted for such information by the remote system.  To send account information, use the ACCT subcommand as follows:
ACCT  account-information
account-information Is a string identifying the user's account.  Account-information can take the form of a password that the host system uses to grant privileges.  This password is not your user password, but rather it is a password on the remote system.
For example, TCP/IP on the IBM Virtual Machine (VM) Operating System may require a password for read and write access to minidisks.  Use the ACCT subcommand to supply a password for the minidisk of the current  directory.  If the remote system is an AS/400 system, the ACCT subcommand performs no operation.
Note:  The AS/400 supports ACCOunt as a synonym for the ACCT subcommand.

APPEND (Append a Local File)
To add a local file member or a hierarchical file system (HFS) file to a remote file, use the APPEND subcommand in the following format:
APpend     localfile  [remotefile]
APpend      You can abbreviate subcommands to the most unique series of characters.
localfile   The name of the local file member to be added to a file on the remote system.  The name of the hierarchical file system (HFS) file to be added to a directory on the remote system. The HFS file naming format must be used to work with folders and documents, for example.  This is also the format you need to use to access other file systems, such as optical.
remotefile  The file to which your file is to be added on the remote system.  If a remotefile is not entered, then a  default name is created by the FTP client.
If the remotefile does not exist on the server, the file is created by the remote FTP server.
Note:  If a member or an HFS file exists, APPEND concatenates the two files so that the data from the original member is first, followed by the data from the appended file.
To add a file on the remote system, you must have write privileges to it.  You may have to supply the appropriate account information by using the ACCT subcommand.
The default file copy mode is stream.  You may need to change this by using the MODE subcommand.  In the case of fixed-record format in the remote file, the file format and record length of the remote file are always preserved.  Records from the local file member can be truncated or padded with blanks when necessary.
You must be in a current and valid directory on the remote system to add the file.  The FTP subcommands DIR, CD, and LS may help you determine your place on the remote system.

ASCII (Change File Type to ASCII)
To change the file transfer type or representation to ASCII, use the ASCII subcommand as follows:
AScii
AScii       You can abbreviate subcommands to the most unique series of  characters.
The ASCII transfer type is used when transferring document files to or from an ASCII system that does not support EBCDIC representation.  ASCII is the default transfer type.
Vertical format information is not transferred.  Horizontal formatting is transferred.

BINARY (Set Transfer Type to Image to Support Binary Image Transfer)
To change the file transfer type or representation to image, use the BINARY subcommand as follows:
Binary
Binary      You can abbreviate subcommands to the most unique series of characters.
If you are transferring binary data to an existing AS/400 file, the record length is the record length of the existing AS/400 file.  If the file does not exist on the AS/400 system, FTP chooses a record length for you.  As an example, when transferring program objects such as 80-byte object code records, the file should already be created with an 80-byte record length to insure that the program object is preserved in an operable format.
Binary image transfer is required for save files, and also for hierarchical file system (HFS) files, such as documents in document library services (QDLS) folders or files on optical volumes.

CD (Change Working Directory or Library)
To change the working directory, library, or file group on the remote system, use the CD subcommand.
CD     directory
CD          You can abbreviate subcommands to the most unique series of characters.
directory   The name of a file directory, library, or other system-dependent file-group designator, on the remote  system.
If the remote system is an AS/400 system, this subcommand changes the current library or directory.  To find out what directories are on the remote system, use the DIR subcommand to get a listing.
Note:  When using the subcommand CD (or LCD) to change from one file system to another file system, the root directory must be specified.
Note:  The AS/400 supports CWD as a synonym for the CD subcommand.

CDUP (Change to Parent Directory)
To change the working directory on the remote system to the parent of the current working directory on the remote system, use the CDUP subcommand.
CDUp
CDUp        You can abbreviate subcommands to the most unique series of characters.

CLOSE (End an FTP Session with the Remote System)
To end your session with the remote system, use the CLOSE subcommand as follows:
CLose
CLose       You can abbreviate subcommands to the most unique series of characters.
FTP remains active on your local AS/400 system.  The CLOSE subcommand allows you to remain in the FTP environment to open another FTP session on another system.  Use the OPEN subcommand to establish a new connection with the same remote system or another remote system.  Use the QUIT subcommand to end FTP service and return to the AS/400 environment from which FTP was started.

DEBUG (Enable Display of Commands Send to Remote System)
To display the commands at the remote system, use the DEBUG subcommand as follows:
DEBug [debug value]
DEBug       You can abbreviate subcommands to the most unique series of characters.
Debug value Toggles the debugging mode.  If an optional debug-value is specified, it is used to set the debugging level.  When debugging is on, each subcommand sent to the remote system is displayed, preceded by the string (>>>).  If the debug-value is 0, debugging is off.  If the debug-value is a positive integer, debugging is on.
If no value is specified, the debug value is toggled.

DELETE (Delete a File on a Remote System)
Use the DELETE subcommand to delete a member of a database file or hierarchical file system (HFS) file on a remote system.  HFS files are, for example, documents in folders or files on optical volumes.  The DELETE subcommand format is as follows:

DELete     remotefile

DELete      You can abbreviate subcommands to the most unique series of characters.
remotefile  The file to be deleted on the remote system.

The remote system may prompt you for authorization to delete a file.  Use the CCT subcommand to respond to that request.

For the FTP file naming for database files and HFS files, see the topic, "FTP File Naming."

Note:  The AS/400 supports ERASE as a synonym for the DELETE subcommand.

DIR (List Remote Libraries or Directories and Their Entries)
The DIR subcommand displays libraries and their entries (files and members) or the list of directories and directory entries from the remote system.

There are two possible file naming formats you can use.  The following example uses the NAMEFMT 0 file naming format.

For an explanation of FTP file naming , see the topic, "FTP File Naming."

DIr    [ name ] [(DISK]
DIr         You can abbreviate subcommands to the most unique series of characters.

name        The name of the directory or library.  The default is the entire current directory or library.  To make a library or directory current, use the CD subcommand.  How you specify a set of remote files is system-dependent.  Most systems allow a generic asterisk, *.  If the remote system is an AS/400 system, for example, DIR MYLIB/MYFILE.* produces a list of all members of file MYFILE in library MYLIB.

(DISK       Stores the results of the DIR subcommand in the file named *CURLIB/DIROUTPUT.DIROUTPUT, instead of showing the results on the display.

If a name that is not valid is specified and a DIROUTPUT.DIROUTPUT output file already exists, the output file will be deleted.

If the remote system is an AS/400 system, the information includes:
1.	For database files, the *FILE objects and members.
2.	For hierarchical file system (HFS) files, for example:
•	All document library services (QDLS) folders and their contents, which could be other folders or documents.
•	All optical volumes and their contents, which could be directories or files.
To get a list containing only the file names in a directory, use the LS subcommand.

Note:  The AS/400 supports LIST as a synonym for the DIR subcommand.

EBCDIC (Change File Type to EBCDIC)
To change the file transfer type or representation to EBCDIC, use the EBCDIC subcommand as follows:

EBcdic

EBcdic      You can abbreviate subcommands to the most unique series of characters.

The EBCDIC transfer type is useful when transferring files to or from another EBCDIC system because it avoids the need to translate between ASCII and EBCDIC on both systems.

See the topic "Data Transfer Types" for related information.

GET (Copy a File from a Remote System)
To copy a file from the remote system to the local system, use the GET subcommand in the following format:

GET     remotefile  [ localfile ] [(REPLACE]

GET       You can abbreviate subcommands to the most unique series of characters.

remotefile  The file to be retrieved from the remote system.

localfile   This variable is optional.  The local file member or hierarchical file system (HFS) file or document to be used or created.  If you do NOT specify a local file name, the FTP client provides a   default name.

(REPLACE    This variable is optional.  Writes over the localfile if it already exists.  The localfile will not be overwritten unless you specify (REPLACE.  The GET subcommand displays a message saying that a file member or folder document with that name already exists.

Using the GET subcommand to get document PCSMENU.EXE from folder QIWSOS2 and using name format (NAMEFMT) 1, you would enter:

GET /QDLS/QIWSOS2/PCSMENU.EXE

The following example uses the GET subcommand with (REPLACE specified, and using name format 0.

GET YOURLIB/YOURFILE.YOURMBR (REPLACE

Assuming the remote server is an AS/400 system, this subcommand gets the member YOURMBR of file YOURFILE in library YOURLIB and places it in member YOURMBR of file YOURFILE in your current library on your local system.

For related information, see the following:
•	FTP file naming
•	Using FTP

HELP (Getting Help for FTP Client Subcommands)
The HELP subcommand provides information about the FTP subcommands used by the local system.

To get information about FTP subcommands used by the local system, use the HELP subcommand in the following format:

Help    [ * | ALL | subcommand ]

Help        You can abbreviate subcommands to the most unique series of characters.

* or ALL    Displays a list of the FTP client subcommands.

subcommand  Provides detailed help for the specified subcommand.  For example, HELP GET tells you how to transfer a file from a remote system to your local system.

If you use the HELP subcommand without a parameter, you see a list of subcommands and a general description of the help information available.

HELP (Getting Help for FTP Server Subcommands)

To get information about FTP subcommands used by the server system, use the HELP subcommand in the following format:

Help    SERVER [ subcommand ]

Help        You can abbreviate subcommands to the most unique series of characters.

SERVER      Gives the help offered by the remote system for FTP server subcommands.  This is similar to using QUOTE with the HELP parameter.  QUOTE HELP lists the FTP subcommands supported by the remote system just as the HELP SERVER subcommand does.

subcommand  The name of the subcommand you want information about.  For example, HELP SERVER ADDM tells how to add a member to a physical file if the remote system is an AS/400 system.

Note:  The AS/400 supports RHELP as a synonym for the HELP SERVER subcommand.

LCD (Change Working Library or Folder)
To change the default library or folder to which file transfer commands apply on the local system, use the LCD subcommand as follows:

LCd   pathname

LCd         You can abbreviate subcommands to the most unique series of characters.

pathname    The name of a library, folder, or directory on the local system.
The LCD subcommand has the same function on the client system as the CD subcommand has on the server system.

Notes:
1.	The current library is not changed by the LCD subcommand.  Therefore, you can place files where you want them without changing the current directory.
2.	When using the subcommand CD (or LCD) to change from one file system to another file system, the "root" directory must be specified.  For example, /QDLS or /QOPT.

For related information, see the following:
•	FTP file naming
•	Using FTP

LOCSITE subcommand (Specify local site information)
Use this subcommand to specify local client processing parameters.

   LOCSIte    [ parameters ]

LOCSIte     You can abbreviate subcommands to the most unique series of characters.

These parameters are supported:

CRTCCSID *CALC
    New database files created during ASCII file transfers use the related default EBCDIC CCSID of the ASCII file transfer CCSID.  This is the default value.

CRTCCSID *USER
    New database files created during ASCII file transfers use the current job CCSID or if this CCSID is 65535, the default CCSID determined by the language id specified for the current job.

CRTCCSID *SYSVAL
    New database files created during ASCII file transfers use the CCSID specified by the QCCSID system value.

CRTCCSID CCSID-number
    Specify the CCSID to be used when creating database files on the client during ASCII file transfers.  This value is validated to insure that a valid EBCDIC CCSID has been entered.

CRTCCSID
    Display a message containing the current FTP client CRTCCSID setting.

TRIM 0
    Set Trim option to OFF. Trailing blanks of database records are sent.

TRIM 1
    Trailing blanks of database records are not sent when transferring database files using the file structure and stream mode.  This is the default setting.

TRIM 2
    Trailing blanks of database records are not sent for all transfers, including record structure and block mode.

TRIM
    Displays the current setting of the Trim option.

Note:
     When the file transfer type is IMAGE (BINARY), the trailing blanks of database records are not trimmed.

Here is an example of how to enter the subcommand when you want the trailing blanks to be sent:

       LOCSIte TRIM 0

LOCSTAT (Display Local Status Information)

To display local status information, use the LOCSTAT subcommand as follows:

LOcstat

LOcstat     You can abbreviate subcommands to the most unique series of characters.

The following local status information is displayed:
•	Values of the Boolean flags you can set using   SENDSITE and SENDPORT subcommands
•	Remote system name, port number, and logon status
•	Data type and transfer mode.
•	NAMEFMT value for both the client and server.
•	Setting for the VERBOSE subcommand.
•	Setting for the DEBUG subcommand.

LPWD (Print Working Library, Folder, or Directory)
To display the working library, folder, or directory to which file transfer commands apply on the local system, enter:

LPwd

LPwd        You can abbreviate subcommands to the most unique series of  characters.

For related information, see the following:
•	Using FTP

LS (List Remote File Names)
To list the names of files in a remote set of files, use the LS subcommand as follows:

LS    [ name ] [(DISK]

LS          You can abbreviate subcommands to the most unique series of characters.

name        The remote directory, folder, or library from which the files are to be listed.  If the remote system is an AS/400, the names of the files and also the names of the members contained in the files are listed.  The default is to list the entire current directory, library, or folder.  To change the current directory, library, or folder, use the CD  subcommand.  How you specify a set of remote files is system-dependent.

 (DISK       Stores the file name list LS subcommand into a file named *CURLIB/LSOUTPUT.LSOUTPUT, instead of showing the results on the display.  Each time you specify the (DISK parameter with the same current library, the contents of the LSOUTPUT.LSOUTPUT file are changed.

If you specify a file name that is not valid, but there is an existing LSOUTPUT.LSOUTPUT file, that existing file will be deleted.

The LS subcommand lists the file names only.  To get a list of complete directory entries with additional information about the files, see the DIR subcommand.

For the FTP file naming for database files and HFS files, see the topic, "FTP File Naming."

Note:  The AS/400 supports NLST as a synonym for the LS subcommand.

LTYPE (Local Type)
To specify the file-transfer type, or the representation in which the transfer is to take place on the local system, use the LTYPE subcommand in the following format:

LType   C   CCSID#

LType       You can abbreviate subcommands to the most unique series of characters.

C           Is the CCSID type.  This value must be coded as C.
CCSID#      Is the CCSID value.  This value must be coded as a CCSID number 1-65533.

MDELETE (Delete Multiple Files)
To delete multiple files on the remote system, use the MDELETE subcommand.  This command deletes all members of an AS/400 physical file, not the file itself.

MDelete    { remotefile [remotefile.]}

MDelete     You can abbreviate subcommands to the most unique series of characters.

remotefile  The file or files to be deleted on the remote system.
The following is an example in NAMEFMT 0 case of the MDELETE subcommand:

MDELETE MYLIB/FILE1.MBRA YOURLIB/FILE2.MBRB

This deletes member MBRA in file FILE1 in library MYLIB and member MBRB in file FILE2 in library YOURLIB on a remote AS/400 system.

The following is an example in NAMEFMT 1 case of the MDELETE subcommand:

MDELETE QDLS/QIWSOS2/PCSMENU.EXE QDLS/PCSDIR/PCSFILE.EXE

This deletes document PCSMENU.EXE in folder QIWSOS2 in the document library services library, and also deletes document PCSFILE.EXE in folder PCSDIR in the QDLS library on an AS/400 system.  You can use an asterisk to delete the files generically.  For example, if the remote system is an AS/400 system:

MDELETE MYLIB/MYFILE.* would delete all members of file MYFILE in library MYLIB.

For FTP file naming, see the topic, "FTP File Naming."

MGET (Copy Multiple Files)
To copy one or more remote files and create a corresponding number of local files with the same name, use the MGET subcommand in the following format:

MGet  { remotefile [remotefile.]}[(REPLACE]

MGet        You can abbreviate subcommands to the most unique series of  characters.

remotefile  The file or files to be retrieved from the remote system.
(REPLACE    Overwrites an existing file on your local system.  If the file already exists on your local system and you do not use the (REPLACE option, the existing file is not overwritten and a message is displayed to that effect.

See the GET subcommand for a description of how file names are created.

You can use an asterisk to copy all members in a file or all members starting with a particular letter to your current library or directory.  For example, if the remote system is an AS/400 system:

•	MGET MYLIB/MYFILE.* copies all the members of file MYFILE in library MYLIB on the remote system to your current library on the local system.
•	MGET /QOPT/PICTURES/IMAGES/* copies all the files of directory IMAGES from optical volume PICTURES to your current library (or directory) on the local system.
•	MGET TEST/FILE.A* copies all members starting with the letter A in file FILE.
•	MGET /QDLS/QIWSOS2/A* copies all documents starting with the letter A in folder QIWSOS2.

For related information, see the following:
•	FTP file naming
•	Using FTP

MKDIR (Make Directory)
To create a directory or subdirectory from the directory specified in the pathname, use the MKDIR subcommand as follows:

MKdir   pathname

MKdir       You can abbreviate subcommands to the most unique series of characters.

Pathname    The name of a file directory, library, or other system-dependent file-group designator on the remote system.

For FTP file naming see the topic, "FTP File Naming."

MODE (Specify Transmission Mode of Data)
To specify how bits of data are to be transmitted, specify the mode, or data format, in which the file transfer is to take place by using the MODE subcommand as follows:

MOde    [B | S]

MOde        You can abbreviate subcommands to the most unique series of characters.  If no parameter is entered, the current setting  is displayed.

B           Specifies block mode.  In this mode, data is transmitted as a series of data blocks, preceded by one or more header bytes.  If you are transferring data in block mode, the type must be EBCDIC.

S           Specifies stream mode.  In this mode, data is transmitted as a stream of bytes.  Any representation type can be used with stream mode.

See the topic "Data Transfer Modes" for related information.

Note:  Stream mode is the default transfer mode used in FTP.  Some systems do not support block mode.

MPUT (Send Multiple Files)
To send one or more local files (members, save files, or documents for example) and create a corresponding number of remote files with the same name, use the MPUT subcommand in the following format:

MPut    { localfile [localfile.]}

MPut        You can abbreviate subcommands to the most unique series of characters.

localfile   Specify one or more local AS/400 file member names or HFS directories to be transferred to the remote system.  The name given to the file on the remote system is generated automatically by the client.  See the topic "Default names" for additional information.

Note:  If the remote file already exists, the contents are replaced by the contents of localfile unless   SUNIQUE is on.

The following is an example of the NAMEFMT 0 using the MPUT subcommand:
MPUT MYLIB/FILE1.MBR1 MYLIB/FILE1.MBR2

This sends members MBR1 and MBR2 of file FILE1 in library MYLIB to the remote system.

The following is an example of the NAMEFMT 1 using the MPUT subcommand:
MPUT /QDLS/QIWSOS2/PCSMENU.EXE /QDLS/QIWSOS2/PCSMENU2.EXE

This sends document PCSMENU.EXE and document PCSMENU2.EXE from folder QIWSOS2 to the remote system.

You can use an asterisk to send all the members in a file or all the documents in a folder.  For example, MPUT MYLIB/MYFILE.* transfers all the members of file MYFILE in library MYLIB.

For related information, see the following:
•	FTP file naming
•	Using FTP

NAMEFMT (Select File Naming Format)
To select which file naming format to use on the local system, and the remote system if it is an AS/400 system, use the NAMEFMT subcommand as follows:

NAmefmt [0|1]

NAmefmt     You can abbreviate subcommands to the most unique series of characters.

The current setting is displayed when no parameter is specified.
0           A naming format only for library file system database files.  This format was available prior to Version 3 Release 1.  The general format is  libname/filename.mbrname
1           A naming format for both hierarchical file systems and the library file system.  This format must be used to work with the hierarchical file systems such as optical.

This naming format is available at Version 3 Release 1.

Library file system files in this naming format are:
/QSYS.LIB/libname.LIB/filename.FILE/mbrname.MBR

The document library services, an HFS file system, has the following format:
/QDLS/libname/filename.ext

For optical, the format is:
/QOPT/volname/dirname/filename.ext

Notes:
1.	The name format can only be changed to 0 when the working directory is a database file system directory.
2.	Library file system save files must be specified using NAMEFMT 1.

For related information, see the following:
•	Using FTP
•	Changing from one server file system to another
•	Integrated File System Introduction, SC41-3711.

NOOP (Check Remote Server Response)
To find out if the FTP server on the remote system is responding, use the NOOP subcommand as follows:

NOop

NOop        You can abbreviate subcommands to the most unique series of characters.

If the remote system is responding, the message, OK, is displayed.

If the remote system does not respond, for example, because the connection has ended, a message is displayed stating that.

NULLFLDS (Specify if database file with NULL field values allowed.)
To specify whether or not to allow transfer of a database file containing NULL field values on the local system, and on the remote system if it is an AS/400 system, use the NULLFLDS subcommand as follows:

    NUllflds [ 0 | 1 ]

NUllflds    You can abbreviate subcommands to the most unique series of characters.

  -           When no parameter is specified, the current setting is displayed.

  0           Do not allow transfer of database files containing NULL fields.  This is the default setting.

  1           Allow transfer of database files containing NULL fields.

Note:  Transfer of files containing NULL fields requires both the client and server to have this setting enabled.  Also, the target file must exist prior to the file transfer and have the the same file definition as the source file.

Results are not predictable if a file containing NULL fields is transferred to a non-AS/400 system.

OPEN (Connect to FTP Server on a Remote System)
To connect to the FTP server on a remote system, use the OPEN subcommand in the following format:

Open     systemname  [ portnumber ]

Open        You can abbreviate subcommands to the most unique series of characters.

systemname  The name or internet address of the remote system.
portnumber  The port number to use for this session until the connection is closed.  This is optional and if you do not specify a port number, one is chosen.

Once you have opened a connection to a remote system, you cannot connect to another system until you close the current session.

•	FTP file naming
•	Using FTP

Note:  The AS/400 supports CONNECT as a synonym for the OPEN subcommand.

PASS (Send Your Password)
To send your password, use the Password (PASS) subcommand in the following format:

PAss     password

PAss        You can abbreviate subcommands to the most unique series of characters.

password    Is a string specifying your password.

Note:  On some systems, this subcommand must be preceded by the OPEN and USER subcommands.  For some systems, this completes your identification for access control.  This subcommand is not necessary when the server requests you to type a password when connecting or logging in to the server.

PUT (Copy a File)
To copy a local file member, save file, or hierarchical file system (HFS) file into a file at the remote system, use the PUT subcommand in the following format:

PUT     localfile   [ remotefile ]

PUT         You can abbreviate subcommands to the most unique series of characters.

localfile   The name of the local file member to be sent.
remotefile  Remotefile is optional.  The name of the delivered file on the remote system if different from the local file name.  If the file name does not already exist, the FTP client provides a   default name.  If a remotefile of that name already exists, the contents are replaced by the contents of the localfile unless SUNIQUE is on.

The following example uses the PUT subcommand with NAMEFMT 0:

PUT MYLIB/MYFILE.MYMBR

This sends member MYMBR of file MYFILE in library MYLIB to the remote system.

The following example uses the PUT subcommand with NAMEFMT 1:

PUT /QDLS/QIWSOS2/PCSMENU.EXE

This sends document PCSMENU.EXE of folder QIWSOS2 in the Document Library Services directory to the remote system.

If the remote file name requires apostrophes as part of the file name, then the file name must be enclosed within two  more sets of apostrophes.  This sends 'MEMBER.ONE' as the file name to the remote host.  See the topic Apostrophes and Quotation Marks for FTP Subcommands for more information.

PUT LIBRARY/FILE.MEMBER '''MEMBER.ONE'''

For related information, see the following:

•	FTP file naming
•	Using FTP

Note:  The AS/400 supports STORE as a synonym for the PUT subcommand.

PWD (Display Current Directory or Library)
To display the current directory or library of the remote system, use the PWD subcommand as follows:

PWd

PWd         You can abbreviate subcommands to the most unique series of characters.

If the remote system is an AS/400 system, the current user library or HFS file system directory on the remote system is displayed.  The working directory is displayed in quotation marks.  To change the current library or directory of the remote system, use the CD subcommand.

For related information, see the following:
•	Using FTP

QUIT (Disconnect and End an FTP Session)
To disconnect from the remote system and end an FTP session, use the QUIT subcommand in the following format:

QUIt

QUIt        You can abbreviate subcommands to the most unique series of characters.

Also, you can press F3 (Exit) and then confirm to end the FTP client session.

For related information, see the following:
•	Using FTP

QUOTE (Send a Command to an FTP Server)
To send a subcommand directly to the FTP server on the remote system, use the QUOTE subcommand.  The string is sent verbatim to the FTP server.

QUOte     string

QUOte       You can abbreviate subcommands to the most unique series of characters.

string      The subcommand and arguments that you want sent to and interpreted by the remote FTP server.

Notes:
1.	The AS/400 FTP server limits the string to 1000 characters.
2.	For the QUOTE subcommand, whatever you enter is passed as the argument.  For example, if you type:

QUOTE  CWD 'SYS1'

The resulting argument is:

CWD 'SYS1'
Special server commands exist and must be entered using the QUOTE subcommand.

REINITIALIZE (Reinitialize Session)
To start a session again on the remote system, use the REINITIALIZE subcommand as follows:

REInitialize

REInitialize You can abbreviate subcommands to the most unique series of characters.

If the server system supports the REINITIALIZE subcommand, the user is returned to the same state as when the session was started and has to log in again to continue.

Servers that support the REINITIALIZE subcommand should do the following:

1.	Allow any transfer in progress to be completed.
2.	End the USER session, removing all input/output and account information.
3.	Reset all server parameters to the default settings.
4.	Leave the control connection open.

RENAME (Rename a File)
To rename a file on the remote system, use the RENAME subcommand in the following format:

REName     originalname  newname

REName      You can abbreviate subcommands to the most unique series of characters.
originalname The present name of the remote file.
newname     The new name of the remote file.  If the file specified by newname already exists, it is replaced by the new file.

REN /QOPT/PICTURES/IMAGES/SPORTSCAR.BMP /QOPT/PICTURES/IMAGES/CAR.BMP

This example renames the file SPORTSCAR.BMP in directory IMAGES on optical volume PICTURES to CAR.BMP.

For FTP file naming see the topic, "FTP File Naming."

RESET (Reset)
To clear the server reply queue, use the RESET subcommand as follows:

RESet

RESet       You can abbreviate subcommands to the most unique series of  characters.

This subcommand resynchronizes server command and reply sequencing with the remote FTP server.  Resynchronization may be necessary following a violation of the FTP protocol by the remote server.

RMDIR (Remove Directory)
To remove the directory specified in the pathname, use the RMDIR subcommand as follows:

RMDir   pathname

RMDir       You can abbreviate subcommands to the most unique series of characters.

Pathname    The name of a file directory, library, or other system-dependent file-group designator on the remote system.  For hierarchical file system (HFS) directories, only empty directories can be deleted.  Libraries are unconditionally deleted.

For FTP file naming for database files and HFS files, see the topic, "FTP File Naming."

SENDPAsv (Specify if PASV Subcommand Is Sent)
Use this to specify whether or not a PASV subcommand is sent by the FTP client to the FTP server for data transfer or when issuing the DIR and LS subcommands.

Enter the SENDPAsv subcommand as follows:

SENDPAsv

SENDPAsv works like a toggle switch that determines if the FTP client should send a PASV subcommand when establishing a connection for a data transfer.  The default is ON, which sends the PASV subcommand.  Enter the SENDPAsv subcommand to toggle to OFF when you don't want the PASV subcommand sent.  Enter the SENDPAsv subcommand again when you want to toggle back to ON.

Note:

Use of the PASV subcommand to establish a data transfer connection is recommended when establishing a connection through a firewall.  In some cases, data transfer through a firewall is not possible without the PASV subcommand.

Some FTP servers do not support the PASV subcommand. If SENDPAsv is set to ON and the FTP client attempts a data transfer with a server that does not support PASV, the FTP client will display a message indicating that the server does not support PASV.  The FTP client will then attempt to establish the data transfer connection without sending the PASV subcommand.

When SENDPAsv is set to OFF or is disabled, then the PORT subcommand will be sent to the server when SENDPORT is ON.

SENDPORT (Specify if PORT Subcommand Is Sent)
To specify whether or not a PORT subcommand is sent on a PUT, MPUT, LS, or DIR subcommand, enter the SENDPORT subcommand as follows:

SENDPort

SENDPort    You can abbreviate subcommands to the most unique series of characters.

SENDPORT works like a toggle switch that determines if FTP should send a PORT subcommand when establishing a connection for each data transfer.  The AS/400 system default (on) is to send the PORT subcommand.  You may  find it useful to not send the PORT subcommand to those systems that ignore PORT subcommands but indicate  (incorrectly) that they have been accepted.

See Unique Server Requirements for related information.

Note:  The AS/400 supports TOGLPORT as a synonym for the SENDPORT subcommand.

SENDSITE (Specify if SITE Subcommand Is Sent)
To specify whether or not a SITE subcommand is automatically sent when doing a PUT or an MPUT operation, enter the SENDSITE subcommand in the following format:

 SENDSite

SENDSite    You can abbreviate subcommands to the most unique series of characters.

SENDSITE works like a toggle switch that determines if the SITE subcommand (containing record format information) should be sent prior to sending PUT and MPUT subcommands.

Record format information is used by a remote IBM VM server.  If the remote server is not IBM VM, you can use the SENDSITE subcommand to prevent the record format information from being sent.  The AS/400 system default (on) is to send the record format information.  If the remote server does not handle the record format information, PUT and MPUT operations are not affected if the record format information is sent.

See Unique Server Requirements for related information.
Unique Server Requirements

Other server setups:

•	Specify if SITE command is sent to server with PUT subcommands or MPUT subcommands (use SENDSITE subcommand).
•	Specify if PORT command is sent to server with PUT subcommands or MPUT subcommands (use SENDPORT subcommand).
•	Specify if server files should be replaced on PUT subcommands or MPUT subcommands (use SUNIQUE subcommand).
•	Use the SITE subcommand to specify any other special server requirements.  The server should inform the client of its special requirements with SERVER HELP or by a response to a SITE subcommand without any parameters.  Use SITE subcommand.

Additional details for each subcommand are provided in the individual subcommand help descriptions.

SITE (Send Information)
To send information that is used by the remote system to provide services specific to the remote system, use the SITE subcommand in the following format:

SIte    [ parameters ]

SIte        You can abbreviate subcommands to the most unique series of characters.

parameters  Are dependent on the remote system.

To find the nature of these services and their syntax specifications, issue the HELP SERVER SITE subcommand.  Some FTP servers do not support the SITE subcommand.

Note:  The SITE subcommand is used by the PUT and MPUT subcommands to indicate the format and length of the records.  By default, the PUT subcommand sends a SITE subcommand automatically.  The SITE subcommand is used by the NAMEFMT subcommand to indicate to the server whether names are in NAMEFMT 0 or 1.

See Unique Server Requirements for related information.

STATUS (Retrieve Status Information)
To retrieve status information from a remote system, use the STATUS subcommand in the following format

STAtus    [ name ]

STAtus      You can abbreviate subcommands to the most unique series of characters.

name        Is the name of the remote directory or file for which status information is requested.  It is not a required parameter.

Note:  The name parameter is not supported by the AS/400 FTP server application.

If no parameter is given, the server returns general status information about the FTP server process.  This includes current values of all transfer parameters and the status of connections.  The status information that is returned depends on the specific server implementation.

STRUCT (Specify File Structure)
To specify the structure of a file as a continuous sequence of data bytes, use the STRUCT subcommand in the following format:

STRuct  [F|R]

STRuct      You can abbreviate subcommands to the most unique series of characters.  If no parameter is entered, the current setting is displayed.

F           Is a file structure.  The file is transferred as a continuous stream of data bytes.
R           Is a record structure.  The file is transferred as a sequence of sequential records.

The structure of a file affects the transfer mode and the interpretation and storage of a file.

See Data Structure for related information.
Data Structure
Data structure (set by the STRUCT subcommand):

•	FILE is a file structure.  The file is transferred as a continuous stream of data bytes.
•	RECORD is a record structure.  The file is transferred as a set of sequential records.

SUNIQUE (Control Overwriting of Files)
To control whether a file is overwritten when doing a PUT or MPUT subcommand, use the SUNIQUE subcommand as follows:

SUnique

SUnique     You can abbreviate subcommands to the most unique series of characters.

SUNIQUE acts like a toggle switch.  By default, SUNIQUE is set off.  This means that if the remote system already has a file with the name specified by remotefile on a PUT or MPUT subcommand, the FTP server on the remote system writes over the existing file.

If SUNIQUE is set on, existing files are not overwritten.  Instead, a new file is created on the remote system and the FTP server on the remote system sends the name of the created file back to the user.

Note:  If the remote system is an AS/400 system, the created File.Mbr names are formed by adding numbers to the end of the member name of the localfile specified in the PUT or MPUT subcommand.  Thus, if the name NEWFILE.NEWMBR already exists on the remote system, the remote AS/400 system creates NEWFILE.NEWMBR1 and writes the data to it.

HFS file names are created in similar way.  If the name already exists, a new HFS file is created with a name consisting of the specified file name and a number suffix.  If the name hfsname already exists on the remote system, the remote AS/400 system creates hfsname1.

See Unique Server Requirements for related information

SYSCMD (Pass an AS/400 CL Command)
To type an AS/400 CL command that runs on your local AS/400 system, without leaving the FTP environment, use the SYSCMD subcommand in the following format:

SYSCmd     commandline

SYSCmd      You can abbreviate subcommands to the most unique series of characters.

commandline Is an AS/400 CL command.  You can precede the command name with a ? to get the prompt for the CL command.  For example, if you type:

SYSCMD ? SNDBRKMSG
you get the display for the Send Break Message (SNDBRKMSG) command.

Other CL commands that can be passed to your local AS/400 system using the SYSCMD subcommand are Display Library List (DSPLIBL) and Change Current Library (CHGCURLIB).  These CL commands are helpful when using
the GET or MGET subcommands.  To find out if a current library is defined, type the following:

SYSCMD DSPLIBL

The current library, if one exists, is indicated in the TYPE column of the display.

To define or change the current library to YOURLIB, type the following:

SYSCMD CHGCURLIB YOURLIB

If you want to see low level messages that result from your CL command, or if you want to enter multiple CL commands before returning to the FTP environment, you should consider using the AS/400 CALL command.

For example, to get to the AS/400 Command Entry display, type the following:

SYSCMD CALL QCMD

From the Command Entry display you can then call your application programs or enter CL commands.  At the completion of your application program or the CL command, you return to the Command Entry display. From there you can display messages, start additional work on the system, or press F3 (Exit) or F12 (Cancel) to return to FTP.

You can enter AS/400 Control Language (CL) commands when you press F21 (CL command line) from the main FTP display.

Notes
1. 	Most server systems have a time-out that ends the session if no activity occurs within a specific time period.  If the command you specify runs for longer than the time-out period, the server ends the connection with the client.
2.  The AS/400 supports the exclamation mark (!) as a synonym for the SYSCMD subcommand.
3.  The SYSCMD subcommand passes to the AS/400 as a CL command exactly what the user types.

SYSTEM (Remote System Description)
To display the name of the operating system on the remote system, use the SYSTEM subcommand as follows:

SYSTem

SYSTem      You can abbreviate subcommands to the most unique series of characters.

The returned information is system dependent.
TYPE (Specify File Transfer Type)
To specify the file-transfer type, or the representation in which the transfer is to take place, use the TYPE subcommand in the following format:

      TYpe    [ A                                             |
                B [ 1 | 2 | 3 [A|R] | 4 [A|R] | 5 |6 | 7]     |
                C ccsid#                                      |
                E                                             |
                F [ 1 ]                                       |
                I                                         ]

TYpe        You can abbreviate subcommands to the most unique series of characters.

A           Specifies the transfer type as the default (ASCII) transfer type.  This has the same effect as the ASCII subcommand.  No vertical format information is transferred.  All horizontal format information is transferred.  The ASCII transfer type is intended for the transfer of document files, except when both systems use the EBCDIC type.
B           Shift JIS Kanji (4992 CCSID)
B 1         Shift JIS Kanji (4992 CCSID)
B 2         Extended UNIX Code Kanji (5050 CCSID)
B 3         JIS 1983 using ASCII shift-in escape sequence (958 CCSID)
B 3 A       JIS 1983 using ASCII shift-in escape sequence (958 CCSID)
B 3 R       JIS 1983 using JISROMAN shift-in escape sequence (956 CCSID)
B 4         JIS 1978 using ASCII shift-in escape sequence (959 CCSID)
B 4 A       JIS 1978 using ASCII shift-in escape sequence (959 CCSID)
B 4 R       JIS 1978 using JISROMAN shift-in escape sequence (957 CCSID)
B 5         Hangeul (CCSID 934)
B 6         Korean Standard Code KSC-5601, 1989 version (CCSID 5047)
B 7         Traditional Chinese (CCSID 5550) (CCSID 938)
C           Allows the user to set the transfer type to any CCSID (coded character set identifier) which is installed on the system.  The CCSID # must follow C.
E           Specifies the transfer type as EBCDIC.  This has the same effect as the EBCDIC subcommand.  No vertical format information is transferred.  All horizontal format information is transferred.  The EBCDIC transfer type is
intended for efficient transfer between systems that use EBCDIC for their internal character representation.
F           IBM EBCDIC Kanji (CCSID 5035)
F 1         IBM EBCDIC Kanji (CCSID 5035)
I           Specifies the transfer type as image.  This has the same effect as the BINARY subcommand.  With the image transfer type, data is sent as a string of bits, packed into 8-bit bytes.  The image transfer type is used for efficiently storing and retrieving files and for transferring binary data such as object code.

If no parameters are specified, the present setting for the TYPE subcommand is displayed.

See the topic "Data Transfer Types" for related information.

Note:  The AS/400 supports REPRESENT as a synonym for the TYPE subcommand.

USER (Send Your User ID to the Remote System)
To send your user ID to the remote system, you must use the USER subcommand in the following format:

User     userid   [ password ]

User        You can abbreviate subcommands to the most unique series of characters.
userid      Your logon name on the remote system.
password    Your password on the remote system.  Specifying your password is optional.  If you do not supply your password when calling the USER subcommand, you receive a prompt to do so if the remote system requires a logon password.

For related information, see the following:

•	Using FTP

Note:  The AS/400 supports LOGIN as a synonym for the USER subcommand.

VERBOSE (Control of Text Display)
To display the responses from the FTP server, use the VERBOSE subcommand as follows:

Verbose

Verbose     You can abbreviate subcommands to the most unique series of characters.  There are no parameters for this subcommand.

Related Topics:


AS/400 and iSeries FTP Server Subcommands

If the FTP server that you are connecting to is an AS/400, the following special server subcommands are supported:

ABOR	- Cancels the Previous Subcommand
ADDM	- Adds a Member to a Physical File
ADDV	- Adds a Member to a Variable-Length Member to a Physical File
APPE	- Appends Data to a Specified File
CDUP	- Changes Directory to the Parent Directory
CRTL	- Creates a Library
CRTP	- Creates a Physical File
CRTS	- Creates a Source Physical File
CWD	- Changes the Working Directory or Library
DBUG	- Starts or Ends a Server Trace
DELE	- Deletes a File, a Member, or a Document
DLTF	- Deletes a File
DLTL	- Deletes a Library
HELP	- Gets Info about FTP Server Subcommands
LIST	- Lists Files or Directory Entries
MKD	- Makes a Directory
MODE	- Specifies a Format for Data Transmission
NLST	- Lists the Names of Files or Directories
NOOP	- Checks if Server is Responding
PASS	- Sends a Password to the Server
PASV	- Tells the Server to Passively Open the Next Data Connection
PORT	- Identifies the Data Port on which the Client Will Listen for a Connection
PWD	- Displays the Current Working Directory
QUIT	- Logs Off the User; Closes the Connection
RCMD	- Sends a CL Command to an FTP Server
REIN	- Re-starts a Session on a Server
RETR	- Retrieves Data from a Server
RMD	- Removes a Directory
RNFR	- Specifies a File to be Renamed
RNTO	- Specifies a New File Name
SITE	- Sends Information for a Server to Use
STAT	- Gets Status Information from a Server
STOR	- Saves Data on a Server and Replaces an Existing File
STOU	- Saves Data on a Server But Does Not Replace an Existing File
STRU	- Specifies the Structure of a File
SYST	- Prints the Name of the OS on the Server
TIME	- Sets the Time-Out Value for the FTP Server
TYPE	- Specifies the File Transfer Type
USER	- Sends a User Logon ID to the Server
XCUP	- Changes to the Parent Directory
XCWD	- Changes to the Working Directory
XMKD	- Creates a Directory
XPWD	- Displays the Current Directory or Library
XRMD	- Removes a Directory

These special server subcommands must be entered using the client QUOTE subcommand in the following format:

QUOTE DLTF FILE(RLKAYS/MYFILE)

You can find the complete syntax for the associated CL commands in the AS/400 CL Reference book.

Use the HELP SERVER subcommand to verify what the server supports. Use the HELP SERVER subcommand to get additional information for a specific server subcommand from the server

ADDM (Add Physical File Member)

The ADDM command is the same as the AS/400 Add Member to Physical File (ADDPFM) command. To add member SALES to physical file MYFILE in library RLKAYS, type the following:

QUOTE ADDM FILE(RLKAYS/MYFILE) MBR(SALES)

ADDV (Add Physical File Variable-Length Member)

The ADDV command is the same as the AS/400 Add Variable-Length Member to Physical File (ADDPVLM) command. To add variable-length member SALES to physical file MYFILE in library RLKAYS, type the following:

QUOTE ADDV FILE(RLKAYS/MYFILE) MBR(SALES)

CRTL (Create Library)

The CRTL command is the same as the AS/400 Create Library (CRTLIB) command. To create a library on a remote AS/400 system, type the following:

QUOTE CRTL TESTTCP

where TESTTCP is the name of the library you want to create.

CRTP (Create Physical File)

The CRTP command is the same as the AS/400 Create Physical File (CRTPF) command. To create a physical file called MYFILE in library RLKAYS with a record length of 80 and no restrictions on the number of members, type the following:

QUOTE CRTP FILE(RLKAYS/MYFILE) RCDLEN(80) MAXMBRS(*NOMAX)

CRTS (Create Source Physical File)

The CRTS command is the same as the AS/400 Create Source Physical File (CRTSRCPF) command. To create a source physical file called MYFILE in library RLKAYS, type the following:

QUOTE CRTS FILE(RLKAYS/MYFILE)

DLTF (Delete File)

The DLTF command is the same as the AS/400 Delete File (DLTF) command. To delete file MYFILE in library RLKAYS, type the following:

QUOTE DLTF FILE(RLKAYS/MYFILE)

DLTL (Delete Library)

The DLTL command is the same as the AS/400 Delete Library (DLTLIB) command. To delete a library on a remote AS/400 system, type the following:

QUOTE DLTL TESTTCP

where TESTTCP is the name of the library you want to delete.

RCMD (Send a CL Command to an FTP Server System)

The RCMD FTP server subcommand is used to run IBM AS/400 control language (CL) commands on the FTP server system. The length of the RCMD subcommand string is limited to 1000 characters. Because no prompting is available for the RCMD subcommand, the RCMD subcommand string must include all necessary parameters to run the CL command.

If the CL command called through the RCMD subcommand runs successfully, a message is displayed that states that the subcommand was successful. If an error occurred, a message is displayed stating that an error occurred. The message does not include what the error was unless the error occurred because a library, file, or member name was not valid.

This is an example of using RCMD to run a Delete File (DLTF) command:

QUOte RCMD DLTF FILE(mylib/myfile)

where mylib is the name of the library from which the file is to be deleted, and myfile is the name of the file to be deleted.

SITE (Send Information Used by a Server System)

To send information that is used by the server system to provide services specific to the server system, use the SITE FTP server subcommand in this format:

SITE [parameters]

AS/400 FTP server supports these parameters for the SITE subcommand:

LISTFMT 0
The server returns information for the LIST subcommand in AS/400 format introduced in V3R1M0.

LISTFMT 1
The server returns information for the LIST subcommand in UNIX-style format. The name of the file is the last item of each line returned.

LISTFMT
Return a message indicating the current FTP server LISTFMT setting.
Note: LISTFMT may be needed by some FTP clients that rely on particular formats of the information returned by the SERVER for the LIST server subcommand. The default LIST output format to be used by AS/400 FTP server is configured using the LISTFMT option of the CHGFTPA command.

NAMEFMT 0
Use the LIBRARY/FILE.MEMBER naming format. This naming format is only for library file system database files.

NAMEFMT 1
Use the path naming format. This naming format is for all file systems that are supported by FTP including the library file system. Naming format 1 must be used to work with all AS/400 file systems other than the library file system.

NAMEFMT
Return a message containing the current server file naming format.
Note: The default NAMEFMT setting to be used by AS/400 FTP server is configured using the NAMEFMT option of the CHGFTPA command.

CRTCCSID *CALC
New database files created during ASCII file transfers use the related default EBCDIC CCSID of the ASCII file transfer CCSID.

CRTCCSID *USER
New database files created during ASCII file transfers use the current job CCSID or if this CCSID is 65535, the default CCSID determined by the language id specified for the current job.

CRTCCSID *SYSVAL
New database files created during ASCII file transfers use the CCSID specified by the QCCSID system value.

CRTCCSID [CCSID-number]
Specify the CCSID to be used when creating database files on the client during ASCII file transfers. This value is validated to insure that a valid EBCDIC CCSID has been entered.

CRTCCSID
Display a message containing the current FTP client CRTCCSID setting.

NULLFLDS 0
The server does not allow transfer of database files containing NULL fields. This is the default.

NULLFLDS 1
The server allows transfer of database files containing NULL fields.
Note: Transfer of files containing NULL fields requires both the client and server to have this setting enabled. Results are not predictable if a file containing NULL fields is transferred to a non-AS/400 system, or if the transfer type results in codepage conversion of the data.

NULLFLDS
Return a message indicating the current FTP server NULLFLDS setting.

TRIM 0
Set Trim option to OFF. Trailing blanks of database records are sent.

TRIM 1
Set Trim option to ON. Trailing blanks of database records not sent when transferring database files using file structure and stream mode. This is the default.

TRIM 2
Trailing blanks of database records are not sent for all transfers, including record structure and block mode.

TRIM
Returns a message indicating the current setting of the FTP server Trim option.
Notes:
1. Prior to the availability of this subcommand, trailing blanks of QSYS.LIB file system records were always removed before transferring the file to the server system.
2. TRIM settings do not apply to TYPE I (binary) file transfers. Blanks are never trimmed for TYPE I file transfers, regardless of the TRIM setting.

TIME (Time-out Value)

After the FTP control connection is established between the FTP client and the FTP server, the FTP server controls the time-out for this connection. To set the time-out value, use the TIME subcommand in the following format:

TIME value

Where value is a string of numeric characters, and specifies the number of seconds the server waits before ending the connection with the client.

To set the time-out value of the FTP server to 1000 seconds, type the following:

QUOTE TIME 1000

Related Topics:

Copyright © 1998-2003 Surround Technologies, LLC.


Windows FTP Client Subcommands

! | delete | literal | prompt | send
? | debug | ls | put | status
append | dir | mdelete | pwd | trace
ascii | disconnect | mdir | quit | type
bell | get | mget | quote | user
binary | glob | mkdir | recv | verbose
bye | hash | mls | remotehelp |
cd | help | mput | rename |
close | lcd | open | rmdir |
         ?     print local help information
      help     print local help information
      bell    [toggle] beep  when command completed
     debug     toggle debugging mode
      glob     toggle metacharacter expansion of local file names
      hash     toggle printing `#' for each buffer transferred
     trace     toggle packet tracing
   verbose     toggle verbose mode
    status     show current status
      open     connect to remote tftp
      user     send new user information
remotehelp     get help from remote server
   literal     send arbitrary ftp command
     quote     send arbitrary ftp command
         !     escape to the shell
     ascii     set  ascii transfer type
    binary     set binary transfer type
      type     set   file transfer type
    prompt     force interactive prompting on multiple commands
Directory Commands:
       pwd     [display] working directory [from] remote machine
        cd     change remote working directory
       lcd     change  local working directory
       dir      list contents of remote directory
        ls     nlist contents of remote directory
      mdir      list contents of multiple remote directories
       mls     nlist contents of multiple remote directories
     mkdir       make directory on the remote machine
     rmdir     remove directory on the remote machine
File Commands:
      recv     receive file
       get     receive file
      mget     get multiple files
      send     send one file
       put     send one file
      mput     send multiple files
    append     append to a file
    rename     rename file
    delete     delete remote file
   mdelete     delete multiple files
Ending a Session:
     close     terminate ftp session
disconnect     terminate ftp session
       bye     terminate ftp session and exit
      quit     terminate ftp session and exit

Related Topics:


FTP Server Reply Codes

As you enter subcommands during an FTP client session, messages are returned to your display. Those messages that are preceded by a three-digit reply code are replies from the FTP server indicating the results of a requested operation. The three digits of the reply code have a special significance. The first digit denotes whether the response is good, bad, or incomplete. There are five values for the first digit:

  • 1yz (positive preliminary). The requested action is being initiated; another reply should follow.
  • 2yz (positive completion). The requested action was successfully completed. A new request may be initiated.
  • 3yz (positive intermediate). The subcommand was accepted, but the requested action is being held, pending receipt of further information.
  • 4yz (transient negative completion). The subcommand was not accepted and the requested action did not take place, but the error condition is temporary and the action may be requested again.
  • 5yz (permanent negative completion). The subcommand was not accepted, and the requested action did not take place.

Some of the reply codes and associated text are shown in the following secions. The message text may vary for different server systems.

AS/400 and iSeries FTP Server Reply Codes
Windows Server Reply Codes

Copyright © 1998-2002 Surround Technologies, LLC.


AS/400 and iSeries FTP Server Reply Codes

Reply
Code  	  Description
110	- Restart marker reply
120	- Service ready in nnn minutes
125	- Data connection already open; transfer starting
150	- File starting OK; about to open data connection

200	- Command OK
202	- Command not implemented; not used on this system
211	- System status, or system help reply
212	- Directory status
213	- File status
214	- Help message
220	- Service ready for new user
226	- Closing data connection; requested file action successful
230	- User logged in
250	- Requested file action okay, completed
257	- Path name created

331	- Password required
332	- Account required

425	- Cannot open data connection
426	- Connection closed; transfer ended abnormally
450	- Requested file action not taken; file busy
451	- Requested action ended abnormally; local error in processing
452	- Requested action not taken; insufficient storage space in system

500	- Syntax error; command unrecognized
501	- Syntax error in parameters or arguments
502	- Command not implemented
503	- Bad sequence of commands
504	- Command not implemented for that parameter
530	- Logon attempt rejected
532	- Need account for storing files
550	- Requested action not taken; file not found or no access
551	- Requested action ended abnormally; page type unknown
552	- Requested file action ended abnormally; exceeded storage allocation
553	- Requested action not taken; file name not allowed

Related Topics:


Windows Server Reply Codes

Related Topics:


Shipped UFTP Definitions and Samples

Shipped UFTP Template and Sample Definitions

UFTP comes shipped with several templates and samples that get installed with the installation of the package. These are made available to provide a number of FTP functions right out of the box, to get a first time user up and running with UFTP quickly, and to provide some insight as to how to perform particular FTP Tasks.

FTP Server Users
UFTP_Anonymous Anonymous Login ID

Sites
UFTP_SURROUND_1 | Surround Technologies FTP Server 1
 | Loopback - AS/400
 | Loopback - AS/400 IFS
 | Loopback - AS/400 QDLS
 | Loopback - Windows

Sessions
Verify an FTP Site Connection
Get an AS/400 Physical File
Send an AS/400 Physical File
Send an AS/400 Physical File with a date in the file name
Get an AS/400 Spool File
Send an AS/400 Spool File
Get an AS/400 Source File
Send an AS/400 Source File
Get a list of the files in a remote folder
Generic Script
Standard Completion Script using "quit" FTP subcommand
Standard Completion Script using "exit" FTP subcommand
Get Local FTP Client Help
Get Remote FTP Server Help

Scripts
UFTP_SFE_AS400_DEFAULT | SFE Default Script for SFE Partner on an AS/400
UFTP_GET_SPOOL_FILE | Get an AS/400 Spool File
UFTP_SEND_SPOOL_FILE | Send an AS/400 Spool File
UFTP_STANDARD_COMPLETION_SCRIPT: QUIT | Standard Completion Script using "quit" FTP subcommand
UFTP_STANDARD_COMPLETION_SCRIPT: EXIT | Standard Completion Script using "exit" FTP subcommand
UFTP_STANDARD_INITIALIZE_SCRIPT: NA 1 | Standard Initialization Script to set iSeries Name Format to 1
UFTP_STANDARD_INITIALIZE_SCRIPT: NA 0 | Standard Initialization Script to set iSeries Name Format to 0
UFTP_VERIFY_CONNECTION | Verify an FTP Site Connection
UFTP_GET_400_PF | Get an AS/400 Physical File
UFTP_SEND_400_PF | Send an AS/400 Physical File
UFTP_SEND_400_PF_MMDD | Send an AS/400 Physical File with a date in the file name
UFTP_GET_SOURCE_FILE | Get an AS/400 Source File
UFTP_SEND_SOURCE_FILE | Send an AS/400 Source File
UFTP_REMOTE_FOLDER_LISTING | Get a list of the files in a remote folder
UFTP_GENERIC_SCRIPT | Generic Script
UFTP_GET_LOCAL_CLIENT_HELP | Get Local FTP Client Help
UFTP_GET_FTP_SERVER_HELP | Get Remote FTP Server Help
UFTP_GET_ALL_FILES_IN_FOLDER | Get all the Files in a Folder
UFTP_TEMPLATE_GET_400_PF | UFTP Template: Get a 400 Physical File
UFTP_TEMPLATE_SEND_400_PF | UFTP Template: Send a 400 Physical File

Generic Script Templates
genscrtmp.zip | The latest Generic Script Templates. Unzip the contents of this Zip file into the "c:\Program Files\Surroundtech\x_lansa\source\x_ftl\object" Folder of your pc
VFYCON0.SCR | Verify a Connection
LSTRMT0.SCR | List a remote directory
GETFILE0.SCR | Get a File
PUTFILE0.SCR | Send a File
GETSPLF0.SCR | Get a Spool File
PUTSPLF0.SCR | Send a Spool File
GETSRCF0.SCR | Get a Source File
PUTSRCF0.SCR | Send a Source File
GETSAVF0.SCR | Get a Save File
PUTSAVF0.SCR | Send a Save File

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped FTP Server Users

UFTP UFTP Shipped FTP Users

  • Anonymous - A Typical Anonymous user definition

Related Topics:
Defining an FTP Server User
Browsing FTP Server Users

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped FTP Server Users: UFTP_Anonymous

--------------------------------------------------------------------------------
                     F T P   S e r v e r   U s e r   D e t a i l
--------------------------------------------------------------------------------
Server User ID. 90000001
Name........... UFTP_Anonymous
Description.... Anonymous Login ID
User ID........ anonymous

--------------------------------------------------------------------------------
                            U F T P   S i t e s
--------------------------------------------------------------------------------
FTP Server User ID is not used in any UFTP Sites.

--------------------------------------------------------------------------------
                                 N O T E S
--------------------------------------------------------------------------------
This is a Shipped Definition. Shipped Definitions should not be modified as the
modifications may be overwritten in future upgrades of the system.

To log on to any FTP site, you must identify yourself with a user ID and
password. For many FTP sites, you can use the word anonymous as a User ID, and
your e-mail address as your password; this is known as an "anonymous login."

FTP sites that allow anonymous logins usually exist to provide files that can be
downloaded by the general public; anyone on the Internet can log onto the site
anonymously and copy files to his or her PC. This is similar to logging on to a
file server as a "guest."

Anonymous logins have access to a vast store of software, games, music, and
numerous other resources. However, if you log in anonymously, you usually are
not allowed to do more than view public folders and download files. (You are
usually unable to view private folders or to upload files.)

Typically, a password is required for an anonymous login, however the password
can be anything. The recommended password to use is your email address.

USAGE: It is not recommended to use this FTP Server User. Create and use your
own Anonymous Logon with a Password that identifies you. For example:
     Name........... My Anonymous Login
     Description.... My Anonymous Login
     User ID........ anonymous
     Password....... myemail@mydomain.com

Related Topics:
Defining an FTP Server User
Browsing FTP Server Users

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Sites

UFTP UFTP Shipped Sites

Related Topics:
Defining A Site
Browsing Sites

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Site: UFTP_SURROUND_1

--------------------------------------------------------------------------------
                           S i t e   D e t a i l
--------------------------------------------------------------------------------
Server User ID. 90000001
Name........... UFTP_SURROUND_1
Description.... Surround Technologies' FTP Server 1
Server Type.... UFTP_AS/400
                IBM AS/400 FTP Server (iSeries)
                90000001
FTP Host Addr.. 209.191.33.25
User Name......
Connection Port
Account........
Transfer Mode..
Passive Mode...
Init Lcl Folder
Init Svr Folder
Init Script....

Comp Script.... UFTP_STANDARD_COMPLETION_SCRIPT: QUIT
                Standard Completion Script using "quit" FTP subcommand
                90000004

---------------
iSeries Startup
---------------
Out Table Lib..            Out Table Name. *CCSID
In Table Lib...            In Table Name.. *CCSID     CCSID.......... *DFT

--------------------------------------------------------------------------------
                               S e s s i o n s
--------------------------------------------------------------------------------
This Site is not used in any Sessions.

--------------------------------------------------------------------------------
                                 N O T E S
--------------------------------------------------------------------------------
This is a Shipped Definition. Shipped Definitions should not be modified as the
modifications may be overwritten in future upgrades of the system.

This is Surrounds FTP Server for use with our clients. Copy this Site to create
another of your own and add the User ID that Surround Assigns you.

Related Topics:
Defining A Site
Browsing Sites

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Sessions

UFTP UFTP Shipped Sessions

Related Topics:
Defining A Session
Browsing Sessions

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Scripts

UFTP UFTP Shipped Scripts

Related Topics:
Defining A Script
Browsing Scripts

Copyright © 1998-2002 Surround Technologies, LLC.


UFTP Shipped Script: UFTP_GET_SPOOL_FILE

--------------------------------------------------------------------------------
                           S c r i p t   D e t a i l
--------------------------------------------------------------------------------
UFTP Script ID. 90000002
Name........... UFTP_GET_SPOOL_FILE
Description.... UFTP Get an AS/400 Spool File
Command Count.. 4
Session Use Cnt 1
Site Init Cnt..
Site Comp Cnt..

--------------------------------------------------------------------------------
                         S c r i p t   C o m m a n d s
--------------------------------------------------------------------------------
                    Command                                            E C C A
Seq Command         Parameters                                         C A R A
=== =============== ===============                                    = = = =
 01 COMMENT         ==================================================
 02 COMMENT         ===    Shipped Definitions: DO NOT MODIFY      ===
 03 COMMENT         ==================================================
 10 EXEC_FTP        lcd  << local directory >>
 20 EXEC_FTP        ascii
 30 EXEC_FTP        quote rcmd crtpf file(qtemp/spoolf) rcdlen(132)
 40 EXEC_FTP        quote rcmd cpysplf file(<< file name >>) tofile(qt
                    emp/spoolf) job(<< job number >>/<< job user >>/<<
                     job name >>) splnbr(<< spool number >>)
 50 EXEC_FTP        get qtemp/spoolf [ localfile ]  [(REPLACE]
100 EXEC_FTP        quit

--------------------------------------------------------------------------------
                               S e s s i o n s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 S i t e s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 N O T E S
--------------------------------------------------------------------------------
This is a Shipped Definition. Shipped Definitions should not be modified as the
modifications may be overwritten in future upgrades of the system.

Related Topics:
Defining A Script
Browsing Scripts

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Script: UFTP_SEND_SPOOL_FILE

--------------------------------------------------------------------------------
                           S c r i p t   D e t a i l
--------------------------------------------------------------------------------
UFTP Script ID.
Name........... UFTP_SEND_SPOOL_FILE
Description.... Send an AS/400 Spool File
Command Count..
Session Use Cnt
Site Init Cnt..
Site Comp Cnt..

--------------------------------------------------------------------------------
                         S c r i p t   C o m m a n d s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                               S e s s i o n s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 S i t e s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 N O T E S
--------------------------------------------------------------------------------
This is a Shipped Definition. Shipped Definitions should not be modified as the
modifications may be overwritten in future upgrades of the system.

Related Topics:
Defining A Script
Browsing Scripts

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Script: UFTP_TEMPLATE_GET_400_PF

--------------------------------------------------------------------------------
                           S c r i p t   D e t a i l
--------------------------------------------------------------------------------
UFTP Script ID.
Name........... UFTP_TEMPLATE_GET_400_PF
Description.... UFTP Template: Get a 400 Physical File
Command Count..
Session Use Cnt
Site Init Cnt..
Site Comp Cnt..

--------------------------------------------------------------------------------
                         S c r i p t   C o m m a n d s
--------------------------------------------------------------------------------
                    Command                                            E C C A
Seq Command         Parameters                                         C A R A
=== =============== ===============                                    = = = =
 01 COMMENT         ==================================================
 02 COMMENT         ===    Shipped Definitions: DO NOT MODIFY      ===
 03 COMMENT         ==================================================
 10 EXEC_FTP        lcd  << local directory >>
 20 EXEC_FTP        cd << remote directory >>
 30 EXEC_FTP        << Set Transfer mode: bin, ascii, ebcdic >>
 40 EXEC_FTP        get << remotefile >> [ localfile ] [(REPLACE]
100 EXEC_FTP        quit

--------------------------------------------------------------------------------
                               S e s s i o n s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 S i t e s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 N O T E S
--------------------------------------------------------------------------------
This is a Shipped Definition. Shipped Definitions should not be modified as the
modifications may be overwritten in future upgrades of the system.

Related Topics:
Defining A Script
Browsing Scripts

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Script: UFTP_TEMPLATE_SEND_400_PF

--------------------------------------------------------------------------------
                           S c r i p t   D e t a i l
--------------------------------------------------------------------------------
UFTP Script ID.
Name........... UFTP_TEMPLATE_SEND_400_PF
Description.... UFTP Template: Send a 400 Physical File
Command Count..
Session Use Cnt
Site Init Cnt..
Site Comp Cnt..

--------------------------------------------------------------------------------
                         S c r i p t   C o m m a n d s
--------------------------------------------------------------------------------
                    Command                                            E C C A
Seq Command         Parameters                                         C A R A
=== =============== ===============                                    = = = =
 01 COMMENT         ==================================================
 02 COMMENT         ===    Shipped Definitions: DO NOT MODIFY      ===
 03 COMMENT         ==================================================
 10 EXEC_FTP        lcd  << local directory >>
 20 EXEC_FTP        cd << remote directory >>
 30 EXEC_FTP        << Set Transfer mode: bin, ascii, ebcdic >>
 40 EXEC_FTP        put << localfile >> [ remotefile ]
100 EXEC_FTP        quit

--------------------------------------------------------------------------------
                               S e s s i o n s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 S i t e s
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
                                 N O T E S
--------------------------------------------------------------------------------
This is a Shipped Definition. Shipped Definitions should not be modified as the
modifications may be overwritten in future upgrades of the system.

Related Topics:
Defining A Script
Browsing Scripts

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped FTP Server Users

UFTP UFTP Shipped FTP Users

genscrtmp.zip | The latest Generic Script Templates. Unzip the contents of this Zip file into the "c:\Program Files\Surroundtech\x_lansa\source\x_ftl\object" Folder of your pc
VFYCON0.SCR | Verify a Connection
LSTRMT0.SCR | List a remote directory
GETFILE0.SCR | Get a File
PUTFILE0.SCR | Send a File
GETSPLF0.SCR | Get a Spool File
PUTSPLF0.SCR | Send a Spool File
GETSRCF0.SCR | Get a Source File
PUTSRCF0.SCR | Send a Source File
GETSAVF0.SCR | Get a Save File
PUTSAVF0.SCR | Send a Save File

Related Topics:
Build and Run a Generic Script (Windows)
Build and Run a Generic Script (5250)

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Definitions

Click VFYCON0.SCR to save this script to a folder.
Click VFYCON.ZIP to Open a Zip file with all the Verify Connection scripts.

<< setup commands >>
lcd   << local directory >>
cd    << remote directory >>
<< other setup commands >>
<< repeat >>
quit

<<<<             Delete From this line down before executing                >>>>
================================================================================
====                              N o t e s                                 ====
================================================================================
==== This template provides various examples of how to Verify a connection with
==== an FTP Server,
====
==== Depending on your FTP transfer requirements, it may be necessary to
==== validate your FTP server connection before performing your FTP functions.
==== Many people choose to use the PING function, however this only validates
==== your connection to the system and does not validate your actual FTP
==== connection. Your best option is to set up a script that performs all of
==== the connection and system setups before conducting the FTP transfer or
==== other physical changes to the directory or file structure. Superior FTP
==== security employs the use of firewall facilities, lets you into the system
==== after receiving the proper user ID and password, allows access to a
==== specific folder system, and allows you to execute only specific commands.
==== Therefore, it is important to continually check your connection all the way
==== through to the point just before actually performing the file transfer or
==== other physical changes to the remote system.
====
==== Some of these examples use the FTP “No Operation” subcommand, NOOP. The
==== NOOP subcommand is used to find out if the FTP server on the remote system
==== is responding. If the remote system does not respond, for example, because
==== the connection has ended, a message is displayed stating that. This command
==== is not required but does add a positive response to you validation.
====
==== Modify the above script as follows:
====    << setup commands >>
====                       replace with any setup commands such as Name Format,
====                       Site, and/or quote commands that are necessary
====    << local directory >>
====                       replace with the path to the local directory you need
====                       to work with during the FTP session
====    << remote directory >>
====                       replace with the path to the local directory you need
====                       to work with during the FTP session
====    << other setup commands >>
====                       replace with any setup commans such as Site and/or
====                       quote commands that are necessary
====    << repeat >>
====                       Replace with as many of these procedures as
====                       necessary
====
================================================================================
====                            E X A M P L E S
================================================================================
==== Below are some common examples for verifying a connection
====
==== --------------------------------------------------
==== Example 1: iSeries QGPL ==> iSeries QGPL
==== --------------------------------------------------
==== lcd qgpl
==== cd qgpl
==== noop
==== quit
====
==== --------------------------------------------------
==== Example 2: iSeries IFS Root ==> iSeries IFS Root
==== --------------------------------------------------
==== na 1
==== quote site na 1
==== lcd /
==== cd /
==== noop
==== quit
====
==== --------------------------------------------------
==== Example 3: iSeries IFS Dir ==> iSeries IFS Dir
==== --------------------------------------------------
==== na 1
==== quote site na 1
==== lcd /MyLclDir/
==== cd /MyRmtDir/
==== noop
==== quit
====
==== --------------------------------------------------
==== Example 4: iSeries Jump ==> iSeries Jump
==== --------------------------------------------------
==== lcd qgpl
==== cd qgpl
==== na 1
==== quote site na 1
==== lcd /
==== cd /
==== lcd /qsys.lib/
==== cd /qsys.lib/
==== na 0
==== quote site na 0
==== lcd MyLclLib
==== cd MyRmtLib
==== na 1
==== quote site na 1
==== lcd /MyLclDir/
==== cd /MyRmtDir/
==== noop
==== quit
====
==== --------------------------------------------------
==== Example 5: Windows ==> iSeries
==== --------------------------------------------------
==== lcd c:\
==== cd qgpl
==== noop
==== quit
====
==== --------------------------------------------------
==== Example 6: Windows ==> iSeries IFS
==== --------------------------------------------------
==== quote site na 1
==== lcd c:\
==== cd /
==== quote noop
==== quit
====
==== --------------------------------------------------
==== Example 7: Windows ==> unknown
==== --------------------------------------------------
==== lcd c:\
==== cd qgpl
==== quit
====
==== --------------------------------------------------
==== Example 8: Windows Folder ==> iSeries
==== --------------------------------------------------
==== lcd "C:\Documents and Settings\Lee Paul\My Documents\"
==== cd qgpl
==== noop
==== quit
====
================================================================================

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Definitions

Click GETSPLF0.SCR to save this script to a folder.
Click GETSPLF.ZIP to Open a Zip file with all the Get Spool File scripts.

quit

<<<<             Delete From this line down before executing                >>>>
================================================================================
====                              N o t e s                                 ====
================================================================================
====
====
====
====
================================================================================
====                            E X A M P L E S
================================================================================
==== --------------------------------------------------
==== Example 1:
==== --------------------------------------------------
====
==== --------------------------------------------------
==== Example 2:
==== --------------------------------------------------
====
================================================================================

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Definitions

Click PUTSRCF0.SCR to save this script to a folder.
Click PUTSRCF.ZIP to Open a Zip file with all the Put Source File scripts.

quit

<<<<             Delete From this line down before executing                >>>>
================================================================================
====                              N o t e s                                 ====
================================================================================
====
====
====
====
================================================================================
====                            E X A M P L E S
================================================================================
==== --------------------------------------------------
==== Example 1:
==== --------------------------------------------------
====
==== --------------------------------------------------
==== Example 2:
==== --------------------------------------------------
====
================================================================================

Copyright © 1998-2003 Surround Technologies, LLC.


UFTP Shipped Definitions

Click GETSPLF0.SCR to save this script to a folder.
Click GETSPLF.ZIP to Open a Zip file with all the Get Spool File scripts.

ascii
lcd  << local directory >>
quote rcmd crtpf file(qtemp/spoolf) rcdlen(<< spool file record length >>) SIZE(*NOMAX)
quote rcmd cpysplf file(<< file name >>) tofile(qtemp/spoolf) job(<< job number >>/<< job user >>/<< job name >>) splnbr(<< spool number >>)
get qtemp/spoolf << local file >> (REPLACE
<< repeat >>
quit

<<<<             Delete From this line down before executing                >>>>
================================================================================
====                              N o t e s                                 ====
================================================================================
==== This template provides various examples of how to get spool files from an
==== an iSeries using FTP
====
==== Modify the above script as follows:
====    << local directory >>
====                       replace with the path to the local directory you wish
====                       to put the Save Files
====    << spool file record length >>
====                       replace with the record length of the spool file
====                       you wish to get.
====    << file name >>
====                       replace with the name of the spool file
====    << job number >>/<< job user >>/<< job name >>
====                       replace with the Job information of the Spool File.
====    << spool number >>
====                       replace with the Number of the Spool File.
====    << local file >>
====                       Replace with the name of the local File to put the
====                       spool file in.
====    << repeat >>
====                       Replace with as many of these procedures as
====                       necessary to get the desired spool files.
====
================================================================================
====                            E X A M P L E S
================================================================================
==== Below are some common examples for verifying a connection
====
==== -------------------------------------------------------------------
==== Example 1: Get Spool File and put on PC Root Drive
==== -------------------------------------------------------------------
==== ascii
==== lcd c:\
==== quote rcmd crtpf file(qtemp/spoolf) rcdlen(132) SIZE(*NOMAX)
==== quote rcmd cpysplf file(QSYSPRT) tofile(qtemp/spoolf) job(068236/LEE/MYREPORT) splnbr(1)
==== get qtemp/spoolf "My Report.txt"
==== quit
====
==== -------------------------------------------------------------------
==== Example 2: Get multiple Spool Files and put on PC in Reports Folder
==== -------------------------------------------------------------------
==== ascii
==== lcd "C:\Documents and Settings\Lee Paul\My Documents\My Reports"
==== quote rcmd crtpf file(qtemp/spoolf) rcdlen(132) SIZE(*NOMAX)
==== quote rcmd cpysplf file(QSYSPRT) tofile(qtemp/spoolf) job(068236/LEE/MYREPORT) splnbr(1)
==== get qtemp/spoolf "My Report.txt" (REPLACE
====
==== quote rcmd clrpfm FILE(qtemp/spoolf)
==== quote rcmd cpysplf file(QSYSPRT) tofile(qtemp/spoolf) job(068236/LEE/MYREPORT2) splnbr(1)
==== get qtemp/spoolf "My Report2.txt" (REPLACE
====
==== quote rcmd clrpfm FILE(qtemp/spoolf)
==== quote rcmd cpysplf file(QSYSPRT) tofile(qtemp/spoolf) job(068236/LEE/MYREPORT3) splnbr(1)
==== get qtemp/spoolf "My Report3.txt" (REPLACE
====
==== quit
====
==== -------------------------------------------------------------------
==== Example 3: Send a spool
==== -------------------------------------------------------------------
==== ascii
====
==== quit
====
================================================================================

Copyright © 1998-2003 Surround Technologies, LLC.


Trouble Shooting and Problem Analysis

Troubleshooting Communications.

Copyright © 1998-2003 Surround Technologies, LLC.


Troubleshooting Communications

Communication problems can be caused by a number of factors, from the TCP/IP communications router to the application on the PC. While the actual configuration and maintenance of communications between client workstations and application servers is beyond the scope of this guide, the information in this chapter may help you to determine the cause of your problem.

Start with these basic checks:

Verify the client can communicate with the Server via TCP/IP.

The easiest way to check this is to use the PING Command. On the client, use the PING command specifying the name or IP address of the server system. Wait until the PING command gives a good return code indicating it could successfully communicate with the server system. If you can't communicate with the server via TCP/IP, there is no way that you are going to get a UFTP to start and run.

If you are not able to communicate with the server, you will see a "Communications error code 20" and "CM_PRODUCT_SPECIFIC_ERROR" errors like the following:

If you are able to communicate with the server via TCP/IP and you are still getting an error like above, Verify the client communication information is set up correctly.

Verify the client communication information is set up correctly.

Check that the Server Name being specified is defined in the UFTP LANSA Communication Administration and that the IP address is correct.

iSeries Server: Check that the user profile you are using is validly defined on the Server.

If the User Profile is not valid, you will see a "Communications error code 6" and "CM_SECURITY_NOT_VALID" errors like the following:

Verify the user profile you are using is valid.
 Is it defined on the iSeries?
Is 8 characters or less in length.
Is the password you are using correct.

iSeries Server: Check that the user profile you are using is authorized and configured to use the UFTP system.

Do this simple test: Sign on at a 5250 terminal and immediately type the command STRUFTP. Can the STRUFTP command be found? If not, you have a basic library list problem. The job description associated with the user profile does not include the UFTP program libraries (usually ST@QGPL and ST@PGMLIB) in its initial library list.

Use the DSPUSRPRF command to view the Job Description associated with the user profile and note down the associated job description. Next use the DSPJOBD command to view the job description itself. Ensure it has an initial library list which includes the UFTP program library (usually ST@QGPL and ST@PGMLIB).

Also check that the Job Description has LOG(4 00 *SECLVL) logging, if you are trying to solve a problem. This will ensure any OS/400 job that the user profile starts will produce an OS/400 job log. This job log will almost always yield useful error information. If you request help from UFTP Support Team, vendor, or Surround Technologies, always send example(s) of the job logs resulting from failed connection attempts.

If the Library List is not Correct, you will see a "Communications error code 17" and "CM_DEALLOCATED_ABEND" errors like the following:

Refer to section Configuring Your Library List for more information on specifying the Library List

Check that your UFTP system is correctly licensed.

UFTP will not work if the appropriate License codes are not entered into the system on the server.

If the LANSA License Code is not entered, invalid, or expired, you will see an error like the following:

Additionally, on the iSeries, a Job Log will be produced for the TP Job with the following message:

DCM9006    Information             00    05/22/03   15:31:02   LXXP0010       QGPL        0069     LXXP0010     QGPL         0069
                                     Message . . . . :   The required LANSA product license for this machine is
                                       invalid, or has no free slots (at this time), or it has expired.

If the UFTP License Code is not entered, you will see an SBR0201 error like the following:

If the codes are expired, you will see an SBR0203 error like the following:

Refer to License Codes Required for more information on the required license codes.

Related Topics:
Configuring Your Library List
License Codes Required

Copyright © 1998-2003 Surround Technologies, LLC.


Customer Support

The Universal FTP Interface System is developed and serviced by Surround Technologies, LLC.
We can be reached by phone Monday though Friday between 8:00 AM and 6:00 PM, Eastern Standard Time. You can also reach Surround Technologies at our the Web site or by e-mail via the Internet.

If your question is not answered in the help file or in this developer guide, please

check our web site at | http://www.surroundtech.com
e-mail us at: | support@surroundtech.com
contact our Customer Service: | (908) 490-1235
or Fax us at: | (908) 490-1236

Note: When reporting a problem, please use this template, ST Support Request, to create an Observation and Support Request, OSR, and make sure to include all relevant information including:

  • What version of UFTP are you using?
    (Click on Help and then About to find out what version you are using),
  • What Operating Environment are you using?
    (AS/400, Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, UNIX, etc...)
  • What feature are you using?
  • What happens when you use the feature?
  • If possible, a screen print of the observation is very helpful.

If you need to contact Surround Technologies for a reason other than technical support, our mailing address is:

Surround Technologies, LLC
PO Box 47
Scotch Plains, NJ 07076

Copyright © 1998-2003 Surround Technologies, LLC.


Copyright Information

Copyright Information.


Copyright Information

Universal FTP Interface System
Version 4.1
April 1, 200 3

Copyright © 1998-2003 SURROUND TECHNOLOGIES, LLC.
All rights reserved worldwide

NOTICE:
This user guide and the Software described by this user guide are protected by copyright. You may not copy, modify, translate, or reproduce this user guide or any part of this user guide in any form without prior written permission from Surround Technologies, LLC.
The software associated with this product is governed by a license agreement and may be used only under strict adherence to the terms of that license agreement.

IBM, AS/400 and OS/400 are registered trademarks of IBM Corporation.
LANSA is a registered trademark of LANSA, Inc.
Microsoft Windows, Microsoft Word, and Microsoft Excel are registered trademarks of Microsoft Corporation

Frameworks for Windows and all the Drill Down Development Tools are Developed by:
Surround Technologies, LLC
PO Box 47
Scotch Plains, NJ 07076
http://www.surroundtech.com
(908) 490-1235

COPYRIGHT 2003 SURROUND TECHNOLOGIES, LLC
All rights reserved.