Friday, April 24, 2009

jQuery - Content Management Web Part

One of the most common requests that we have for SharePoint is the ability to make content management on a site easier and more intuitive. After seeing the potential of jQuery with SharePoint we decided to see how we could improve SharePoint content management using jQuery. What we came up with is the Content Management Web Part.

Using jQuery, icons are added above each web part on a page which give contributors to the site easy access to each web part’s properties, source and rich text editor.

Content can now be modified in one click instead of five.

image
When the pencil icon is clicked the Rich Text Editor is immediately opened.
image
When the edit icon is clicked the web part’s properties dialog is opened.
image
The video below shows the Content Management Web Part in action.
Download the Content Management Web Part (No Longer Available)
  • The content management web part consists of jQuery added to a Content Editor web part, therefore it can be uploaded to your site through the site settings page.

  • The web part currently references Google’s jQuery file. When used in a production environment this should be changed using the instruction in my previous post.

  • With this edition anyone who has the "Site Settings" link has edit authority. For a more robust roles-based solution, please contact us.

Monday, April 13, 2009

Collecting SharePoint-based Data with Forms

So you have been tasked with finding the best solution for collecting data from end users and storing it on SharePoint. Sounds like a simple task at first, but there are so many options…and how do you know which one is right for your organization? Last week, at April’s Evansville SharePoint Users Group meeting I delivered a presentation titled “Go Green with SharePoint: Gather Data Electronically.” I demonstrated several approaches for collecting data for a SharePoint site using various types of forms. I was somewhat surprised by which approach seemed to be the most intriguing to the audience – forms in Microsoft Word 2007. Let me walk you through the approaches.


First, I must say that the ideal approach for gathering forms data for SharePoint is InfoPath 2007. If you have it, make it your first choice. This is what it was created for. There is much debate over whether InfoPath is a power-user tool, developer tool or information worker tool. I think it is simply a tool for people with an aptitude for developing InfoPath forms and who have been empowered to do so. I am not going to get into licensing or how to create InfoPath forms, but suffice it to say that an organization can accomplish much in the way of data collection and workflows with InfoPath and SharePoint Designer. Learn more about it at http://office.microsoft.com/en-us/infopath/FX100487661033.aspx.


So what if you do not have InfoPath and it is definitely not an option for your organization? Here is a list of some approaches ranging from out-of-the-box SharePoint to custom-written forms integrated with SharePoint:



  • Built-in list forms When you create a new list in SharePoint, forms are created for you for adding, editing, viewing and listing items in the list. These forms are customizable using SharePoint Designer.

  • Surveys - SharePoint contains a simple wizard for creating surveys. One of the great features is that you can include/exclude questions based on the response to previous questions. Another benefit is that if the survey is not anonymous, then you can limit the responses to one per person. Just as with other SharePoint lists, the results may be downloaded to Excel and the forms may be customized using SharePoint Designer. A common customization is to show a “Thank you” message once the survey is completed rather than showing the overall survey results.

  • DataForms – I have done a series of posts on Data Forms in SharePoint Designer, so I will be brief. This approach is where we start to move more from the out-of-the-box options to the custom options. A couple of benefits are that you do not have to be a programmer per se and you can save the results to various data stores in addition to SharePoint lists.

  • Word 2007 - Many people know that you can create a form in Microsoft Word, but what you may not have known is that you can save that data directly to a SharePoint list. Here is an older blog post by the Office team to get you started. If you want more details, please leave a comment asking for more details and I will dedicate an entire post to this topic.

  • Access 2007 – If you have used linked tables in Access, then this one will seem familiar to you. SharePoint lists can be linked to Access as linked tables so they work seamlessly with Access forms, queries, reports and even email forms (new in Access 2007). Again, if you would like to see an entire post dedicated to this topic, please leave a comment.

  • Excel 2007 – Just as SharePoint lists can be exported to Excel spreadsheets, SharePoint list data can be imported from Excel spreadsheets.

  • Outlook 2007 - Outlook can display email-enabled InfoPath forms.

  • Custom .NET Webforms – Custom ASP.NET Webforms can be written using Visual Studio to read from and write to SharePoint lists. At Keller Schroeder, we have written custom SharePoint forms in ASP.NET using AJAX and Silverlight to enhance the user experience. While this provides the ultimate flexibility and user experience, it is completely custom and requires .NET web programming skills.


Each of these approaches has a place and no two organizations are the same. I would enjoy hearing about alternative approaches you may have used to collect SharePoint data.