FTP - Upload |
<AMFTP ACTIVITY="upload" SOURCE="text" DEST="text" SUBFOLDERS="YES/NO" ONLYFOLDERSTRUCT="YES/NO" OVERWRITE="YES/NO" ARCHIVETURNOFF="YES/NO" MATCHCASE="YES/NO" APPEND="YES/NO" TRANSFERTYPE="text (options)" VALIDATECHECKSUM="YES/NO" CHECKSUMTYPE="text (options)" EXCLUDE="text" RE="YES/NO" ISNEWERTHAN="date" ISOLDERTHAN="date" SESSION="text" RESULTDATASET="text" /> |
Description: Uploads one or more local files to an FTP server. This activity supports multi-file uploads. To indicate more than one file, use wildcards (Example: * or ?). To indicate multiple files or wildcard masks, separate them with a pipe character (Example: /*.txt|*.bak).
Commonly used to send files to other computers across the network or Internet. Can also be used to back-up files or complete directory structures.
Connection
Property |
Type |
Required |
Default |
Markup |
Description |
Connection |
|
|
|
|
Indicates where this activity's FTP logon credentials and other settings should originate from. This is a visual mode parameter used interactively only during design time, thus, contains no markups. The available options are:
|
Session |
Text |
Yes if connection set to session |
FTPSession1 |
SESSION="FTPSession2" |
The name of an existing session that this activity should be linked to. This allows several FTP activities to be linked to a specific session. Numerous sessions can be used within a single task. This property is active only if the Connection parameter is set to Session. |
Host |
Text |
Yes if connection set to host |
(Empty) |
|
The FTP server to connect to. This can be an IP address (e.g.,xxx.xxx.xxx.xxx) or a server and domain name (e.g.,server.domain.com). This property is active only if the Connection parameter is set to Host. |
Username |
Text |
Yes if connection set to host |
(Empty) |
USERNAME="ClarkKent" |
The username that should be used when logging onto the FTP server. The username should be pre-configured at the server level. This property is active only if the Connection parameter is set to Host. |
Password |
Text |
Yes if connection set to host |
(Empty) |
PASSWORD="encrypted" |
The password that should be used to authenticate connection to the FTP server. This parameter is active only if the Connection parameter is set to Host. |
Use anonymous logon |
Yes/No |
Yes if connection set to host |
No |
ANONYMOUSLOGIN="YES" |
If set to YES, specifies that the FTP connection should be logged on as an "anonymous" user. The server must be configured to accept anonymous connections. If this property is set to YES, the Username and Password parameters are ignored. The default value is NO. This property is active only if the Connection parameter is set to Host. |
Connection type |
Options |
Yes if connection set to host |
FTP (Standard FTP) |
|
Specifies the type of FTP connection that should be used. Some parameters may or may not appear depending on the connection type selected. The available options are:
NOTE: Certain parameters may or may not appear depending on the connection type selected. |
Port |
Text |
Yes |
21 |
PORT="1000" |
The port that should be used to connect to the FTP server. Most standard FTP servers operate on port 21 (the default port specified), however, this parameter can be customized incase the FTP server operates on other ports. NOTE: Other default ports may be assigned depending on the server connection type selected. |
Passive mode (for firewalls) |
Yes/No |
No |
No |
PASSIVEMODE="YES" |
If set to YES, issues the PASV command and the server tells where to establish the data connection. initiates both connections to the server, solving the problem of firewalls filtering the incoming data port connection to the client from the server. If set to NO, the PORT method is used. listens for a data connection which is established by the server and the PORT command tells the server where to connect to. then connects to the server indicated. This property is available only if the Connection type parameter is set to FTP (standard), FTP with SSL (implicit) or FTP with SSL (explicit). NOTE: Passive mode method is sometimes used with some proxy configurations, however, some proxy configurations require PORT transfers and some FTP servers do not support PASV transfers. |
Encrypt data channel |
Yes/No |
No |
No |
ENCRYPTDATACHANNEL="YES" |
If set to YES, specifies that all data channel communication between the FTP client (EFT Event Rules) and server are to be encrypted. The default value is NO. This property is available only if the Connection type parameter is set to FTP with SSL (implicit) or FTP with SSL (explicit). NOTE: It may not be advantageous to use data channel encryption if the files being transferred are of a non-sensitive nature, making encryption unnecessary, or if the files being transferred are already encrypted at the file level, making encryption redundant. |
Ignore invalid server certificates |
Yes/No |
No |
No |
IGNOREINVALIDCERTIFICATE="YES" |
If set to YES, specifies that this activity will ignore invalid certificates when connecting to an FTP server using SSL. The default value is NO. This property is available only if the Connection type parameter is set to FTP with SSL (implicit) or FTP with SSL (explicit). |
Clear command channel |
Yes/No |
No |
No |
CLEARCOMMANDCHANNEL="YES" |
If set to YES, enables support for Clear Command Channel (CCC) functionality. The CCC command can be issued by a remote FTPS client and will cause FTP client to fall out of secure mode and back into unsecure mode. This option is useful for clients who only need to secure the authentication portion of the session. Once the USER/PASS has completed, some clients will use CCC to return to unsecure mode, which is faster. The default value is NO. This property is available only if the Connection type parameter is set to FTP with SSL (implicit) or FTP with SSL (explicit). |
Enable Tumbleweed mode |
Yes/No |
No |
No |
TUMBLEWEEDSERVER="YES" |
If set to YES, allows compatibility with Tumbleweed SecureTransport, a centrally managed client-server solution supporting a broad set of open standard file transfer protocols, including FTP, FTPS, HTTP, HTTPS, SSH (SFTP and SCP), and AS2. SecureTransport enables customers to safely exchange large files and transactions without proprietary software. Set to NO by default. This property is available only if the Connection type parameter is set to FTP with SSL (implicit) or FTP with SSL (explicit). |
Use compression |
Yes/No |
No |
No |
COMPRESSION="YES" |
If set to YES, data is compressed using a single algorithm to reduce the total amount of data that is transmitted. If transmission speeds are slow, transfers can be sped up significantly when using compression, particularly if text files are being transferred. Media files (e.g.,JPEG and MPEG) are usually compressed already, thus, there will be little or no benefit in using compression. |
Enable FIPS mode |
Yes/No |
No |
No |
FIPS="YES" |
If set to YES, FIPS 140-2 validated cryptography mode is enabled (set to NO by default). The Federal Information Processing Standard (FIPS) Publication 140-2 specifies the security requirements of cryptographic modules used to protect sensitive information. Most government agencies such as the Department of Defense and companies in the public sector such as healthcare, financial and manufacturing require FIPS validation to protect the integrity of data traffic traveling across their networks. |
FTP option(s) |
Options |
No |
None |
FTPOPTIONS="DoNotSendSignals" |
Indicates any FTP advanced options required during transmission. Click the down arrow to display a list of available options to select from. To specify more than one option, use a comma as a delimiter (e.g., DoNotSendSignals,DoNotSendAbort). The default value is font-size: 8pt; font-weight: bold;">None . This property is available only if the Connection type parameter is set to font-size: 8pt; font-weight: bold;">FTP (standard), FTP with SSL (implicit) or font-weight: bold; FTP with SSL (explicit). |
SFTP version(s) |
Options |
No |
Sftp2, Sftp3, Sftp4 |
SFTPVERSIONS="Sftp5,Sftp6" |
Indicates the SFTP version(s) that the server supports. Click the down arrow to display a list of available versions to select from. To specify more than one version, use a comma as a delimiter (e.g., Sftp4,Sftp5,Sftp6). This property is available only if the Connection type parameter is set to font-size: 8pt; font-weight: bold;">SFTP (password) or font-size: 8pt; font-weight: bold;">SFTP (key). |
Authentication type |
Options |
No |
Auto |
SFTPAUTHTYPE="Password" |
Indicates the SFTP authentication type that the server supports. Click the down arrow to display a list of available authentication types to select from. To specify more than one type, use a comma as a delimiter (e.g.,Password,Hostbased). This property is available only if the Connection type parameter is set to font-size: 8pt; font-weight: bold;">SFTP (password) or font-size: 8pt; font-weight: bold;">SFTP (key). |
Ignore/Validate SFTP server's host key |
Options |
No |
None |
SFTPHOSTKEY="validate" |
Indicates whether to ignore or validate the SFTP server's host key. This property is available only if the Connection type parameter is set to font-size: 8pt; font-weight: bold;">SFTP (password) or font-size: 8pt; font-weight: bold;">SFTP (key). |
If server host key is not found |
Options |
No |
Store it |
SFTPHOSTKEYNOTFOUND="throw_error" |
Indicates what action to perform if the server host key is not found. This property is available only if the Validate SFTP server's host key parameter is selected. The available options are:
|
Client certificate source |
Options |
No |
No Certificate |
|
FTP over SSL allows transmissions to be encrypted between an FTP client and server. This property is used to select the source of the certificate. A certificate is a digitally-signed statement that binds the value of a public key to the identity of the person, device, or service that holds the corresponding private key. One of the main benefits of certificates is that hosts no longer have to maintain a set of passwords for individual subjects who need to be authenticated as a prerequisite to access. Instead, the host merely establishes trust in a certificate issuer. This property is available only if the Connection type parameter is set to FTP with SSL (implicit) or FTP with SSL (explicit). The available options are:
|
Certificate issuer |
Text |
No |
(Empty) |
CERTIFICATEISSUERID="Name" |
The certification authority that issued the certificate. Click Select Certificate to show a list of available certificates to select from. This property is available only if the Client Certificate Source parameter is set to Certificate store. |
Certificate serial number |
Number |
No |
(Empty) |
CERTIFICATESERIAL= "c7 f5 fa f8 6d ab 77 87 43 4a 11 43 f1 cd 3c 0f" |
The unique serial number that the issuing certification authority assigns to the certificate. The serial number is unique for all certificates issued by a given certification authority. This property is available only if the Client Certificate Source parameter is set to Certificate store. |
Certificate file |
Text |
No |
(Empty) |
CERTIFICATE= "C:\Temp\Certificate.pfx" |
The path and filename of the certificate (.pfx or .p12) file. Click the folder icon and navigate to the desired certificate file. This property is available only if the Client Certificate Source parameter is set to File(s). |
Passphrase |
Text |
No |
(Empty) |
PASSPHRASE="encrypted" |
The passphrase used to authenticate connection. A passphrase is a password that comprises a whole phrase. This property is available only if the Client Certificate Source parameter is set to File(s). |
Certificate private key |
Text |
No |
(Empty) |
CERTIFICATEPRIVATEKEY= "C:\Temp\Private_Key" |
Specifies the path and filename of the Private key file. In public/private key encryption, different keys are used to encrypt and decrypt information. The first key is a private key (a key that is known only to its owner), while the second key (called the public key) can be made known and available to other entities on the network. The two keys are different but complementary in function. For example, a user’s public key can be published in a certificate in a directory so that it is accessible to other people in the organization. The sender of a message can retrieve the user’s certificate from Active Directory, obtain the public key from the certificate, and then encrypt the message by using the recipient's public key. Information that is encrypted with the public key can be decrypted only by using the corresponding private key of the set, which remains with its owner, the recipient of the message. This property is available only if the Client Certificate Source parameter is set to File(s). |
Log file |
Text |
No |
(Empty) |
LOGFILE="c:\temp\error.log" |
The location of a detailed FTP log (.log) file. This file contains comprehensive data regarding the FTP connection which can be useful in diagnosing particular errors or elusive problems. If this parameter is left blank, no log file will be created. |
Overwrite existing log file |
Yes/No |
No |
Yes |
OVERWRITELOG="NO" |
If set to YES, specifies that the log file should be overwritten with new data during each FTP logon attempt. If set to NO, existing data will remain intact and new data will append existing data during each logon attempt. The default value is YES. |
Timeout |
Number |
Yes |
30 Seconds |
TIMEOUT="60" |
Indicates a connection time out to customize how long will wait before aborting a connection attempt. If connection is not established within the time out value specified, it is automatically terminated and the event will be appropriately logged. The default value is 30 seconds. |
Measure |
Options |
Yes |
Seconds |
|
The time measurement to associate with the value entered under the Timeout parameter. The available options are:
|
Upload buffer size (bytes) |
Number |
Yes |
65536 Bytes |
UPLOADBUFFERSIZE="54443" |
The upload buffer size value (in bytes) for files being uploaded. In some cases changing the upload buffer size can make a difference; particularly in transfers over high loss or high speed connections where latency plays an important role. The default value is 65536 bytes, which is the maximum buffer size. NOTE: Setting the Upload buffer size value too high for slow connections might cause timeouts and the transfer speed calculation may become inaccurate. |
Proxy Type |
Options |
No |
None |
|
The proxy protocol that should be used. If you are unsure of the value to use in this parameter, contact your network administrator. The available options are:
|
Proxy server |
Text |
No |
(Empty) |
PROXYSERVER="proxy.host.com" |
The host name (e.g.,server.domain.com) or IP address (e.g.,xxx.xxx.xxx.xxx) of the proxy server. |
Use authentication |
|
|
|
|
If enabled, specifies that connection to the proxy server requires authentication (disabled by default). This is a visual mode parameter used interactively only during design time, thus, contains no markups. |
Proxy port |
Text |
Yes |
21 |
PORT="1000" |
The port that should be used to connect to the proxy server. Most standard FTP servers operate on port 21 (the default port specified) however, this parameter can be customized in case the FTP server operates on other ports. NOTE: Other default ports may be assigned depending on the server connection type selected. |
Proxy username |
Text |
No |
(Empty) |
ROXYUSERNAME="username" |
The username that should be used to authenticate when connecting through the proxy server. |
Proxy password |
text |
No |
(Empty) |
PROXYPASSWORD="encrypted" |
The password that should be used to authenticate when connecting through the proxy server. |
File
Property |
Type |
Required |
Default |
Markup |
Description |
Local file(s) |
Text |
Yes |
(Empty) |
|
Specifies the file(s) to upload. This can be a fully qualified UNIX style path and filename (preferred) or a single file (requires use of the FTP Change Folder action). Wildcards (e.g.,*.* or ?) may be used to download files matching a certain mask. Multiple file and/or file masks may be specified by separating the entries with the "|" symbol (e.g., *.txt|*.bak). |
Remote file(s) |
Text |
Yes |
(Empty)
|
|
Specifies the destination folder and (optionally) filename of the file(s) to upload. This can be a fully qualified path or a filename. Folders that do not exist will be automatically created at runtime. |
Create and populate upload dataset |
Text |
No |
(Empty) |
RESULTDATASET="theDataset" |
Specifies the name of a dataset to be created at runtime and populated with information regarding the files uploaded files. Refer to the Notes section below for more details in regards to the fields that this dataset creates. |
File Options
Property |
Type |
Required |
Default |
Markup |
Description |
Include Subfolders |
Yes/No |
No |
No |
SUBFOLDERS="YES" |
If set to YES, indicates that, if present, subfolders should be searched for files matching the mask specified in the Local File(s) parameter. The default value is NO. |
Preserve Folder Structure |
Yes/No |
No |
No |
KEEPFOLDERSTRUCT="YES" |
If set to YES, specifies that subfolders found in the source folder should be created in the destination folder and source files should be copied into their respective folders rather than directly into the root of the target folder specified in the Remote File(s) parameter. The default value is NO. This option is available only if the Include Subfolders parameter is set to YES. |
Only Folder Structure |
Yes/No |
No |
No |
ONLYFOLDERSTRUCT="YES" |
If set to YES, indicates that subfolders found in the source folder should be created in the destination folder but no files will be copied. Enabling this option causes any file-specific parameters to be ignored. The default value is NO. This parameter is available only if the Include Subfolders parameter is set to YES. |
Overwrite if exists |
Yes/No |
No |
No |
OVERWRITE="YES" |
If set to YES, specifies that, if files already exist in the destination, they should be overwritten. The default value is NO. |
Only if exists in destination |
Yes/No |
No |
No |
ONLYIFEXIST="YES" |
If set to YES, denotes that only files that already exist in the destination will be copied from the source. All other files, regardless of whether they match the mask or other parameter settings will be bypassed. The default value is NO. Valid only if the Overwrite if exists parameter is set to YES. |
Match Case |
Yes/No |
No |
No |
MATCHCASE="YES" |
Indicates whether the properties set within this activity should be case sensitive in relation to the FTP server. The default value is NO. |
Transfer Type |
Options |
Yes |
Binary |
TRANSFERTYPE="ascii" |
Specifies whether the transfer type should be set to binary or ASCII mode. The default is binary. Binary mode refers to transferring files as a binary stream of data. Where ASCII mode may use special control characters to format data, binary mode transmits the raw bytes of the file being transferred. In this way, the file is transferred in its exact original form. When files are transferred in ASCII mode, the transferred data is considered to contain only ASCII formatted text. The party that is receiving the transferred data is responsible for translating the format of the received text to one that is compatible with their operating system. |
Validate Checksum |
Yes/No |
No |
No |
VALIDATECHECKSUM="YES" |
Indicates whether to validate the integrity of data being transferred by calculating a checksum using the selected algorithm. The default value is NO. |
Checksum Type |
Options |
No |
CRC |
CHECKSUMTYPE="sha1" |
Specifies the checksum algorithm to use. The available options are:
|
Exclude Mask |
Text |
No |
(Empty) |
EXCLUDE="*.txt" |
Causes this activity to omit any files matching the mask(s) specified. Filenames or wildcard (e.g.,* or ?) masks may be used, multiple entries may be specified by separating them with the | symbol (e.g.,*.txt|*.bak). |
Regular Expression |
Yes/No |
No |
No |
RE="YES" |
Specifies whether the value in the Exclude Mask parameter is a regular expressions. Regular Expression, also referred to as regex or regexp, provide a concise and flexible means for matching strings of text. The default value is NO. |
Only if Newer |
Date |
No |
(Empty) |
ISNEWERTHAN= "%DateAdd("s",-30, CStr(Now()))%" |
Causes this activity to only upload file(s) if the source is newer than the date/time specified. If this parameter is left empty, the date of the file(s) will be ignored. Click the Custom button to select one of several available date/time ranges. Enable the Expression option to enter a date expression. |
Only if Older |
Date |
No |
(Empty) |
ISOLDERTHAN= "%DateAdd("s",-30, CStr(Now()))%" |
Causes this activity to only upload file(s) if the source is older than the date/time specified. If this parameter is left empty, the date of the file(s) will be ignored. Click the Custom button to select one of several available date/time ranges. Enable the Expression option to enter a date expression. |
File Attributes
Property |
Type |
Required |
Default |
Markup |
Description |
Attributes |
Text Options |
No |
(Empty) |
ATTRFILTER="+R+A-H" (compress read-only & archive files but not hidden files) |
This group of settings causes the activity to filter which files are transferred based on their attributes. In visual mode, a group of controls are provided to assist in the selection. In markup mode, a single text item is specified that contains the attributes of the files you wish to transfer. Available Options are:
|
Datasets
Using the Create and populate dataset parameter creates a fixed field dataset. The table below describes the set of columns that a dataset creates exclusive to this action (assuming the dataset name assigned was theDataset).
Name |
Data Type |
Return Value |
theDataset.FTPFileName |
Text |
The name of the file once it is uploaded. |
theDataset.LocalFileDate |
Date |
The modified date and time of the local file to upload. |
theDataset.LocalFileName |
Text |
The local file name of the file to upload. |
theDataset.LocalFileSize |
Number |
The size of the local file to upload (in kb). |
theDataset.UploadResult |
Boolean |
The result of the download. If successful, 1 is returned. Otherwise, 0 is returned. |
NOTE: The sample AML code below can be copied and pasted directly into the Steps panel of the Task Builder. |
Sample Task 1: This task simply logs onto an FTP site, uploads a single file and logs off. In order for this task to work in your environment, please make the appropriate modifications in the properties of each activity.
<AMFTP ACTIVITY="logon" SERVER="YourFTPHost" USERNAME="YourUsername" PASSWORD="AM1MoyAfpKHilpraHBIX6ei1E/2ZhM5egRHalje6g6YThM=aME" /> <AMFTP ACTIVITY="upload" SOURCE="C:\Temp\Book1.xlsx" DEST="/home/ftp/Book1.xlsx" /> <AMFTP ACTIVITY="logoff" /> |
Sample Task 2: This task logs onto an FTP site, uploads all text files located in the C:\Temp directory that are newer than 24 hours and logs off. In order for this task to work in your environment, please make the appropriate modifications in the properties of each activity.
<AMFTP ACTIVITY="logon" SERVER="YourFTPHost" USERNAME="YourUsername" PASSWORD="AM1MoyAfpKHilpraHBIX6ei1E/2ZhM5egRHalje6g6YThM=aME" /> <AMFTP ACTIVITY="upload" SOURCE="C:\Temp\*.txt" DEST="/home/ftp/Book1.xlsx" ISNEWERTHAN="%DateAdd( "h", -24, CStr( Now() ))%" /> <AMFTP ACTIVITY="logoff" /> |