views:

222

answers:

2

Our company is split into divisions. These divisions work for client companies and are then further split into account teams that work on projects for a product of the clients.

So the structure goes Division > Clients > Accounts > Projects. And this is mirrored in the setup of our sharepoint installation. At each stage from Division to Account there is a subsite. Access to each subsite is controlled by AD groups and on each subsite there is a 'latest news' announcements list

What we want to do is have a 'wall' of announcements that feeds through so that each user can see on the top-level site all the posts in all of these anouncement lists, but this must be filtered using the AD groups that they are a member of so that confidential information isn't shown to someone who shouldn't see it.

Can anybody think of a way to do this?

+2  A: 

Let's see - are those lists split accross site collection? With what tool you want to accomplish this?

You have several options (if you are within a site collection):

  1. Use Content Query Web Part to aggregate list items. You can customize it to display fields you like the way you like.
  2. You can use SharePoint Designer.
  3. Using Object Model/WebServices: Use SPSiteDataQuery class to query multiple lists at once and then SPGridView to display data.
  4. As you have a MOSS build, you could even use CrossListQueryCache. It's also a cross list query that has builtin caching and audience targeting. Be sure to read this to be sure caching is working.

If you want to aggregate between multiple site collections, then you will need to write code that get's all your SPSite objects and execute SPSiteDataQuery on them.

Maybe you can find out some additional information on Rollup of all Tasks of a Recurring Meeting in SharePoint

Janis Veinbergs
Christ, it's built in! Number one works peachy. Thanks.
wefwfwefwe
A: 

Here is how we are doing it.

  1. Set up a content type for each level of announcement. We have national, state, district and the basic site level announcements. Therefore I have 1 national content type, 10 state content types (because we are in 10 states) and 1 content type for each district. All of these content types inherit from the base Announcement type with no modification.

  2. I added a content query web part. I exported it. I edited the XML in the .webpart file to point to a new custom ItemStyle_Announcements.xsl file I had created. I import the modified .webpart and delete the default Content Query Webpart.

  3. I modify the ItemStyle_Announcements.xsl to create the structure and divs I need for the styling. I add styles to the default style sheet I have already created for my site to get the look and feel I want. (I happend to have two styles for these, one featured/most recent item which is big and full, then a listing the next 10)

  4. I find an announcement list that will possibly post to the national new. I add the content types as needed. Now the end user can choose what scope of announcement they want from the New menu.

This remaining issue is that right now, the States and Districts must have TWO announcement webparts on their home pages. One that lists everything local to that site (regardless of scope) and one that has unit announcements aggregated from the other sites in the same state / district.

MrChrister