Skip to Content
Author's profile photo Dilip Kumar Krishnadev Pandey

Read SharePoint items using SAP PI UDF

Overview:

Here, we will see, that, how we can read SharePoint’s AlertCount list item using SAP-PI UDF.

To read ShaePoint AlertCount list item, following SharePoint-REST protocols can be used:

  • REST-URL:
    • https://<org_Shp_Host>/teams/SPdev/AlertsCount/_api/web/Lists/GetByTitle(‘AlertCount’)/GetItemById(‘<ID>’)
  • Method:
    • GET
  • Headers:
    • Authorization  : “Bearer ” + <SharePointAccessToken>
  • where,
    • <org_Shp_Host> is Organisation’s SharePoint host name
    • <ID> is unique item Id of every record inside AlertCount List
    • <SharePointAccessToken>: it is security token required to authenticate SharePoint REST request while inserting items, this token can be fetched from following blog’s udf:

SAP PI Java UDF example to read AlertCount list items of SharePoint

  • Suppose, if we want to read Item ‘E01’ from sharePoint as shown in below SharePoint-screen
  • , then using its ID (itemID) inside SharePoint-REST as below:
    • https://<org_Shp_Host>/teams/SPdev/AlertsCount/_api/web/Lists/GetByTitle(‘AlertCount’)/GetItemById(‘21115’)
  • , we can fetch complete detail using following UDF example:
public String readAlertCount(String accessToken, Container container) throws StreamTransformationException{
		
		String response = "";
		try {
			// SharePoint url to fetch AlertCount List
			String wsURL = "https://<org_Shp_Host>/teams/SPdev/AlertsCount/_api/web/Lists/GetByTitle('AlertCount')/GetItemById('21115')";

			// Create HttpConnection
			URL url = new URL(wsURL);
			URLConnection connection = url.openConnection();
			HttpURLConnection httpConn = (HttpURLConnection) connection;

			// Set Header
			httpConn.setRequestProperty("Authorization", "Bearer " + accessToken);
			httpConn.setRequestMethod("GET");

			// Read the response.
			InputStreamReader isr = null;
			if (httpConn.getResponseCode() == 200) {
				isr = new InputStreamReader(httpConn.getInputStream());
			} else {
				isr = new InputStreamReader(httpConn.getErrorStream());
			}
			BufferedReader in = new BufferedReader(isr);
			String responseString = "";

			// Write response to a String.
			while ((responseString = in.readLine()) != null) {
				response = response + responseString;
			}
		} catch (Exception e) {
			response = "Error: " + e.getMessage();
		}
		return response;
}
  • Result of UDF will be a xml string like below:

 

 

<<<<< Parent blog reference…..  Integrate SharePoint using SAP PI

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.