Issue
Sometimes when connecting your ShortPoint Design Element to a SharePoint list using Current site, Other site or SharePoint Site URL Connection types, you cannot see any data returned.
SharePoint list with the data | ShortPoint Connection and results |
The data might appear after a few page refreshes. However, if you are mapping images with the Person column, these images might be blurred.
TABLE OF CONTENTS
Reason
This can sometimes happen with a few Design Elements, like Image Titles or Tiles, when you are setting up a connection to a SharePoint list that contains Person column in it:
Our team is currently working on fixing it in the product.
Meanwhile, you can try using other Design Elements, for example, Image Lists, if you do not need big images to display, or use the REST API workaround described below.
Workaround
To display the data, or to improve the images' resolution, you can use the REST API connection as a workaround. Here is how the end result may look like:
Please follow the steps below.
Prerequisite
Users that are added to a SharePoint list should have Email property set in their Delve profiles.
You can also check if the email is added right from the SharePoint list itself: simply hover over or click the person name or image in the list. The available profile information will appear:
Step 1. Disconnect from the current connection source
In the edit mode of the page, open your Design Element settings by pressing the cog wheel icon:
Switch to the Connect tab and Disconnect from the connection source:
Step 2. Set up REST API connection
Go Back to Connections:
Choose REST API from the connection types:
In the REST API URL, paste the following URL (items highlighted with red, yellow and green require editing):
https://siteURL/_api/web/lists/getbytitle('listTitle')/items?$select=personColumnName/EMail&$expand=personColumnName
- siteURL - should be replaced with the site URL (root site, site collection, subsite) where the SharePoint list is located;
- listTitle - should be replaced with the SharePoint list/library title you would like to connect to;
- personColumnName - should be replaced with the Person column name.
For example, our REST API URL looks like this:
https://mycompany.sharepoint.com/_api/web/lists/getbytitle('HR Department')/items?$select=Person/EMail&$expand=Person
where:
- mycompany.sharepoint.com is the site collection URL where our SharePoint list is located;
- HR Department is the title of our SharePoint list with Person column;
- Person is the column name in our list.
Click Connect and wait for connection to load:
After you see that the connection is set up, proceed to the next step to map the items.
Connection Tip. Display necessary user profile properties
You can display the additional information (email, phone number, department etc.) of the user's profile in the connection results.
To do that, simply add them as parameters in the REST API URL using the following syntax: personColumnName/Property and separate them with a comma.
Here is the list of the available properties:
Property value | Display as |
Title | Name |
Name | Account |
FirstName | First name |
LastName | Last name |
UserName | User name |
Department | Department |
JobTitle | Title |
MobilePhone | Mobile phone |
WorkPhone | Work phone |
Work email | |
SipAddress | SIP address |
Office | Office |
ID | ID |
Modified | Modified |
Created | Created |
For example, if you would like to get the person's full name, job title, department and work email, your REST API URL will look similar to this:
https://siteURL/_api/web/lists/getbytitle('listTitle')/items?$select=personColumnName/EMail,personColumnName/Title,personColumnName/JobTitle, personColumnName/Department& $expand=personColumnName
Step 3. Update the Items mapping
Switch to the Items tab:
Press the chain icon on the right of the Design Element field (for example, Title) and select the mapping option:
Note: Check our ShortPoint Connect: Basic Tutorial to know more about ShortPoint Connect and Items Mapping.
For mapping the Image field, you will need to use the following link (items highlighted in red and green require editing):
https://siteURL/_vti_bin/DelveApi.ashx/people/profileimage?size=L&userId=#personColumnName__EMail
- siteURL - should be replaced with the site URL (root site, site collection, subsite) where the SharePoint list is located;
- #personColumnName__EMail - should be replaced with the user's email mapping value (you can choose it from the drop-down options, please refer to the screenshot below).
For example, our link will look like this:
https://mycompany.sharepoint.com/_vti_bin/DelveApi.ashx/people/profileimage?size=L&userId=#Person__EMail
After you are done with the mapping, you may click the Preview button to check the results:
Then, click Update and save your page:
Result
That's it. Here is how it may look like on your page:
Happy connecting!
Related articles: