Integrating Sharepoint With Other Systems: Strategies And Considerations
Key Benefits of Integration
Integrating SharePoint with other business systems and applications can provide many valuable benefits:
- Improved data flow between systems – Integration enables seamless transfer of data between SharePoint and other systems, ensuring information is up-to-date across the technology ecosystem.
- Enhanced productivity and efficiency – Smooth data flow reduces manual data handling tasks. Automated workflows also streamline business processes. Users can access information faster.
- Streamlined business processes – Integration helps break down data and process silos. This leads to consolidation of systems and processes for better efficiency.
- Better access to information – Users get a unified view of information across various systems on SharePoint portals. This facilitates faster and better decision making.
Methods of Integration
There are several integration strategies and techniques that can be used to connect SharePoint with external systems:
Using SharePoint web services and APIs
SharePoint provides various built-in web services like lists, metadata, search and user profiles services. These can be leveraged to build custom integration solutions. SharePoint Client Object Model can also be used to access SharePoint data and services from .NET applications.
Leveraging SharePoint’s inbuilt integration capabilities
SharePoint offers out-of-the-box connectivity to Office applications using features like Excel Services, Access Services and Visio Services. Workflows can also integrate external data using actions like ‘Call HTTP Web Service’.
Employing third-party tools and connectors
Third party add-ons like Microsoft Power Automate, Power Apps and Power BI provide prebuilt connectors that allow integrating SharePoint easily with popular apps like Oracle, SAP, Salesforce etc. Solutions like Boomi and Informatica also simplify integration needs for more complex scenarios.
Key Systems to Integrate
Microsoft Office Applications
Deep Microsoft Office integration is a key advantage of SharePoint. Some useful capabilities are:
- Bidirectional synchronization between SharePoint lists and Excel spreadsheets
- Using Power BI dashboards to visualize SharePoint list data
- Automating workflows between SharePoint and Office 365 Outlook tasks
- Launching OneNote from SharePoint to capture notes and action items
The Open XML SDK can programmatically access Office documents stored in SharePoint libraries. Example:
// Access Excel data in SharePoint using Open XML using (SpreadsheetDocument doc = SpreadsheetDocument.Open(filepath, true)) { WorkbookPart wbPart = doc.WorkbookPart; // Access sheets, cells etc }
Microsoft Dynamics 365
Dynamics integration allows synchronizing key customer data between both systems, enabling users to track complete customer journey from lead to order fulfillment. Some use cases are:
- Making Dynamics CRM entity data available as external lists in SharePoint
- Triggering Dynamics workflows on SharePoint list actions
- Embedding Dynamics dashboards and visualizations in SharePoint sites
This code illustrates fetching Dynamics CRM data using CRM Web APIs from .NET application:
// Fetch CRM data using CRM web API var token = await crmCtx.GetOAuthToken(); HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token); var response = await client.GetAsync("https://org.crm.dynamics.com/api/data/v9.1/accounts"); var content = await response.Content.ReadAsStringAsync(); // Parse JSON response
SQL Server Reporting Services
Reporting Services (SSRS) integration lets users incorporate interactive, scheduled reports and models into SharePoint dashboards and sites for improved business insights. Some capabilities are:
- Render paginated SSRS reports right within SharePoint pages
- Parameterize SSRS reports using SharePoint list data
- Use SharePoint user permissions to manage report access and security
LDAP directories
SharePoint provides out-of-box support for Active Directory import and sync. Third-party LDAP solutions can enable integration with other directories like OpenLDAP and IBM Domino. Core capabilities:
- Import user profile attributes from LDAP directories using synchronization
- Enable LDAP authentication for SharePoint login
- Schedule incremental syncs to ensure user data is up-to-date
Code Repositories
Source code integration with repos like Git, Azure DevOps and SVN allows developers to access repositories and pull latest changes right from SharePoint. Developers can also use SharePoint workflows to implement review-approve processes for code changes before commit.
ERP Systems like SAP
Bidirectional SharePoint and ERP integration can centrally publish ERP data like inventory counts, order status etc. on SharePoint portals for enterprise-wide visibility. ERP data can also be synced with SharePoint lists and libraries. Common use cases:
- Visualize key ERP reports, KPIs and dashboards on SharePoint
- Sync product catalogs, pricing data from ERP to SharePoint sites
- Enable self-service access to order status, invoices etc. through SharePoint
Key Considerations
Some important aspects to factor while planning SharePoint integration with other systems:
Identity and access management
A centralized identity store synced across integrated systems using directory services like AD or LDAP can enable single sign-on (SSO) and unified access control.
Data consistency and integrity checks
Mechanisms for maintaining data consistency across systems and validating integrity to prevent data corruption are vital for reliable integration.
Handling sync conflicts
Logic for identifying and resolving integration conflicts due to issues like duplicate records, data deletion etc. needs to be implemented.
Security and compliance
Information security and regulatory compliance considerations applicable to each system must be accounted for in the integration architecture.
Managing integration complexity
As integration points across systems increase, complexity can spiral out of control. A reusable, modular integration approach with governance helps manage complexity effectively.