SFTP Delivery Method

The preferred method for FTP delivery is the SFTP secure delivery method. The SFTP delivery method allows an exported file to be delivered to an external system and is often used when the output files are large, or when a different or remote system is in use.

This delivery method is also available in Export Manager here. For information on the OIEP FTP delivery method, refer to FTP Delivery Method here.

Prerequisites

Changes to the properties file, outlined below, are implemented when the server is restarted.

Prior to configuration, clicking the Host name dropdown parameter displays the required property name. Provide a selection for the dropdown parameter via the sharedconfig.properties file on the STEP application server using the case-sensitive FTPDeliveryHostName property. The required format of the property is (square brackets not included): FTPDeliveryHostName=1=[host1],2=[host2].

Using the host name shown in the image, the entry in the properties file would be:

FTPDeliveryHostName=1=ussftp.stibo.com

Configuration

For information on a parameter, hover over the parameter field to display help text.

  1. Click the Select Delivery Method list to display the dropdown and select SFTP.

  1. In Host name, select the host name of the SFTP server to be used for the delivery.

  2. In Proxy host name, add the host name to be used for the server proxy. This field is optional.

  3. In User name, enter the user name that has access to log on to the FTP server.

  4. In Password, enter the password that will be used to log on to the FTP server. If using the SSH Key, then leave this field blank.

  5. In SSH Key, enter the full path to the Secure Shell (SSH) key file, if using. If you filled in the Password field in step 5, then leave this field blank.

    Note: This SSH key must be an RSA private key in the OpenSSH PEM format. Other SSH key types or those generated in the new OpenSSH format (the default used in OpenSSH 7.8+) are not currently supported and will result in an SFTPException: invalid privatekey error.

  6. In Passphrase, enter the passphrase that accompanies the SSH key entered, if applicable. If the SSH key does not have a passphrase or you are not using an SSH key, then leave this field blank.
  1. In File name template, to create the file name used for the output, enter template variables (identified with a $), static text, or use a combination of both. The default template is $filename-$timestamp(yyyy-MM-dd_HH.mm.ss).$extension. Depending on the settings of the configuration, the default template outputs a file name similar to 'GenericXML-2020-07-30_14.07.44.xml.' Each variable is described below:

Note: The 'Zip before upload' parameter also has an impact on the file name.

  • $filename For event-based OIEPs, this variable is replaced with text to indicate the format of the delivered file as specified in the Output Templates flipper, except for STEPXML when the first and last Event IDs are used. For example, the output file name could be 'csv-2020-07-30_14.09.40.csv' or '1804038-1804038.xml' to indicate that STEPXML was used for a single event.
  • $timestamp: This variable is replaced with the time in year-day-month-hour-minutes-seconds-milliseconds, excluding the dashes. For example, 20161511094709625 is used for an export on 15 NOV 2016 at 9:47:09:625 AM.

Adding a definition for the arrangement of the date / time elements provides a way to generate a more readable date. Static characters can be included to separate the timestamp elements and individual elements can be ordered as required, as shown below.

Note: To revert the $timestamp variable so that it uses the legacy definition (milliseconds between January 1, 1970, and the time when the file is uploaded), contact Stibo Systems Support for more information.

$timestamp(ddMMyyyy): The timestamp is modified to display day-month-year (excluding dashes) and is output as '15112016' for 15 NOV 2016.

$timestamp(yyyy-MM-dd_HH.mm.ss): The timestamp is modified to display year-month-day_hour.minutes.seconds (including the dashes, underscore, and periods) and is output as '2016-11-15_09.32.43' for 2016 NOV 15 at 9:32.43 AM.

  • $extension This variable is replaced with the extension of the output file based on the selected format in the Output Templates flipper. For XML-based formats, the output file is set with the .XML extension, while Excel files use .XLS, and comma-separated values use .CSV.

Note: The File Name Template does not support conversions of file formats and can only be used to deliver files in the format specified on the Configuration tab > Output Templates flipper of the outbound integration endpoint.

  1. In Zip before upload, select an option from the dropdown to specify if the output file should be delivered in a .ZIP (compressed) file format.
  • Yes uses 'result_0' before the timestamp variable, and then the extension ZIP. For example, a zipped STEPXML output with the default File Name Template exported on 30 JUL 2020 results in an output .ZIP file named 'result_0-2020-07-30_14.07.44.zip.' The contents of the ZIP file would follow the $filename variable applied in the 'File name template' parameter.
  • No uses the 'File name template' for the file name along with the appropriate extension for the selected data format.
  1. On the Edit Delivery Configuration dialog, click the OK button to save the delivery method.