SharePoint transfer sites

The SharePoint transfer site supports pushes and pulls from SecureTransport to the SharePoint 2013 file system. The SharePoint transfer site can be used with Basic Application and Advanced Routing for PUSH and PULL server-initiated transfers (SIT). A user name and password are used for SharePoint file system authentication.

Note The Advanced Routing Send To Partner route step option Overwrite Upload Folder cannot be used for SharePoint transfers.

The following table describes the SharePoint protocol options for defining a transfer site.

Field Description
Server Settings
Specify partner using hostname (IP address) and port number
Host Host of SharePoint REST service.
Port Port of SharePoint REST service.
Specify partner using URL
Address

URL address of SharePoint REST service.

Examples:

  • http://example.com
  • https://example.com:443
  • https://example.com:443/websealjun/
SharePoint site name The name of site where SharePoint document library lies.
Network Zone

Network zone for the transfer site.

  • None
  • Any
  • Default
Transfer Settings
Download Folder A folder on the SharePoint site from which files will be downloaded. This is the folder in which files will be looked up. The field will accept SecureTransport expression language input, controlled by the Advanced Expression checkbox.
Advanced Expression

When checked, the download folder is evaluated using the expression language.

  • Using it with dates.
  • The download folder will be evaluated using the current date when the transfer site is being executed. For example: folder_20150130.
  • folder_${date("yyyyMMdd")}
Download Pattern Type Regular expression or file globing.
Regular Expression

When the syntax is Regular Expression, the String representation of the filename is matched against Perl5.003 regular expressions. Perl5 extended regular expressions are also supported. For example:

  • Matches files ending in .xml or .txt:
  • .*\.(xml|txt)
  • Case insensitive match of data.xml file:
  • (?i)data\.xml
File Globbing

When the pattern type is File Globbing, the String representation of the filename is matched using a limited pattern language that resembles regular expressions but with a simpler syntax. For example:

  • Matches files ending in .xml:
  • *.xml
  • Matches file names starting with foo. that have a double character extension:
  • foo.??
  • Matches file names ending in .1, .2, .3, .4, .5, .6, .7, .8, .9, .0:
  • *.[0-9]
  • Matches file names having a single character extension different from 1, 2, 3, 4, 5, 6, 7, 8, 9, 0:
  • *.[!0-9]
Download Pattern The pattern based on which files will be downloaded. After a LIST is performed, only files that match the pattern will be downloaded. The field will accept SecureTransport expression language input, controlled by the Advanced Expression checkbox.
Advanced Expression

When checked, the download pattern is evaluated using expression language. Also, when Advanced Expression is checked for Download Pattern, the input fields from Advanced Options menu will be evaluated using the expression language.

  • Using the download pattern with dates.
  • The download pattern will be evaluated using the current date when the transfer site is being executed. For example: *_20150130.txt. This will match all files ending with _20150130.txt.
  • *_${date("yyyyMMdd")}.txt
Advanced Options An additional options section that allows downloading different file versions. When Advanced Options is selected, a new section will expand containing file versions related settings. Those settings will be used for forming the final download list. By default this section is hidden.
Download specific|last|first X Any|Major|Minor version(s) of the file

This setting is used for determining which file versions will be downloaded, based on their version labels and types. X would accept either a specific file version or a file version count. The following use cases are supported through this setting:

  • Download “specific” “1.1” “Any” version of the file – downloads a specific file version.
  • Download “specific” “<empty value>” “Minor” versions of the file – downloads all minor versions of the file.
  • Download “specific” “<empty value>” “Major” versions of the file – downloads all major versions of the file.
  • Download “first” “<X>” “Any” versions of the file – downloads the first X versions of the file, regardless if they are minor or major.
  • Download “first” “<X>” “Minor” versions of the file – downloads the first X MINOR versions of the file. Major versions are discarded.
  • Download “first” “<X>” “Major” versions of the file – downloads the first X MAJOR versions of the file. Minor versions are discarded.
  • Download “last” “<X>” “Any” versions of the file – downloads the last X versions of the file, regardless if they are minor or major. By default, it may be considered, that if only a Download Pattern is set for the transfer site, this exact use case is being executed – Download “last” “1” “Any” version of the file.
  • Download “last” “<X>” “Minor” versions of the file – downloads the last X MINOR versions of the file. Major versions are discarded.
  • Download “last” “<X>” “Major” versions of the file – downloads the last X MAJOR versions of the file. Minor versions are discarded.

Major versions are in the following format – X.0 – for example 1.0, 2.0, 3.0, 6.0.

Minor versions are in the following format X.Y, where Y is not equal to 0 – for example 1.2, 1.3, 4.5, 6.11.

Download file versions from mm/dd/yyyy to mm/dd/yyyy

Downloads all file versions within a specific time frame, regardless if versions are minor or major. If both the dates are the same, downloads all file versions from a specific day. Date fields are expression language based.

Example:

  • ${date("MM/dd/yyyy")}
Receive Post Actions  
Receive File As Specify a value to receive the file with a different name. This is an expression language based field that can be used to download a file with different name. It should be configured when downloading different versions of the same file. The field is auto-populated with a default rename expression: (“${env['DXAGENT_TARGET]}_${env['DXAGENT_VERSIONLABEL']}”)

Available environment variables:

  • ${env['DXAGENT_TARGET']}
  • ${env['DXAGENT_VERSIONID']}
  • ${env['DXAGENT_VERSIONLABEL']}

Examples:

  • file_${random()}
  • ${env['DXAGENT_TARGET']}_${env['DXAGENT_VERSIONID']}
  • ${env['DXAGENT_TARGET']}_${env['DXAGENT_VERSIONLABEL']}
On Failure

No Action

Delete Source File - Deletes a file on SharePoint. This option is disabled when a different Advanced Options download other than the default one is set (Download last 1 Any version(s) of the file.).

Delete File Version Only - Deletes the downloaded file version only from SharePoint. This option is disabled when the default download is set (Download last 1 Any version(s) of the file.) or using Advanced Download options is disabled.

Move/Rename File To - Specify a full path value to rename the remote file on transmission failure or move it to a different remote folder. A limited expression language can be used to specify a file name/folder. This option is disabled when a different download than the default one (Download last 1 Any version(s) of the file.) is set.

Examples:

  • Use current date as a file name.
  • ${date('yyyyddMMHHmmss')}
  • Use a random ID as a filename.
  • ${random()}
Note Valid file or folder names cannot begin or end with a dot, cannot contain consecutive dots and cannot contain any of the following forbidden characters: ~ " # % & * : < > ? / \ { | }
 On Success

No Action

Delete Source File - Deletes a file on SharePoint. This option is disabled when a different Advanced Options download other than the default one is set (Download last 1 Any version(s) of the file.).

Delete File Version Only - Deletes the downloaded file version only from SharePoint. This option is disabled when the default download is set (Download last 1 Any version(s) of the file.) or using Advanced Download options is disabled.

Move/Rename File To - Specify a full path value to rename the remote file on transmission success or move it to a different remote folder. A limited expression language can be used to specify a file name/folder. This option is disabled when a different download than the default one (Download last 1 Any version(s) of the file.) is set.

Examples:

  • Use current date as a file name.
  • ${date('yyyyddMMHHmmss')}
  • Use a random ID as a filename.
  • ${random()}
Note Valid file or folder names cannot begin or end with a dot, cannot contain consecutive dots and cannot contain any of the following forbidden characters: ~ " # % & * : < > ? / \ { | }
Upload Folder A folder on the SharePoint site where files will be uploaded. The field will accept SecureTransport expression language input, controlled by the Advanced Expression checkbox.
Advanced Expression

When checked the upload folder is evaluated using expression language.

  • Using it with dates.
  • The upload folder will be evaluated using the current date when the transfer site is being executed. For example: folder_20150130.
  • folder_${date("yyyyMMdd")}
Send Post Actions  
Send File As

Specify a value to send the file with a different name. The limited expression language can be used to specify a file name.

Available environment variables:

  • ${env['DXAGENT_TARGET']}

Examples:

  • file_${random()}
  • ${env['DXAGENT_TARGET']}_${date('yyyyddMMHHmmss')}
Note Valid file names cannot begin or end with a dot, cannot contain consecutive dots, and cannot contain any of the following forbidden characters: ~ " # % & * : < > ? / \ { | }
On Success

No Action

Publish - Publish the file with specified comment to SharePoint. Publishing a file, migrates the file from a minor version to a major version. The comment field is expression language based.

Example:

  • Publish file and use the current date as publish comment.
  • ${date('yyyyddMMHHmmss')}
Note The publish comment cannot contain any of the following forbidden characters: ~ " # % & * : < > ? / \ { | }
Use HTTPS Checked when HTTPS should be used for transfers.
Verify certificate for this Site Verify certificate for the site when HTTPS is used for transfers.
Site Login Credentials
User Name Login name to be used for the SharePoint document library. If the user to authenticate with is in domain, then it is required to specify both the user and the domain in the username property as follows: <domain name>\<user name>. Otherwise specify only the username.
Password Settings  
Use Password If checked, a password must be provided.
Password The password to be used for the SharePoint document library.

 

The following provides information on the limited expression language supported by SharePoint transfer sites:

Supported expression language

This topic outlines the limited expression language supported by SharePoint transfer sites.

Predefined variables

The predefined variable that is supported:

  • ${timestamp}

Predefined functions

The predefined functions that are supported:

  • Functions related to a date. For example: ${date("yyyyMMdd")}
  • Functions related to a Random ID. For example: ${random()}
  • Functions related to a String representation. For example: ${concat('str', 'ing')}
Note Expression variables and functions related to file name and the SecureTransport environment are not supported.

Added expression variables

On download, the following environment variables are added:

  • ${env['DXAGENT_ TARGET']} – The name of the file being pulled.
  • ${env['DXAGENT_ VERSIONLABEL']} – The SharePoint file version label (1.0, 3.1, and so forth).
  • ${env['DXAGENT_ VERSIONID']} – The SharePoint file version ID (512, 1024, and so forth).

On upload, the following environment variable is added:

  • ${env['DXAGENT_ TARGET]} – The name of the file being pulled.

Related topics:

Related Links