Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have meeting workspace with several meetings. I add a meeting that was in past and its date is before all other meetings. But on default.aspx page, in the left menu, meetings are sorted by IDs, not by date.

Is there any way how to change this?

share|improve this question

2 Answers 2

up vote 2 down vote accepted

This is possible using SharePoint Designer 2010 (I have not tried this using Designer 2007, or on a 2007 SharePoint site).

  • Open the meeting workspace in SharePoint Designer
  • Click 'Edit site home page'
  • Click within the left hand navigation (where the dates are that you want to sort)
  • Click on 'List view options' (a little hover button that will appear when you click the area)
  • Click 'Sort and Group'
  • Add 'EventDate' to the sorting

Done.

Hope this helps!

share|improve this answer
    
OMG! It works! You are my hero! Thank you very much!!! –  jumbo Apr 20 '12 at 19:33
    
You are very welcome :). Although there is a problem with this solution, the above is only possible if there are already meetings assigned to the workspace. If you are trying to sort the meetings for a template, that you will use to create a meeting workspace later, this does not work. I am stuck trying to find a solution to this. –  Mahendran Govender May 8 '12 at 13:12
    
check my answer, it could solve your problem :) –  jumbo Jun 6 '12 at 10:48
    
Hi, I tried the "query" route you suggested, via SharePoint Manager, but it ends up breaking the styling of the dates. Where they would display one date below the other, they now display as a listview, with other columns. I will try adding the orderby in code and will feedback if I get it right. –  Mahendran Govender Aug 29 '12 at 9:45

I found a way how to do this in powershell. You can run this code on the machine where the sharepoint is installed:

$w = get-spweb http://localhost/meetingsWeb
$l = $w.Lists["Meeting Series"]
$v = $l.Views[2] # view for the 'MeetingNavgator' should be third
$q = $v.Query
$v.Query = $q + '<OrderBy><FieldRef Name="EventDate" Ascending="TRUE" /></OrderBy>'
$v.Update()

Note, that the code is prone to error. For example, you shouldn't run it twice, because the OrderBy clause is added in each run, so the query would be wrong then.

Something like this can be easily converted to C# and used in some web event receiver (WebProvisioned).

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.