Home  |   Reports and Articles  |   Online Seminars  |   Donate  |   Blog  |   About Us

Wednesday, July 23, 2008

Putting SharePoint into Action

by Laura S. Quinn

[The always wise and profilic Gavin Clabaugh posted some terrific, detailed thoughts about SharePoint on NTEN's great "NTEN Discuss" discussion list - which he and NTEN were kind enough to let us edit and re-post here. This is the second of two posts - yes, from the same (amazing) discussion list post. You might want to read his overview of SharePoint first. You can read more of Gavin's wisdom at his blog, www.digitaldiner.org]

Here at Mott, we use SharePoint. A lot. It’s an amazing package. But it can be daunting and confusing. To really understand the power and the glory, some information about how SharePoint is structured and how we use it might help.

First off, "lists" are the soul of SharePoint. Lists come in many forms. Document libraries are lists, with documents attached. Calendars are lists of dates, and picture libraries are (you guessed it) lists with pictures attached. In a list, you define many things. You can define metadata or you can just define things like last name, first name, and email address. Lists can have look up fields, multiple choice fields, and calculated fields. I regularly make a field called “Expired” that is calculated – usually it’s a function of the date added plus some arbitrary number like 60. This gives me a date 60 days in the future, and I make things display only as long as [expired] is greater than [today].

If a list is the soul of SharePoint, then "Web Parts" are its heart. Web parts display things – they can display the content of lists; sorted, filtered, and organized the way you want them to look. They can display the same list multiple ways on the same page. Web parts can also be written in .NET for fancy custom things. But you can just as easily create a web part that holds straight HTML, or .ASP for that matter. There are hundreds of web parts – many that come with MOSS/WSS and others that you can download (or buy). You can also hook them straight into lots of free Web Services offerings using SPD. Using Web Services, I have a few that do fancy things: Weather (with graphics), currency rates, stock quotes, etc.

Web parts are, of course, portable. I regularly create one or two at home, and then bring them to work, and drop them on a page where I want them. Any particular page can have multiple web-part zones.

Integration with Office (Office 2007 is best) is terrific – although integration with Outlook calendars is just OK, in my opinion – It depends on what you are looking for. I prefer just embedding my exchange calendars directly on web pages. (it’s a simple web part I built). That way there is no “integration” ... it’s really just a shared exchange calendar on the web page. No muss, no fuss, no kitchen drudgery.

You can also buy web parts and plug-ins. We bought cheap web parts and utilities that will do the following:
  • Draw charts and graphs from database sources and/or sharepoint lists
  • Allow bulk-import (with metadata) of documents/items stored in fileshares
  • Index PDF files (this is free from Adobe but we use one from FoxIt).
  • Automate the importation of documents and pictures, adding appropriate metadata (our scanners read a cover page and add metadata about the document that they read from the cover page)
I also recommend a copy or two of SharePoint Designer. This way you can modify the various page templates (I didn’t like the left navigation area and turned it into a web-part zone). Designer also lets you create “Data View Web Parts – these are parts that can connect to back-end databases to display data in nice formats. SPD (SharePoint Designer) sucks, by the way. Crashes all the time. But, it does let you build some terrific stuff – trust me when I say, if you have data in databases, Data View Web Parts are more fun than a bowl of bobotie.

All in all, at Mott we have the following types of things, all built in SharePoint:

  • Basic Intranet (with functions that display master calendar, roll-up announcements from departments, HR documents, policies, crap like that)
  • Custom pages that display dashboards of our various grantmaking activities, filtered by user or team, including any alerts fired by our grants management software (SQL), and a live feed of any new funding inquiries generated by our web site (filtered by designated program person).
  • The weather (got to have the weather).
  • The usual collection of HR stuff
  • Document repositories that aggregate a wide collection of documents, scanned and created, into a single view that can be filtered and displayed based upon metadata – I have one that gives an ‘all-in-one” view of all documents related to any particular grant, filtered by the grant, the organization, and/or EIN).
  • Custom Infopath libraries that store and/or display, for example, all travel (based upon a travel approval Infopath form) – the display is filtered to show only future travel, with people that are out of the office on the current day high-lighted in red. Form data ties back to an Access database that records actual travel expenses.
  • Custom information feeds that use RSS to populate a feed of all things about us, or about our programs (we’re vain).
  • Custom document libraries that use an automated email news clipping service to first consume the news clips, and then sort and display them by various metadata fields
  • Custom “travel information” pages that pull exchange rates from the web using web services, show current airport delays, etc
  • Custom hotel information that draws on a backend database of the various hotels we regularly use, provide information on their rates, and any corporate rate we might have. (everything is hot linked with web sites, and email addresses, etc)
  • For our investment office.. feeds of everything from Yahoo Finance, to the current market conditions, to our list of this or that stock, complete with charts showing their downward spiral.
We did this all without a consultant, but I have been known to be slightly creative. I sent myself and my staff to school. I have done most of the development myself, or with the assistance of a part-time DBA who has a little Dot Net. Most of it is simply: ponder, point, drag, and click, ponder some more.

I would invite you to take a look at the number of posts I have written on SharePoint, on my blog (http://www.digitaldiner.org/category/sharepoint/). There are a few on building a WSS system on Windows Home Server, there is one on building a “Digital Asset Management” (DAM) system in WSS for holding pictures, and there are two on how to do a quick and dirty “KM” system using SharePoint’s mail-enabled document libraries. We use that to hold all the bits and pieces of flotsam and jetsom we create about how all the computers, and networks, and information systems work here at my humble place of work.

3 Comments:

Anonymous trenton said...

What code did you use for your stock quote web part?

12:46 PM  
Blogger Gavin said...

Hi Trenton,
As with all things SharePoint, there are many paths you might take for stock quotes.

Easy: Use Yahoo
** Create a "badge" with the Yahoo badge wizard and simply paste the generated code into a SharePoint "Content Editor Web Part" (CEWP). The CEWP is magic and lets you do lots of things like this. You can take many of the web 2.0 badges and widgets and just put the code in a CEWP and look like you're a wizard.

Slightly more difficult:
** Read this blog post and tweak some code
Here's a link to a blog post that describes the process AND (better yet) gives some code you can download, tweak a bit, and then import into SharePoint.
http://blumenthalit.net/blog/Lists/Posts/Post.aspx?ID=29

If you're brave, you can take that code and tweak it a bit more in SharePoint Designer so that it will connect to another web part on a page. You can then pass symbols from one part to another. for example, you might have a list of stock symbols, for example, and let people click on them, this will then populate the DVWP part with the appropriate information.

Slightly Tougher:

** Build your own connection using SharePoint Designer, Web Services and a DataView Web Part
(It's not really that tough) Use SharePoint Designer to build a Data View Web Part (DVWP) that uses Web Services to connect to a service that provides stock quotes. I have used http://www.webservicex.net/stockquote.asmx?wsdl It’s apparently free, and will display one quote at a time. There are other Web Services at WebserviceX that you also might find interesting or useful.

Regards
Gavin

2:34 PM  
Blogger Gavin said...

Oops..

forgot the url for the Yahoo badges. Here it is:

http://finance.yahoo.com/badges

2:35 PM  

Post a Comment

<< Home

The Idealware Blog

Thoughts and resources to help nonprofits choose software, from:

Subscribe to This Blog


Recent Posts