Make the first step towards your SharePoint ECM

Make the first step towards your SharePoint ECM

Are you struggling with unstructured content? Do you find it difficult to manage important documents and audio-video artifacts across departments? You can benefit immensely by having Enterprise Content Management system like the one from SharePoint. Turn on SharePoint ECM (Enterprise Content Management) for centralized storage of your business content and make sure that no document, video or graphic is missed out in the system. We all how amazingly SharePoint has contributed towards better collaboration across departments and organizations in a cloud environment. Some of the most compelling reasons why businesses must go for SharePoint ECM integration include:

SharePoint is inexpensive

SharePoint ECM offers great security

Multimedia cataloging is automatic

It comes with inbuilt record management

It allows integration with multiple types of files

SharePoint offers robust third-party support

Understanding the need of an Enterprise Content Management

The need of ECM becomes pertinent today as more and more businesses are trying to go paperless and digitalize their processes. For this, they need to ensure that their data and documents are organized, managed, and stored in a manner that makes finding and retrieval easy and safe. It may be an important receipt’s picture, important email, a spreadsheet of last month’s sales numbers, or any other vital office document that you want to store, protect, and manage.While you can choose from a lot of other ECM solutions available today but if you have been using SharePoint in your organization, you already know the reason why SharePoint so popular among modern businesses?

SharePoint is used immensely for ECM (Enterprise Content Management) right from its first release. These days, with SharePoint online and 2013/16, there are several services, options, and capabilities for managing content and ECM in SharePoint. Here is a quick look at the ECM capabilities of SharePoint.

SharePoint helps businesses streamline their enterprise content management comprising of the following four components:

  1. Document management: All documents are managed well because of centralized storage. The documents are kept safe in the SharePoint repositories for users. They can find, retrieve, and share the documents easily and quickly.
    1. Metadata management: With this capability of SharePoint, businesses can easily create groups and term sets to simplify better management and organization of documents in the repositories of SharePoint.
    2. Co-authoring of documents: SharePoint allows real-time document collaboration. Multiple users can easily edit a document at the same time thereby accelerating the finalization of documents and improving the overall productivity of document related processes in an organization.
    3. Access control: With multiple permission levels (“read only,” “full control,” etc.) businesses can ensure that their sensitive documents are safe and protected from unauthorized access.
    4. Audit trail: You can find all the information about activities pertaining to a document throughout its life-cycle, such as who copied it, modified, or shared it. This way you are in better control of the documents and other content in your SharePoint ecosystem.
  1. Digital management of assets: SharePoint has media asset libraries that are fully optimized for managing documents, AV (audio video) files, graphics, and different types of content files. These libraries offer specific types of content with more features of metadata than any other standard document library. Also, they offer thumbnail views for quicklyreferring and browsing the assets, pop-ups playing videos from the document folder itself. Inbuilt media players of SharePoint enable audio and video file playing from an intranet, publishing site, portal, team sites, etc.
  1. Records management: This feature is helpful for legal purposes and may serve as evidence of obligations and transactions upon finalization and cannot be modified anymore.
  1. The secure repository of SharePoint protects records because of encryption, two factor authentication, data loss prevention, and other capabilities.
  2. Policies of deletion and retention ensure that the records can be retained depending on the compliance regulations bounding a company. After a specified time period ends, relevant files are eliminated automatically.
  3. SharePoint’s eDiscovery Center is a specialized site collectionthat enables identification & delivery of electronic information quickly, easily, and effectively. The information can be used as a proof. The eDiscovery Center of SharePoint allows a user to quickly search the content, apply hold to items, and ensure preserving a content copy while other users can still work on it. Furthermore, with the help of this, a user can export the content, and track the status of exports and holds related to a certain content.
  1. Web content management: With reusable templates, SharePoint allows easy and quick creation & publishing of web content. AS page layouts are reusable, different content authors can maintain branding & navigation consistency across the SharePoint portals. It is cost effective from management and deployment point of view as well. Its flexibility makes SharePoint a cost-effective option for businesses. SharePoint allows building extranet, internet, and intranet sites too.

Take your first step towards SharePoint ECM

SharePoint content management comes with a rich set of tools for meeting the ever changing business needs of any modern enterprise. But, to implement a robust solution like this you need a robust implementation as well. A certified SharePoint application development company can help you achieve your content management goals with immense ease.

What are the general rules and guidelines for using SharePoint Enterprise Content Management (ECM) system?

Let’s quickly discuss the general rules and useful guidelines for ECM solutions.

The first and most important thing you need to do is avoid declaring Content Types and Site Columns in sub-sites, instead use the root-site for collection of site for storing all Content Types and Site Columns of a hierarchy. You may, then, associate the assets from the root site to the sub sites.

  • Rely on the metadata instead of the folders for defining a hierarchy of content.
  • Avoid the urge to rename native fields such as items’ Title field. You may use a custom column with custom name as an alternative.
  • Go for remote provisioning approach instead of provisioning the IA (Information Architecture). You may use Content Type Hub and other IA replication options.
  • If you are deploying SharePoint Online, it is advisable that you use MS Flow for designing business process rather than using the workflow engine or the workflow manager.
  • Don’t use Publishing features on a Team Site’s top. You may instead create a modern communication site.
  • Avoid using the Publishing features on top of a Team Site, rather create a "modern" Communication Site
  • Content Type Hub of SharePoint allows you to publish the content types throughout a farm. You may use content type hub for centrally managing the key content types you want to make use of in various site collections.

Key challenges with this, however, is that the content types replication is not instant for the freshly created site-collections or while updating the content types in the hub. Replication may take quite some time depending on the size of tenant and the volume of data where the assets of content type hub at associated.

After creating workflow initiation form and workflow task edit form in SharePoint ECM, the next step your Microsoft Technology Associate will need to take is to create a sequential-workflow-project and the workflow’s code components through visual studio.

The prerequisites of the procedure are discussed below:

  1. Create Workflow initiation form
  2. Create the Workflow task form

Important: It is advisable that you create your workflows with the help of a development environment that resembles the environment of the location where the code is going to the deployed finally. Although it is not easy and possible always to replicate a production environment completely via developer resources but you may ensure that two environments are at least as similar as you can make them. Doing this, you will make the development, testing, and debugging processes a lot easier. For example, the workflow activities specific to the SharePoint Server 2010 require SharePoint Server and SharePoint Foundation to be installed on a computer being used for developing the workflows.

For creating a SharePoint Server 2010 workflow project from the scratch:

  • Open the Visual Studio.
  • Select New and click Project on the File menu.
  • Select SharePoint template under Installed Templates in the New Project dialog box.
  • Choose the Sequential Workflow template.
  • Give a suitable name to your project and click OK.

This initiates the SharePoint Customization Wizard.

Specify the workflow that can be deployed as a farm solution. Give a suitable name to your workflow and specify whether it is to be scoped at the site level or the list. A workflow that is list-scoped can be used for a specified library or list but this type of workflow is available for the entire site-collection.

For programmatically accessing the XML schema that stands for the forms you created during Workflow initiation and Workflow task form. You will then add the class-file created earlier (during Workflow initiation step). Access the file location where you have created your initiation form.vb or initiation form.cs file in the Add Existing Item dialog-box and then click “Add”.

Add and Configure Workflow Activities

Having created your new Workflow project, you’ve added the schema reference form, now you need to start workflow designing.There are 5 activities in the workflow namely:

OnWorkflowActivated – This activity is for activating the workflow.

CreateTask – Create workflow task and allot it to a user.

OnTaskChanged – Is executed on modification in a workflow task.

CompleteTask – The workflow is marked as complete.

For setting the OnWorkflowActivation activity, you need to set the OnWorkflowActivated activity’s Invoked property.Notice that the CorrelationToken property in properties window is set to workflowToken while the Path property is set to workflow properties. These workflow variables allow workflow engine to send data to the suitable workflow instance. Theactivation of workflow instance results in “workflow properties” variable object’s initialization.This includes common properties in all workflows, e.g. the workflow ID (instance identifier) and the list-item the workflow instance runs on. It may also include custom properties that are passed to a custom-workflow-initiation-form. The workflowProperties variable, in this case, contains the workflow instance’s initiation properties.

Make sure that the code file has correct references. In case the reference is missing, you may add the following with the help of statements.

For adding a CreateTask activity, from Visual Studio tool box, in the SharePoint Foundation section, you need to drag a Create Task activity on the workflow-design-surface and then add it right under the onWorkflowActivated1 activity. Next you need to set the properties ofCreateTask activity. View the window of Properties while selecting the CreateTask activity. Type taskToken for CorrelationToken property and create Task for MethodInvoking property.Remember, the taskId, taskProps, and taskToken are the names of variable. Make sure your code-file contains the correct declarations. Visual Studio needs to build these automatically. If they aren’t there, add them.

At this point, the task is created and allocated to a user. You need to add activities for enabling the workflow to wait for the completion of the task by the user. To do this, you need to add this with the help of activities that represent the controls of logic flow for the workflow.

Now you need to drag a While activity on the design surface of the workflow (from the Visual Studio tool box) and add it under the activity createTask1. The While activity triggers the looping of multiple activities inside it until the condition being evaluated resolves to the status of true. Set the While activity properties and Condition property to Code Condition.

While setting it to Code Condition, the workflow gets an indication that a custom function is created and needs to be used for processing the while1 activity. When the Condition sub property is set to not Finished, it indicates the method required to be run. The method has to return a Boolean value.

For adding the OnTaskChanged activity, you need to drag OnTaskChanged activity from the Visual Studio tool box on the design surface of the workflow and then add it in the activity loop of while1.

Set the onTaskChanged1 activity properties. Expand the property collection of After Properties. Now expand the After Properties collection. Type workflow1 for Name property and type afterProps for Path property. Explore the Before Properties collection and type workflow1 for the name property and beforeprops or the path property. Type taskToken for CorrelationToken and workflow1 for CorrelationTokenPath. Type onTaskChanged for Invoked property, This method is called on the execution of the onTaskChanged1activity.

Explore the TaskId property collection and type Workflow1 for the name property and taskId for the Path property.

Notice that the TaskId and CorrelationToken properties are set to variables we used in the createTask1 activity. The purpose of the setting is to bind the same task that the createTask1 activity had created. It ensures the workflow continues to receive the change event for the right task. Also, remember that the beforeProps and afterProps are object variables. The afterProps variables are the task properties post the occurrence of the task change whereas beforeProps refers to the task properties prior to the occurrence of the task change event.

Suitable variable declarations are added automatically to the workflow code by the Visual Studio. But, if they aren’t created automatically, you can add them through coding.

Add coding for theonTaskChanged method and add variable declaration to the partial class of the workflow. Add code for setting the isFinished variable. The task edit form sends the information to the workflow.

Add code to the notFinished method.

Each time the task is changed, the while1 activity invokes this method to determine whether its condition is met. As long as the Result property of the ConditionalEventArgs object evaluates to true, the while1 activity will continue to wait.

Add code that sets the Result property of the ConditionalEventArgs object.

Now, each time the user edits the task, the onTaskChanged1 activity handles the task changed event. It invokes the onTaskChanged method, which examines the task properties and sets the isFinished variable to represent whether the user marked the task as complete. The while1 activity then invokes the notFinished method, which sets the result of the event to the opposite of the isFinished variable. If isFinished returns false, the event result is set to true, and the while1 activity keeps waiting for task changes; if isFinished is equal to true, the event result is set to false, and the while1 activity completes, and the workflow continues to the next activity.

For adding a CompleteTask activity, you need to drag a CompleteTask activity from the Visual Studio tool box to the design surface of the workflow and then add it under the while1 activity.

Now just set the CompleteTask activity properties. Type taskToken for the CorrelationToken property. Type Workflow1 for the CorrelationToken Path property. Type Workflow 1 for the Task Id name property.

With this, your workflow is done and now you need to just test, debug, and deploy it and the accompanying forms. Attempting all this on your own or with the help of your limited resources may turn out to be a painstaking task with a lot of bugs and inefficiencies. So, it is advisable that you leave it to the professionals. Your SharePoint development services provider will do this for you.

What next?

To ensure that your workflow is available for document libraries’ association, you must compile the assemble of the workflow, install and set up the workflow as a Feature, activate the feature of the workflow on the selected site. Once done, you can start debugging your workflow. The Microsoft Azure solutions and SharePoint experts can help you with this.

The Azure cloud solutionsare cloud computing solutions for building, testing, deploying, and managing applications as well as services with the help of Microsoft-managed data centers.

Want to Know MOre About OUr Services? Talk to Our Consultants!


Managing documents, storing, retrieving, and fetching them can be a complex task for a lot of businesses of all types and sizes. If you are able to document and manage your content well, you can streamline your business processes and ensure better & informed decision-making. Messy content may result in a complete mess in your office, creating disturbance across departments due to poor communication and lack of adequate information for decision-making.

Trying to manage the content with the help of spreadsheets manually can make things work, despite all the time, money, and efforts you invest in it. This is when technology comes to your rescue. Content management becomes easy with ECM. However, to meet the enterprise content management needs, ECM needs to be feature-rich and flexible. Thankfully, SharePoint is just the right option for it has these qualities.

A lot of businesses try to save costs by keeping it manual but in doing so then end up spending more time, effort, and money (on resources) for content management. Furthermore, managing content through traditional methods is difficult and not reliable. On the other hand, SharePoint ECM makes things totally different for businesses through smart content management.

While there is no dearth of ECM solutions in the market today, a lot of business rely on SharePoint ECM due to the amazing benefits it offers such as increased security of documents, lower cost, automatic cataloging of multimedia, multiple file type integration, robust integration of third-party support, built in system for record management, etc. SharePoint ECM can save you from the hassle and stress of content management that is otherwise involved in the process. With better managed and easily accessible content, you can be sure that the documents and other content in your office is safe, secure, and easily retrievable.

If you choose ECM (Enterprise Content Management), SharePoint is the best choice for effectively managing digital assets, web content, records, and documents. If you thought that SharePoint ECM is a complex solution that you cannot handle because of the technicalities involved in it, let me tell you it is very simple indeed and you don’t need to be a technology expert to use it.Setting up SharePoint ECM for your business may be quite a challenge if you are new to it. But don’t worry, you can take the help of SharePoint, Azure, or development services providers.