I'm a ASP.NET developer, and I've never done any SharePoint config or development before, but I've been asked to build a report, and I could do with some advice...

The report is based on a list of issues. An issue has a title, description etc, and up to five action plans, each of which has an owner and a target date (so there are five columns for action plan owner 1-5, and five columns for action plan target date 1-5).

There are two requirements for the report:

  1. it should show issues where the current user owns one of the action plans
  2. issues should be ordered by the dates of the action plans that belong to the user

I've created a view on the list, with a filter showing only items where action plan owner 1 is [Me], or action plan owner 2 is [Me], etc. This works OK, and satisfies the first requirement.

The second requirement seems to be a bit more tricky. From what I can see, the sorting options for a view seem pretty basic - what I really need is to sort by a formula, but the only option seems to be sorting by col a, then col b, etc.

Is it possible to configure more complicated sorting in a view? If it's not, then what are the other options for displaying this kind of data in SharePoint?

  • Which version of SharePoint are you using?
    – CigarDoug
    Commented Jan 24, 2013 at 12:53
  • It's SharePoint 2007 Commented Jan 24, 2013 at 14:38

2 Answers 2


Just an idea without having tested it: create an additioanl calculated column (that can be hidden). For the formula use the min value of your five dates (and maybe is bigger than today). In the view sort by this column in ascending order (and only items where the value of your calculated is higher than [today]).

  • I originally accepted this as my first test just got the minimum date, but it doesn't seem possible to get dates of only action plans that belong to the user. The formula can't have a "Person or Group" column in it. Commented Jan 24, 2013 at 15:10
  • Ok. So I suppose that it is not sufficient to use the Filters of your first report (equals [Me]), because this would give no hint if the minimum date belongs to [Me], right?
    – DarkTomate
    Commented Jan 25, 2013 at 6:39
  • Exactly - it needs to order by something like MIN(IF(ActionPlanOwner1 = [Me], ActionPlanDate1, '31-DEC-9999'), (IF(ActionPlanOwner2 = [Me], ActionPlanDate2, '31-DEC-9999') ...) but I've no idea how to do that with SP Commented Jan 25, 2013 at 9:41
  • 1
    i think there is no ootb solution for your report. some workaround i would think of: 1. create a task for each action plan or 2. display one list for each action plan on one page
    – DarkTomate
    Commented Jan 25, 2013 at 10:50
  • I agree with @DarkTomate that the issue seems to be with your information architecture. Of course I know nothing about your specific requirements, but usually when people start using workarounds like Ownern or Daten it's a bad sign.
    – Christophe
    Commented Jan 27, 2013 at 21:13

You can add complex sorting and grouping to a view using SharePoint Designer!

Take a look at this link: http://office.microsoft.com/en-au/sharepoint-designer-help/customize-data-views-and-forms-using-sharepoint-designer-HA101631678.aspx

This option allows you to "use more advanced sorting than ascending or descending, click Edit Sort Expression. This opens the Advanced Sort dialog box where you can customize the sort order using XPath expressions. Learn more in Advanced List and Data View customizing using XPath expressions." So you can use XPath to create the sorting order you want in the view.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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