A Customized User Experience when Saving Email/Attachments to SharePoint
This article provides a brief introduction to how the OnePlaceMail Plugin API (Application Programming Interface) can be used to provide a user experience that is customized to your requirements and needs. This may include:
- a simplified user interface (with less options)
- tight integration with existing backend systems for looking up and setting SharePoint column metadata
- using custom business logic to determine where the file should be saved in SharePoint without the user having to know
- Change the default behaviour of OnePlaceMail
The Scinaptic website contains high-level information on the OnePlaceMail API and the Software Development Kit download (which contains a .chm help file on the API complete with example code and common ‘How to’ articles).
During the process flow of saving a file (or email) to SharePoint, OnePlaceMail defines a number of events (or hook-in points) where you can write custom code that will execute and has the ability to change/enhance/replace the standard OnePlaceMail functionality.
SharePoint is a big platform that is used to implement countless solutions. OnePlaceMail out-of-the-box does a great job in automatically detecting and supporting all the different ways you may have configured or customized SharePoint to achieve your solution. Most of the time this wide support of SharePoint’s different configuration options is all you need. There are times however where the generic “one-size-fits-all” interface of SharePoint and OnePlaceMail isn’t as streamlined as it could be if you just looked at the requirements of one specific area.
As an example, you may have setup a correspondence library where you wish to store all email related to clients. A key piece of information you will need to store on each email will be which client the email is related to. Lets assume you have your list of clients maintained in a SQL database and you’ve chosen not to connect this to SharePoint using BCS (maybe the BCS picker dialog SharePoint gives you doesn’t provide all the search and filter options you want to provide to your users?).
Wouldn’t it be great if you could have a custom user interface (just when you try to save to this library) to allow your users to search your client data in SQL, select the right record and then have the desired SharePoint columns automatically populated during the save operation. The OnePlaceMail API makes this easy.
Here’s the new flow of events with a OnePlaceMail plugin providing the custom UI for client lookup from SQL and in this case setting a value of the ‘Client Number’ column. Note it is possible to completely prevent the standard OnePlaceMail window from appearing if you are setting all required column values via the plugin.
1 – Drag/drop email to Client Correspondence library (triggering the OnePlaceMail Save to SharePoint operation)
2 – User is presented with the custom search form to select the client
3 – User conducts search (based on the custom search UI options) and results are returned
4 – User selects the desired results. Note in the example plugin the columns are sortable and can be filtered – now that is is a custom form you can implement whatever rich UI you need.
5 – Once the client is selected in the custom form, the plugin then automatically populates the Client Number column in the standard OnePlaceMail Save to SharePoint window. Note this is just an illustrative example – real world you would probably suppress the Save to SharePoint window from appearing and all the user sees is the custom client search/select form.
This is just one simple example to give you an idea of what is possible with the OnePlaceMail API. Here’s a list of some of the ‘How to’ articles included in the API Help file which may give you more ideas for how the API could work for you:
- Setting the Destination Location to a Library or List
- How to Prevent Users from Changing the Destination Save Location
- How to Hide the SharePoint node from the Navigation Tree
- How to Set the Default Content Type
- How to Set Default Column Values
- How to Access Upload Files and File Properties
- How to Get Email Properties
- How to Set Custom File Properties
- How to Rename an Upload File
- How to Suppress the File Upload Window and Auto Upload Files
- How to Access Upload Results
- How to Persist Data Between Plugin Events
The OnePlaceMail API is available in the Enterprise Edition of OnePlaceMail.