Top 60 custom solutions built on Microsoft SharePoint Server 2010

Top 60 Custom Solutions Built on Microsoft Sharepoint Server has 5 ratings and 0 reviews. Master SharePoint solution development with deep and.
Table of contents

Thank you for reading! Microsoft is cleaning house. Now that it has to maintain SharePoint for thousands of enterprises and millions of users in Office , Microsoft is working to clean up all the odd and messy bits of its flagship collaboration product. In a recent training course on Microsoft Virtual Academy , Microsoft urged developers to change the way they package and deploy their code in order to clean up a mess that has been building since The other news is that where the tools for the old approach are mature and familiar to SharePoint developers, there is virtually no tooling for the new one, just a collection of code samples at this point.

So adopting the new model will be more costly until better tools are available. This article will summarize the changes and analyze their impact on SharePoint developers and customers. List, web, and site templates are similar, except that a whole list or site is created. Now, instead of defining SharePoint content in CAML, Microsoft wants everyone to start creating content programmatically using a pattern called remote provisioning. However when you deactivate a feature, the content it created might persist, go away, or just break. Versioning and updates are black art.

Over time all these problems add up and users just blame SharePoint. Here are some examples of remote provisioning:. The remote provisioning advice has been coming from Microsoft since last summer, but the Virtual Academy training is by far the strongest in telling developers to stop using features and templates. The training includes many live demos and code walk-throughs on Remote Provisioning and the reasoning behind the changes. Existing SharePoint customers may be comforted that Microsoft reiterated its plans to continue to support farm solutions for the foreseeable future, but only on premises.

The instructors offered detailed advice on developing farm solutions in order to avoid the problems with Features and Templates:. What Microsoft is trying to do is remove problems in which SharePoint content is invalidated when it gets out of sync with a particular set of solutions installed on a SharePoint farm. These problems make it difficult or impossible to upgrade SharePoint, and lead to big challenges with disaster recovery, when content is restored to a new SharePoint farm from backup or in a DR replication scenario. The reason is always the same: Maintaining more than one version of SharePoint is very expensive for enterprises; the extra SharePoint farms require extra hardware and a lot of extra maintenance work, much of it arcane knowledge of old and outdated technology.

The worst part is that end users are constantly switching between versions making for an inconsistent user experience. The vision is for SharePoint content to be self-contained and independent of custom and version-specific code that may be installed. Thus, a content database could be connected to a new SharePoint farm — even a new version of SharePoint — and it would just work. Switching to Remote Provisioning is a big step backward in productivity. Just remember that however painful it is to change the way we package and deploy our customizations, the goal is to ease a perennial pain with upgrading SharePoint.

The future of sandboxed solutions, however, is extremely doubtful at this point. You may recall that sandboxed solutions were officially deprecated in SharePoint , but then Microsoft recanted and said that only the ability to run custom server code would be discontinued. In the class, one of the top recommendations is to avoid sandboxed solutions, not only the custom server code but sandboxed solutions of any kind. They pointed out problems with orphaned objects that are left behind when sandboxed solutions are retracted.

This is a little awkward, because Microsoft has been using sandboxed solutions in support of newly introduced features such as the Design Manager, a branding tool introduced in SharePoint Steve Walker took a hard line nonetheless, and hinted that the sandbox would eventually be shut down once and for all. During the Virtual Academy class, Microsoft provided quite a bit of branding guidance.

The traditional way to brand a SharePoint site is to change its master page, but master page changes generally do not survive SharePoint upgrades. Working with SharePoint metadata, tags, and other social computing features 7. Extending SharePoint ribbon with custom actions and events 8. Deep dive into SharePoint pages, templates, and navigation 9. Accelerating SharePoint solution development in your team with custom Visual Studio extensions.

Read the first chapter or download the source code of the book here: Most code examples in this book come with references to downloadable solution files that have been compiled and tested.

Relationship to the SharePoint and Office 365 App Models

With the source code provided, you will be able to jump right into the example and build on the top of it to test your specific scenario. Paperback , pages. To see what your friends thought of this book, please sign up. Lists with This Book.

This book is not yet featured on Listopia. Laveen rated it really liked it Jul 08, Sam rated it liked it Jul 15, Wsantosf Santos rated it it was ok Sep 15, With the deep functionality of Windows Workflow Foundation and related SharePoint features, solution architects, designers, and administrators alike can help quickly and easily improve business processes.

As with many technologies that help people create solutions, SharePoint workflow enables a variety of tools and approaches that all can achieve the same goals. This article discusses those various capabilities and examines why and how each should be used. The goal of this discussion is to help you make good decisions about what tools to use and when, and to offer guidance about how to use them most effectively.

Before you examine specific scenarios, it is important that you understand how a SharePoint workflow is structured. This section discusses what components, or building blocks, are used to create a SharePoint workflow; what security rules apply to workflows; and what new features in SharePoint can increase your options for automating key business processes. The section then describes an example scenario where a workflow can be built and extended to improve business productivity.

The most common sort of event is the initiating event—that is, the event that starts a workflow. There are several ways in which workflows are started: When a workflow is initiated, you can give the user a form to collect data for executing the workflow. A step contains one or more actions and, optionally, one or more conditions. Both the structure and number of steps are largely up to you—you can create a "one-step" workflow in which that single step contains a large list of actions.

Yaroslav Pentsarskyy: Taking Your Existing SharePoint 2010 Solution to the Cloud (Calgary)

However, it is usually better, from an organizational perspective, to separate additional steps. To enable this kind of "if-then-else" logic in your workflows, you add conditions. A condition is a statement that, if true, tells the workflow engine to execute an associated task or group of tasks.

SharePoint Designer has several built-in, predefined conditions that support common workflow scenarios. You can use these conditions to help rapidly develop and deploy SharePoint workflows. An action can be anything—from working with an item associated with the workflow, to sending email to a certain participant, to updating another data repository.

You can build custom actions as discussed in Extending SharePoint Designer Workflows Using Custom Activities later in this article ; but SharePoint Designer includes a comprehensive set of actions that enables you to build even complex examples of most common business processes in SharePoint For a list of built-in, predefined actions that are available in SharePoint Designer , see SharePoint Designer Built-in Actions later in this article. Because SharePoint is an enterprise-class collaborative system, security and user context are a critical piece of any solution, and workflows are no exception.

The following are some important rules of workflow security:. In these cases, you can enclose the task in an impersonation step, which causes the task to be executed as the user who created the workflow. For more information about impersonation steps, see the next section. SharePoint improves on the workflow system found in earlier versions. Specifically, new options for structuring workflows are available to increase the number of scenarios that can be automated:.

When you run actions in serial, an action starts only when the previous action is complete. When you run actions in parallel, all actions within a parallel block start at the same time. For a parallel branch, the workflow proceeds down one of two parallel paths. For example, if a reviewer approves a document, the workflow moves the approved document to a specific document library, and then sends an email message to the entire team to notify them of the approval.

Building Effective Workflows Using SharePoint Server | Microsoft Docs

If the reviewer rejects the document, the workflow notifies the document author of the rejection. In either case, the workflow then reaches its end and the process is complete. In earlier versions of SharePoint workflows, steps were a single-level structure, containing conditions and actions. In SharePoint , you can nest or add steps within steps. Figure 1 shows the process of using nested steps in a conditional block. Nested steps are a good way to improve the organization of your workflow. For example, a workflow might have many actions in a step that does not use conditions.

In this case, you can separate the actions into steps to better organize them. Here, the rules in one step are processed to conclusion before moving to the next step, so be sure to group in the same step the rules that are necessary to effect the specific actions that you want. Impersonation steps are especially useful in approval and publishing scenarios, where the people who submit content for approval and those who approve the content have different permissions. From a security standpoint, this is an important and useful feature because it enables proper least privilege-style security and does not require open access just for the sake of workflows.

Examples include a workflow that automatically assigns permissions to users or a workflow that maintains lists.


  1. La scoliose idiopathique de lenfant et de ladulte (French Edition).
  2. The Judaean Poor and the Fourth Gospel (Society for New Testament Studies Monograph Series)!
  3. A Manual for the Modern Mystic: How to Practice Being in the Presence of God!
  4. Soziale Arbeit im Wissenschaftssystem: Von der Fürsorgeschule zum Lehrstuhl (German Edition);

Impersonation steps can be added only to the root of a workflow and cannot be nested in another step. For this example, you are assuming the role of a Senior Analyst in the Human Resources HR group of Contoso Coffee, a midsized but growing company that operates retail cafes and produces a range of products for other channels. You have used SharePoint frequently over the last several years for a variety of purposes: In your group, you own several team sites and drive people to use their capabilities.

Contoso currently has a standard process for recruiting and hiring new employees, but it is fairly manual and people-intensive. Although this process is time-tested and has served the company well in the past, it is becoming a bottleneck for the accelerated pace of growth at Contoso. The IT department recently completed upgrading the SharePoint environment to SharePoint , and you are eager to exercise this new tool to automate the recruiting and hiring process.

Of course, your time and budget are limited. Therefore, you must build solutions that not only work properly, but also are as efficient, cost effective, and robust as possible. This section examines built-in workflows. It presents a common business process problem—and its solution—in the context the Contoso Coffee example in the previous section.

It also discusses the details of built-in workflows, including features and tools, common scenarios, usage guidance, and constraints. After some careful analysis, you confirm a key problem with the current manual recruiting and hiring process: Getting approval is time-consuming and, at times, confusing, with multiple back-and-forth discussions often occurring over email. Previously, you started to address this problem by using a SharePoint list for job requisitions.

Although this has helped ensure that people access data from a "single source of truth," it has not streamlined the approval process itself. SharePoint includes several predefined workflows that are installed as features and are ready to use immediately after deploying the product.

After you activate a predefined workflow for your site collection, you can add the workflow to any list, library, or content type on the site. As a site owner, you can configure built-in workflows by completing forms that contain choices about workflow setup and participants for a particular list or content type.

On the Server ribbon, click Workflow Settings , as shown in Figure 2. There are six workflows built into SharePoint Each represents a particular type of scenario, as shown in Table 1. Routes a document or item to a group of people for feedback. Reviewers can provide feedback, which is then compiled and sent to the person who initiated the workflow. Routes a document or item to a group of people for approval. By default, the Approval workflow is associated with the Document content type; therefore, it is automatically available in document libraries.

The Approval workflow is a staged approval model; that is, the first set of approvers undergoes the review and approval process, then the next set, and so on.

New Guidance from Microsoft for Packaging and Deploying SharePoint Solutions

Manages document expiration and retention by letting participants decide whether to keep or delete expired documents. The Disposition Approval workflow supports records management processes and is intended for use primarily in a Records Center site. Routes a document that was created in a Microsoft application to a group of people to collect their digital signatures. Participants must complete the signature task by adding their digital signatures to the document in the relevant client program. Designed to track the status of a list item through three states phases. This workflow can be used to manage business processes that require organizations to track a high volume of issues or items, such as customer support issues, sales leads, or project tasks.

The Three-State workflow is so named because it tracks the status of an issue or item through three different states, and through two transitions between the states. Supports the SharePoint publishing infrastructure and is available only on sites that have the publishing features enabled. It is similar to the Approval workflow, with some modifications to fit the publishing context. To follow the guiding principle of implementing a low-cost, low-complexity workflow solution that meets the needs of the process that is being automated, do not overlook SharePoint built-in workflows.

In fact, you should use built-in workflows whenever more detailed customization is not required. These workflows do not require any rich-client tools—they are configured entirely within the web user interface UI.

SharePoint 2010 Workflow Structure, Security Rules, and Automation Features

Also, no IT involvement is required to configure or maintain them. Use two new features in the SharePoint Approval workflow to increase flexibility in your approval processes: Reassignment , which enables approvers to delegate their tasks to another user on-the-fly, and Multiple Assignment Stages , which lets you create multiple steps of serial or parallel approval without manually building the workflow. Consider automatically starting workflows when items are added or edited. Workflows that are manually initiated can be intimidating for users who are unfamiliar with SharePoint and process automation.

This can help improve the visibility and selectability of your workflows. If a built-in workflow is close to, but not exactly, the process you want, you can open certain workflows such as Approval in SharePoint Designer and use them as the basis for custom workflows see Building Visual Studio Workflows later in this article , as shown in Figure 5.

Built-in workflows, especially with enhancements in SharePoint , are very configurable. However, you can do only so much customization by using configuration options alone. Certain common limitations will probably lead you to explore more complex customization options, as shown in Table 2. The workflow proceeds as it was originally designed. Although you can change some details about how the workflow behaves, you cannot control them all. For example, you cannot route approvals to different people based on a condition that depends on information about the item.

For example, you cannot tell a built-in workflow to modify a list item after an approval occurs, or to send a custom-designed email message to a designated person. However, you can use a built-in workflow as a template for a custom workflow. Although workflow templates are available to any sites in your farm on which their features are activated, they must be configured individually on each list, library, or content type to which you associate them.

You decide that the Contoso Coffee recruiting and hiring process can benefit significantly from using the built-in Approval workflow. You browse to your job requisitions list, edit its settings, and add a workflow. Because you want this workflow to apply to all new items, you choose to start the workflow whenever a new item is added to the list, as shown in Figure 6.

The main issues to decide are 1 who the approvers are, and 2 in what order and by what method will they be asked for approval. Here, you have two stages. First, Amy and Andy, the Recruiting Managers, must approve the requisition. This is a parallel approval, because both tasks can occur at once. Similarly, you configure other properties about the workflow, such as due dates and task duration.

After you complete this form, the workflow is ready for use. For more information about adding a built-in workflow, see Using the Workflows in SharePoint This section examines the use of SharePoint Designer for extending and managing workflows. As previously, this section presents a common business process problem and its solution in the context the Contoso Coffee example.

Specifically, it focuses on the features and tools, common scenarios, usage guidance, and constraints that are related to using SharePoint Designer for enhanced workflows. Your Approval workflow for the recruiting and hiring process at Contoso Coffee achieves mixed results. It reduces email volume, but it does not entirely succeed at getting the right people engaged at the right time in the process.

Contoso must route approvals to different people based on the expected salary for the job requisition. In addition, you need to automate the posting of the position within the company by adding it to another SharePoint list that is used to communicate job openings. Finally, you must ensure that email notifications and logs are kept.

All requisitions require approval from the Recruiting Manager and Hiring Manager who is different for each requisition. Several features and tools are provided to help you quickly and easily extend and manage SharePoint workflows. This section discusses five of the most important:. SharePoint enables the concept of the declarative workflow. The term "declarative" means that instead of being written in procedural or object-oriented code, these workflows are declared in an XML schema known as Extensible Application Markup Language which is, for historical reasons, abbreviated XOML in the world of workflow.

Fortunately, SharePoint Designer generates this XOML for you out of predefined building blocks such as events, conditions, and actions and predefined conditional logic that links those blocks together. You can create workflows for a variety of tasks by using available actions. A key differentiating factor among workflows in SharePoint is to which SharePoint object each workflow is associated. Because design is often guided by which kind of item is being operated upon, this property is so critical that it is often useful to think about types of workflows, as follows:.

A common application of a list workflow is to enable a process for approving documents. Content types are a key functionality in SharePoint and are used across the platform for controlling properties and metadata about particular kinds of content. Workflows can be built to accommodate a single content type, or they can be more generic and be associated with a content type within a list or library or with a site content type that can be used across multiple lists.

This feature is especially useful when the workflow implements a process that does not start as a result of a list item or document and must be initiated manually through the SharePoint UI or SharePoint API. It is also helpful if the workflow must monitor actions that occur in several places across the site. Even with no-code development, it can take substantial time and analysis to build workflows. In earlier versions of SharePoint, workflows applied to a single list or library only. In SharePoint , you can create list workflows that have full reusability and exportability.

These reusable workflows do not rely on a specific list but can be associated with any list. Further, the workflow design can be reused and associated with multiple lists. In addition, you can use the Save as Template command to create a SharePoint solution package ,wsp file that contains a reusable workflow; this workflow can be moved to another SharePoint server or to Microsoft Visual Studio SharePoint Designer has several features in common with Microsoft Office applications, including the ribbon UI and editing capabilities. The SharePoint Designer workflow editor can introduce a hierarchical, sequential, and linear view of the workflow that you are creating.

The workflow is broken down into a set of steps, each of which can contain a number of conditions and actions, as shown in Figure 8. By arranging the needed steps, adding actions, and "filling in the blanks" with specifics, you can easily define the logic that makes up your desired workflow. Workflows that use all capabilities available in SharePoint can quickly become complex. Building a workflow that the system can execute successfully requires you to design the flow of the process correctly, and also ensure that all conditional logic makes sense, all parameters are correctly completed, and so on.

SharePoint Designer includes an error checker see Figure 9 that can help locate such errors as you build the workflow, instead of at run time, when real data is at stake. For example, if you have not entered data that a condition or action requires a common omission when looking at a page full of steps , SharePoint Designer highlights the error in context see Figure 10 so that you can easily find and fix it.

After all errors are fixed, clicking Check for Errors shows that the workflow is ready for publishing, as shown in Figure The SharePoint Designer view is a great way to create, edit, and configure workflows, but being able to visually define a workflow and its related information and process flows is often important. Microsoft Visio Premium can simplify the task of creating these workflows without the need for specialized technical resources.

Visio Premium includes a drawing template for SharePoint workflows. The shapes in this drawing template include the workflow building blocks that are available in SharePoint workflows. You drag these shapes onto a drawing and create a flowchart that represents the workflow. Then, the drawing is exported to an interchange file that is brought into SharePoint Designer for configuration and deployment. In addition, if Visio Services a SharePoint Enterprise feature is available, you can use a Visio diagram representation to visualize in-process workflows while they are running, including information about workflow progress and task assignments.

Some business analysts can better design processes visually than hierarchically. In this case, allow the analyst to create the process flow first in Visio and export it to SharePoint Designer to fill in details. This visual capability can help engage the right people in automating business processes. Even if SharePoint Designer is used to build the workflow, you can export the workflow to Visio for documentation and communication.