Category Archives: SharePoint 2010

Using the My Site and build a social network

I usually don’t blog about other blogposts because it doesn’t add any value, but I’d like to make a exception.
I came across the following article about using the My Site as a business social network. It is basic, but I think makes for a very nice entry point for customers starting out with SharePoint 2010.

SharePoint social – Update your My Site and build a business social network

Filter REST call on SharePoint with DateTime value

As you may know, using the REST API in SharePoint 2010 is a very flexible and powerful way to retrieve data from SharePoint. I love the way I can use the ListData.svc to get data form lists and document libraries. Finding the correct syntax however can sometimes be challenging…

Today, I found myself looking for a way of retrieving items from a calendar list. Getting the calendar items themselves wasn’t a problem, try to filter the items for only the current items (today and greater) was.

After some Googling and several syntax attempts I found out the right way to do it.
Say I only want to  get calendar items that start  on November 23, 2011 or beyond…

http://<servername>/_vti_bin/ListData.svc
/Calendar?$filter=StartTime+ge+datetime'2011-11-23T00:00:00'

Works like a charm…

Update March 27, 2012
Because of the question Michal asked I retested some scenario’s. It turns out you cannot filter on time values. Real bummer 🙁
So:

http://<servername>/_vti_bin/ListData.svc
/Calendar?$filter=StartTime+ge+datetime'2011-11-23T09:00:00'

will filter on dates, greater or equal than 2011-11-23. It will not filter on 09:00, so an event taking place at i.e. 08:00 will be returned in the result set.

Therefore, there is no need to specify the time and you can filter without the time part of the query, like this:

http://<servername>/_vti_bin/ListData.svc
/Calendar?$filter=StartTime+ge+datetime'2011-11-23'

If I’m wrong, please let me know…

 

ULS Viewer stops working

A couple of weeks ago I noticed my ULS Viewer stopped working. It suddenly just stopped reading the logfiles.

Now, because I didn’t have the time to investigate, I resorted to opening the most recent logfile with Notepad++ and try to trace what was happening. It does work (although it’s a ton of text you need to scan for issues) but finally I got fed up working like this and decided to fix the problem.

I tried everything, from different ways to connect to the logfiles to downloading the executable and replacing the old one.

Nothing worked till I saw some vague answer in the Google search results (do you also scan the Google results for answers without opening the pages themselves? :)) about cleaning up the logfile folder.

I quickly removed all the old files (not the current one ’cause that one is locked) and fired up ULS Viewer again. YES, it fixed the problem! Man, did I miss using ULS Viewer…

BTW: if you are working with SharePoint as a developer and don’t know ULS Viewer (I cannot imagine), try it. You’ll love it! http://archive.msdn.microsoft.com/ULSViewer

acc

Data Access with Search and the KeywordQuery API (SPC334)

Great session by Phil Wicklund today about SharePoint Search.

Phil’s session consisted of:

  • Overview of data retrieval with Search
  • Introduction to data retrieval with Search
  • Programming search
  • Topology & capacity considerations

Phil gave a very nice overview of possible ways to aggregate data in SharePoint, accessing data with:

  • SharePoint Object model
  • SPQuery
  • Linq to SharePoint
  • Webservices

Continue reading

Business documents using Word Automation Services and Open XML (SPC349)

Having already seen some of the great sessions Scot Hillier gave in the past, I decided to attend his session on Open XML and Word Automation.

Scot gave us a very interesting look inside a project he did for a company, generating all kinds of documents from several data sources. Generating documents like resumes, company pitches and bid documents, etc.

Scot demonstrated how to create documents from a external database using BCS to get to the data. Using content controls (in MS Word) and Open XML. Continue reading

Developing and getting the most of sandboxed solutions (SPC336)

Mike Ammerlaan held a really great session yesterday about developing sandboxed solutions.

After some initial slides about possible techniques for developing sandboxed solutions, Mike showed a really great looking sandboxed solution for support tickets. And more awesome: it was Metro-styled! Continue reading

Solving Enterprise Search challenges with SP 2010 (SPC392)

Matthew McDermott started off this session with the question: “if metadata is invisible, how do you get it into the search index?”. He then showed us where metadata resided in Word documents (kinda obvious) but also where metadata was in photo’s en acrobat files. A nifty tool to view metadata is IFilterview from http://ifiltershopcom (should be freely available soon).

Matthew then showed us some great ideas and techniques for spicing up the search result pages. There were some fantastic looking images galleries, based on search. Also, a very clever constructed video gallery. Continue reading

Leveraging Project 2010 with Office 365 for Project Management success Starting (SPC242)

The second day of the SharePoint Conference 2011, I decided to attend the session, given by Dux Raymond Sy about Project 2010 and Office365.

Dux is a gifted speaker, so the session got off to a great start. Right off the bat, Dux made an excellent point about the need for a PMIS when running a project.

Every project needs a PMIS to manage:

  • Communication
  • Expectations
  • Planning

If you don’t get this right, you’ll end up in a situation like this:

Continue reading

SPC11: Planning and managing sandboxed solutions (SPC376)

Almost right away, Maurice Prather announced that his session was for IT PRO’s. Now, I’m not an IT PRO kinda guy, but I decided to stay anyway. And I’m glad I did.

Maurice started talking about the SPUSERCODESERVICE. Right away, I was surprised to discover that the Sandbox Service is by default configured to 1 worker process and 1 connection per process. So only 1 user at a time can use a sandboxed solution. Not very usefull…
So, if you’re not aware of this default configuration, and start using sandboxed solutions on your production environment, you’ll get errors in no time at all.

You can look at the configuration in Powershell:

$sandbox = [microsoft.sharepoint.administration.spusercodeservice]::local
$sandbox.tiers

If you haven’t modified the sandbox configuration yet, you will see:
ResourceMaxValue = 2147483647 (resource points)
MaximumWorkerProcess = 1
MaximumConnectionsPerProcess = 1

And then it got even more interesting.

By default, there’s only one tier for the SPUSERCODESERVICE. A tier in this context can be configured to behave in a certain way, depending on the configured values.

So, what you want to do is configure several tiers that control the way sandboxed solutions are controlled.
Based on the metrics and behaviour of the sandbox solution, SharePoint will decide in which tier the solution will be run.

Maurice gave a great example where he configured 3 tiers:

Tier 1: Good solutions
ResourceMaxValue = .05 (resource points)
MaximumWorkerProcess = 2
MaximumConnectionsPerProcess = 10
This tier will be used for ‘good’ solutions that use few resources. 10 users will be able to use this concurrently.

Tier 2: Iffy solutions
ResourceMaxValue = .25 (resource points)
MaximumWorkerProcess = 4
MaximumConnectionsPerProcess = 5
This tier will be used for ‘iffy’ solutions. we will give it some more worker processes and 5 users will be able to use this concurrently.

Tier 3: Bad solutions
ResourceMaxValue = 2147483647 (resource points)
MaximumWorkerProcess = 5
MaximumConnectionsPerProcess = 1
This tier will be used for ‘bad’ solutions. we will give it more worker processes and only 1 user will be able to use this.

When a ‘bad’ solution is run, only 1 user is permitted to use it. When the process is killed by SharePoint, only 1 user suffers.
When a ‘good’ solution is run, 10 users are permitted to use it. The change that this solution will be killed it a lot less, because SharePoint knows by the metrics of the solution that it is a ‘good’ solution.

Good stuff in this session. I have got a much better understanding of how we can configure SharePoint to get our sandbox environment much more stable and responsive. Gladd I stayed the course!