I "inherited" a SharePoint 2013 site where someone managed to store relational data roughly as follows: Flight-Plan

  • OUs-List contains information on organizational units.
  • Peoples-List contains people, each referencing (yes, referencing) an OU from the OUs-List
  • Areas-List contains information on areas
  • Destination-List contains information on destination, each referencing (again, yes. Saldly.) an area.
  • Flights is an N-To-M-Relational-Join effectively joining a person to a destination on a given date.

The question is, if (or how) it is possible using OOTB-SP2013 features to display an OU-filterd list of people and for every person the next three flights.

EDIT: What I want to achieve is a visulization of the lists in one list as follows:

| OU      | Person  | Destination 1 | Area 1  | Date 1     | Destination 2 | Area 2  | Date 2     | Destination 3 | Area 3  | Date 3     |
| Finance | Nils    | Hamburg       | Germany | 2015/02/28 | Berlin        | Germany | 2015/03/02 | Hamburg       | Germany | 2015/03/10 |
| HR      | Someone | Hamburg       | Germany | 2015/03/01 | Amsterdam     | NL      | 2015/03/07 | Bilbao        | Spain   | 2015/03/10 |
  • Can you show a prototype of what you want to achieve? Feb 25, 2015 at 8:49
  • 1
    Which tools do you have in your toolbox? You will need to do the joins by code (c# or JavaScript). So, what kind of code can you execute? Can you create a web part?. Can you deploy a WCF web service on to the web farm?. Can you write JavaScript code that calls REST api and dynamically build the HTML? Please elaborate. SharePoint lists are toys if you want to store relational data. But sometimes SharePoint lists is all you have. Feb 25, 2015 at 19:09
  • 1
    Short anwer is: there is no way to accomplish your requirement using SharePoint out of the box tools. You need to write code, a lot of code. But surprisingly, you can achive your requirement with just a wiki page, but with lots of JavaScript code. Feb 25, 2015 at 19:20
  • I liked hamboys answer as much as Jesús' comments. I guess it really depends on the definition of OOTB (with/without JavaScript). I Think I'll go with the WCF service deployed to the farm. Thanks.
    – Nils
    Feb 26, 2015 at 7:09

2 Answers 2


This is possible OOTB. You have several options.

Option 1 - JSOM (JavaScript Object Model). You can load the lists into JS arrays and do any number of joins and manipulations needed. Then a little jQuery magic to display it.

Option 2 - Load the lists in separate webparts. Run some JavaScript to hide the other lists while collecting their data, then update the 'Flights' list with this data (ie replace '1' in the Destination column with 'Germany', etc).

Option 3 - Webpart connections. Not ideal for this setup, and you would end up with the data listed across multiple webparts, but this is one way to avoid JavaScript.

  • I accepted this answer, though I'm still undecided whether to consider JavaScript as OOTB :-) I’ll go with Jesús' comment and create a WCF-service. I think this gives me the most flexibility in working further with the data.
    – Nils
    Feb 26, 2015 at 7:14
  • I won't be offended if Jesús posts his comment as an answer and you switch the accepted answer.
    – hamboy
    Feb 27, 2015 at 3:43

You can't use a linked datasource for this?


With regards, C

  • According to the docs linked datasources should theoretically be able to do what I want - still I have never managed to get my scenario working in a linked datasource. Additionally I need a deployable solution and I have not yet found docs on how to deploy a linked datasource (or create one without SPD, for that matter)
    – Nils
    Feb 27, 2015 at 7:59
  • SPD is just a front end for ASP.NET page edits. You should be able to package the page into a WSP and deploy it as a module if you really want to make it a deployable solution. I would definitely give it a try. Feb 27, 2015 at 8:30

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.