Example 7: Using the SFTP Target Connector
This section discusses how to:
Upload files to an SFTP server.
Download binary files from an SFTP server.
For the examples presented in this section, you must have an active SFTP server, as well as an account on that server.
To upload a file to an SFTP server:
Add a new URL object.
Select
The URL Maintenance page appears.
Add the following values:
Field
Value
URL Identifier
SFTPTESTURL
Description
SFTP Server URL
URLID
Enter the appropriate URL. For example:
sftp://<userid>:<password>@<address>:<port>
Save the changes.
In PeopleSoft Application Designer, open the EXAMPLE_WORKREC record and add the following PeopleCode to the FieldChange event for the TEST field:
Local array of Message &messages; Local array of Message &responses; Local Message &MSG; Local array of string &nodenames; Local string &node; &xmldata = "<?xml version='1.0'?><sftpTest/>"; &xmlDoc = CreateXmlDoc(&xmldata); &rootNode = &xmlDoc.documentelement; &descNode = &rootNode.AddElement("Payload"); &descNode.NodeValue = "Generated at " | %Datetime; &messages = CreateArrayRept(&MSG, 0); &nodenames = CreateArrayRept(&node, 0); &nodenames [1] = "TARGETNODE"; &messages [1] = CreateMessage(Operation.EXAMPLE_SERVICE_OPR); &messages [1].SetXmlDoc(&xmlDoc); &responses = %IntBroker.SyncRequest(&messages, &nodenames);
In the PeopleSoft Pure Internet Architecture, open the TARGETNODE node definition and do the following:
On the Node Definitions-Connectors tab, set the Connector ID to SFTPTARGET.
Set the following properties to the values indicated:
Property
Value
BASE64ENCODE
Y.
CHARSET
UTF-8.
METHOD
PUT.
REMOTEFILENAME
SFTPTestFile.txt.
URL
SFTPTESTURL.
In the PeopleSoft Pure Internet Architecture, open the EXAMPLE_PAGE page and click the Test button.
Login to the SFTP server and check for the file. Open the SFTPTestFile.txt file and verify the contents.
To download a binary file from an SFTP server:
Put a binary file in an accessible location on the SFTP server.
For this example, the file is called image.jpg.
Add a new URL object.
Select
The URL Maintenance page appears.
Add the following values:
Field
Value
URL Identifier
SFTPTESTURL
Description
SFTP Server URL
URLID
Enter the appropriate URL. For example:
sftp://<userid>:<password>@<address>:<port>
Save the changes.
In PeopleSoft Application Designer, open the EXAMPLE_WORKREC record and add the following PeopleCode to the FieldChange event for the TEST field:
Local array of Message &messages; Local array of Message &responses; Local Message &MSG; Local array of string &nodenames; Local string &node; &xmldata = "<?xml version='1.0'?><sftpTest/>"; &xmlDoc = CreateXmlDoc(&xmldata); &messages = CreateArrayRept(&MSG, 0); &nodenames = CreateArrayRept(&node, 0); &nodenames [1] = "TARGETNODE"; &messages [1] = CreateMessage(Operation.EXAMPLE_SERVICE_OPR); &messages [1].SetXmlDoc(&xmlDoc); &responses = %IntBroker.SyncRequest(&messages, &nodenames); &theTempFile = GetFile("C:\work\aNewImage.jpg", "W", %FilePath_Absolute); If &theTempFile.IsOpen Then &theTempFile.writeBase64StringtoBinary(&responses [1].GetContentString()); &theTempFile.Close(); End-If;
In the PeopleSoft Pure Internet Architecture, open the TARGETNODE node definition and do the following:
On the Node Definitions-Connectors tab, set the Connector ID to SFTPTARGET.
Set the following properties to the values indicated:
Property
Value
BASE64ENCODE
N.
CHARSET
UTF-8.
METHOD
GET.
REMOTEFILENAME
image.jpg
URL
SFTPTESTURL.
In the PeopleSoft Pure Internet Architecture, open the EXAMPLE_PAGE page and click the Test button.
Check the local directory for the file. Open the file and verify the contents.