Friday, October 1, 2010

Configure Item Level Permissions for Document Libraries

Every once in a while your customer might ask you to customize permissions for a document library in such a way that authors can only change their own documents. There was no such feature for document libraries in SharePoint 2007, and the “problem” is still present in v2010. (Both versions support automatic item-level permissions OOTB for other lists like Tasks).

In this article we will examine how you can create a workflow that will customize item permissions for each document submitted to a document library (only the Author will have contribute permissions). These SharePoint Designer 2010 workflow activities can also be used in various workflow scenarios where permissions need to be revoked after an item is submitted (e.g. Annual Leave Requests, various approvals etc.).

Here is what you need to do:
- Create a new Document Library (e.g. Top Secret Documents)

- Go to Document Library Settings > Permissions for this document library

- Click on the Stop Inheriting Permissions command from the ribbon

- Revoke permissions for all but a few important groups (e.g. Portal Owners and Portal Members).
Please note: Steps 2. – 4- are optional but the workflow is going to be much simpler if there are fewer permissions to manage

- Open your site in SharePoint Designer, and select theWorkflows option and your list from the ribbon

- Type the name for the new workflow (e.g. Customize Permissions)
Insert a new Impersonation Step. This special step runs each activity as workflow author.

- Make sure the workflow author (you) has proper privileges to manage permissions for this list.

- From the list of workflow actions choose “Replace Item Permissions

- Click Replace these permissions

- In the dialog click Add

- In the Choose permission to grant dialog click Contribute, and then click the Choose… button

- Add User who created current item to the Selected users list

- Click the workflow name (e.g. “Customize Permissions”) to manage workflow settings

- Make sure you have selected the correct Start options

- Publish your workflow

Once a user adds a document to a document library this workflow will revoke permission from other users and grant contribute permissions to the document author.

Friday, September 24, 2010

Vision and Reality of SharePoint 2010

The Six Pillars of SharePoint, New and Old

Microsoft has released several generations of SharePoint, but you only need to be concerned with SharePoint 2007, which has been around for roughly 3 years now, and SharePoint 2010, which was officially released in May 2010.

In the pie diagrams below you see that Microsoft divided both SharePoint 2007 and 2010 into 6 different core functional areas, and that these core concepts have evolved from the 2007 to the 2010 version.



SharePoint 2010: An Ambitious Enterprise Platform

1. Sites: Building and Managing Internal and External Websites

The 2010 release does bring a number of WCM improvements:

- A more intuitive content authoring/editing experience, with a similar look and
feel to MS Office
- Better support for websites that need to be available in multiple languages
- Better organizing and categorizing of content
- Compliance with Web Standards like XHTML and WCAG 2.0 AA to ensure a wider range
of users and devices can view your website
- Improved search, particularly via FAST Search, including more relevant results and
more ways to view the results
- Integration of Web Analytics to see how your website is performing
- Personalization via Audience targeting
- Cross browser Support — view your site on most of the popular browsers today

2. Communities: Creating a Social Collaboration Environment

SharePoint 2010 works towards this goal by supporting:

- The ability to create detailed user profiles (think employee Facebook pages)
- Use of modern tools for sharing and collaboration including blogs, wikis, RSS feeds and activity streams
- The creation of special interest groups (Communities) to share knowledge or work on projects (these often map directly to your company's org chart)
- Interactivity and engagement via commenting and discussions around content items, and social tagging/bookmarking of content
- The creation of separate personal spaces or dashboards called MySites where you can keep track of your own content, and the work you are doing in certain communities, projects and more

3. Content: Managing Your Documents, Information and Records

SharePoint 2010 provides the tools to help you work with both:

- Manage all of your organization's documents and other information including controlling who can read and update them
- Categorize them for easier search and retrieval
- Mark them as official records and lock them down from further changes


4. Search: The Google for Your Organization's Private Info

SharePoint 2010 has two levels of search: the built in functionality which is greatly improved from SharePoint 2007 and FAST Search, offering additional functionality. Out of the box SharePoint search includes the ability to:

- Search for information and people, including particular expertise
- Index content and data stored outside of your SharePoint database
- Use your Windows 7 desktop search to find information within SharePoint
- Refine search results based on taxonomy and metadata (how content is organized and classified)

The addition of FAST Search brings enhancements, including:

- View thumbnails and previews of content within the result set
- Refine results based on user profile or audience
- The ability to refine search results with filters like Site, Author, Result Type and more


5. Insights: Digging for Business Intelligence

key goal in any business is staying ahead of the competition. Increasingly, the class of software called Business Intelligence plays an important role here. Business intelligence software is all about helping you make decisions and find problems.

There was a time when you needed a special role in your organization for someone to do all this data gathering and analysis. But times have changed and SharePoint 2010 provides a number of tools that put this capability in the hands of the average employee.

With this release you can:

- Use tools like Excel to gather and analyze data that is stored in SharePoint
- Use SharePoint's native Excel Services engine to crunch data and build web-based reports
- Pull together information from different systems and present it in SharePoint
- Create dashboards, scorecards, and other views — making key performance indicators widely accessible to information workers and process managers

6. Composites: Integrating Your Business Systems

Another big improvement for SharePoint 2010 relates to its ability talk to — pushing and pulling data — your other business systems. Instead of having to work in multiple systems, you can create composite applications — mashups, if you like that term — on the SharePoint platform that pull together various data and content from different systems, including SharePoint content, to provide a single location for an employee to work.

Data integrations are key for management dashboards and project management, but also for employees who may not need full access to the business application. It's important to note that SharePoint 2010 can both view and update external data via its Business Connectivity Services (BCS).

Saturday, September 4, 2010

Business Connectivity Services (BCS) in SharePoint 2010

Business Connectivity Services (BCS) are the upgraded version of Business Data Catalog from SharePoint Server 2007. BCS allow you to connect your SharePoint based content with external data (often called LOB Data – Line Of Business Data). With this powerful functionality you can read the data from external sources and edit them directly from SharePoint sites or web parts. BCS is also fully integrated with the Office 2010.

The standout feature of BCS is the SharePoint Search capability – now you can take your relational databases with plain unformatted data and present them in a SharePoint farm using powerful Search capabilities, social tagging and all the new features that ship with SharePoint 2010. There is also one very important improvement since 2007 – BCS is available even in the free version of SharePoint Foundation 2010, previously it was not available in WSS 3.0.

In this article I will discuss the overall BCS model and demonstrate the configuration of a connection with BCS in a SharePoint Server 2010 farm.

Business Connectivity Services (BCS) Administration

BCS Services are administered using the Business Data Connectivity Service (BDC). If the BDC shortcut is familiar to you from SharePoint 2007, you should note that BDC no longer means “Business Data Catalog”. BDC is now the service that lets you manage BCS services configuration.

Using the BDC, you can manage external content types (sets of fields from other business applications), external systems (such as SQL Server databases, third party applications, etc) and BDC models (in XML format).

Business Connectivity Services supports two types of XML definitions (similar to those from BDC in SharePoint 2007) – application models and resource files. Application models contains the XML definitions of the external content types. Resource files describe imported or exported properties, permissions or localized names.

If you are familiar with the previous BDC model, you may expect that to setup BCS you will need to create complex XML definitions using Visual Studio. Of course, you still can, but now there is simpler way, since SharePoint Designer 2010 let you do the job with only few mouse clicks.

Before we actually start some configuration, we will quickly examine BCS’s functionality and overall model.

External Data Sources

Business Connectivity Services can connect to the following types of external data:

- SQL Server Databases
- SAP Applications
- Web Services – including Windows Communication Foundation (WCF) Web Services
- SharePoint based web sites
- Third party applications

Business Connectivity Services Architecture:

- BDC Service – stores and secures external content types.
- Secure Store Service – securely stores credentials for external systems and manages the associations with the internal/SharePoint based identities.
- BDC Server Runtime – uses the BDC data on front-end SharePoint servers to access/execute operations on the external systems for web browsers and other thin clients.
- BDC Client Runtime – uses the BCS Service and Secure Store Service to access/execute BCS operations on external systems from within the client environment.
- Metadata Cache – provides caching of the BCS Service data. The cache can be optionally encrypted.

BCS Configuration Walkthrough

In the following scenario, I will connect the BDC service to a SQL Server Database that I created. To follow this walkthrough, you will need:

- SQL Server Management Studio (to view the tables and to set the database security for BDC).
- SharePoint Designer 2010 (to configure the BCS connections).
- SharePoint Server 2010 fully operational.

First, let’s take a look at the example database in SQL Server. I created table Clients in the exampledb database, which now contains some data that I want to show within SharePoint sites.








Clients Table that will be used as the external source

Launch SharePoint Designer 2010 and open the SharePoint site (which is http://sps2010 in this example).
























SharePoint Designer 2010 with the intranet site opened ( http://sps2010 ).

Click the External Content Types option in the navigation pane.



















Navigation Pane with “External Content Types” option selected

In the new tab that opens, click on the External Content Type icon. This will create the new External Content Type that we will use to connect with our SQL Server database.








BCS Ribbon in the SharePoint Designer

Click on the Name field and modify the Content type name and Display Name. I have called it My Clients since it will connect with the client list.






















SharePoint Designer 2010 External Content Type configuration window

Now, to create external connection and define the operations for the BDC service, click on the blue link on the bottom of the ECT configuration window (Click here to discover external data sources and define operations).

Click the Add Connection button and specify the Data Source Type (in our scenario it will be SQL Server).








External Data Source Selection

Next, you need to provide the actual SQL Server connection details in the below window.






















SQL Server Connection settings

Now the SharePoint Designer will validate the connection and you will be shown the results.






















SharePoint Designer 2010 connected to the External Content Type – SQL Database

Next, right click on the clients table and select the Create All Operations option from the menu. This operation will launch the Wizard that for creating all the required operations. In our case, we will have create, read, update, delete and query data operations for our external connection source.

































SQL "Clients" table menu in SharePoint Designer 2010

























Parameters Configuration wizard within the SharePoint Designer 2010

In this demonstration we will accept the default settings, which will actually get all the table information (which is fine since we don’t have lot of data ). The only one step we need to do is to specify the identifier. This is the unique table column that will be different for every field in the database. In our case, the unique identifier will be the Company name, so we only have to check the box next to the Map to Identifier and click the Next button on the bottom.

On the next wizard screen, click Finish. If your configuration was successful, you should see the information in the External Content type window as in the screenshot below.












External Content Type status

Now from the SharePoint Designer ribbon, select Create Lists & Form icon to create our list that will be using the external connection.

External Content Types ribbon in SharePoint Designer

Next we need to specify the List name, read item operation, system instance and List description (optional).












Create new BCS List window

That’s it! Our list is ready and is already deployed on the SharePoint site. Now let’s take a look at the result directly on the SharePoint site.























SQL Database viewed within the SharePoint list using Business Connectivity Services

Note that you can actually edit, delete and create new table fields within the external database and you don’t have to use a single line of code. All you need is the SharePoint Designer and a few mouse clicks.
























Adding new item to the database from within the SharePoint site

Tuesday, August 31, 2010

New Features in SharePoint 2010

Here are ten of the most important things about the SharePoint 2010.

1. Enhanced SharePoint Designer—Microsoft SharePoint Designer 2010 sports a new UI, improved workflow, and improved integration between designers. Although there were doubts about the Office 2007 ribbon-style interface when it was first released, Microsoft has been steadily putting the ribbon UI in many of its products, including SharePoint 2010. The new designer also has a tabbed interface and provides breadcrumb navigation.

2. New browser support—SharePoint 2010 supports an extended set of browsers. It's designed to support XHTML 1.0–compliant browsers and will support Internet Explorer (IE) 8.0 and IE 7.0, Firefox, and Safari. Notably, IE 6.0 isn't supported. So far, there's been no official mention of Google Chrome or Opera.

3. Enhanced collaboration features—SharePoint 2010 supports tagging content as well as providing enhanced blog authoring capabilities. There's a new group authentication feature that's based on distribution list or organization and a new rich text editor for creating wikis. In addition, calendars from Microsoft Exchange Server can be merged with SharePoint calendars.

4. Visio Services—Visio Services in SharePoint 2010 lets users share and collaborate on Visio diagrams. A built-in viewer lets SharePoint users view Visio files in their browser without having Visio installed on their system. Visio Services also retrieves and renders any external data used in the Visio diagrams.

5. Usage reporting and logging—SharePoint 2010 includes a new database designed to support usage reporting and logging. The usage database is extensible, allowing third-party vendors to create custom reports based on the information it contains.

6. FAST Search—The new SharePoint release will incorporate the FAST Search technology that Microsoft acquired from the Norway-based Fast Search & Transfer company. The FAST technology provides a superset of the original SharePoint search capabilities. As its name implies, FAST Search is designed for high-end scalability. It supports a number of enhanced capabilities, including a content-processing pipeline, metadata extraction, visual search, and advanced linguistics.

7. SharePoint Best Practices Analyzer—With the SharePoint 2010 release, SharePoint Best Practices Analyzer will be incorporated as part of the base SharePoint product. This tool provides Microsoft's guidance for SharePoint implementation and troubleshooting. A Problems and Solutions page in the analyzer helps you solve common implementation problems.

8. New software requirements—In addition to new hardware requirements, SharePoint 2010 will require an x64 edition of either Windows Server 2008 or Server 2008 R2. It also requires a 64-bit version of Microsoft SQL Server 2008 or SQL Server 2005.

9. New hardware requirements—Like the majority of new Microsoft servers, SharePoint 2010 will ship only as a 64-bit product. If you're deploying SharePoint on new hardware, this situation shouldn't be a problem, but it's definitely a consideration if you're planning to upgrade an existing SharePoint server.

10. New SharePoint editions—In an effort to better unify the SharePoint lineup, Microsoft will make some big changes to the SharePoint editions with the 2010 release. Windows SharePoint Server (WSS) is gone, and so is Microsoft Office SharePoint Server (MOSS). The free WSS has been replaced by the new SharePoint Foundation 2010. MOSS is replaced by SharePoint Server 2010, which will be available in either the Standard or Enterprise edition as well as in editions for strictly internal sites and for Internet or extranet sites.

Thursday, May 27, 2010

Preliminary System Requirements for SharePoint 2010

Here are the very important points.

1.SharePoint Server 2010 will be 64-bit only.
2.SharePoint Server 2010 will require 64-bit Windows Server 2008 or 64-bit Windows Server 2008 R2.
3.SharePoint Server 2010 will require 64-bit SQL Server 2008 or 64-bit SQL Server 2005.

In addition to the requirements listed above we also wanted to share with you some preliminary detail about SharePoint Server 2010 browser compatibility.

To ensure the best possible experience across multiple browsers we’re focusing our SharePoint 2010 engineering efforts on targeting standards based browsers (XHTML 1.0 compliant) including Internet Explorer 7, Internet Explorer 8 and Firefox 3.x. running on Windows Operating Systems. In addition we’re planning on an increased level of compatibility with Firefox 3.x and Safari 3.x on non-Windows Operating Systems. Due to this focus Internet Explorer 6 will not be a supported browser for SharePoint Server 2010.