Sharepoint 2010. Webparts on layout that gets data from top level site list.


 I have a 2010 sharepoint top level site with multiple subsites.   I have some lists on my top level site that contain such as Upcoming Events and News items.  All my layouts use a webpart that display Upcoming Events and some also display news.  This all works fine for pages created in the Top Level site.  If I try to create a page using a layout  with these webparts in a sub site I get an error telling me the list does not exist.

“List does not exist. The page you selected contains a list that does not exist. It may have been deleted by another user. “

I tried editing the website properties to change the URL of the list but that does not work.  I also tried exporting the webpart at the top level site and importing it into the webpart gallery but that does not work either.

I am using the Content Query Webpart. I also have tired displaying a list view as a webpart as well but to no avail.  It seems like this should be part of building a layout. To display common information stored in one central site on layouts.
I have access to the site with Sharepoint designer as well.

Can I do this without buying a 3rd party product?

Thank you
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

EpistrophyAuthor Commented:
Additional information. The webpart, when placed in a stand alone aspx page in a subiste works fine. It is when the same website is used in a layout, then a page created using the layout, that does not work in a subsite.
Ingeborg Hawighorst (Microsoft MVP / EE MVE)Microsoft MVP ExcelCommented:

Just off the top of my head, because I'm not in front of SharePoint right now:

You say you are using a CQWP. Could you switch to a DVWP instead? DVWPs can easily be integrated into a Page Layout. Initially they will use the current site, but by changing the Select parameters, they can be unlinked and use any source in the site collection.

I have a few DVWPs in my site, one even on the master page. They propagate nicely to sub sites with these settings:

  <SharePoint:SPDataSource runat="server" DataSourceMode="List" UseInternalName="true" UseServerDataFormat="true" selectcommand="&lt;View&amp;gt;&lt;/View&gt;" id="dataformwebpart1">
      <WebPartPages:DataFormParameter Name="ListName" ParameterKey="ListName" PropertyName="ParameterValues" DefaultValue="Announcements"/>
      <WebPartPages:DataFormParameter Name="WebURL" ParameterKey="WebURL" PropertyName="ParameterValues" DefaultValue="/TheSourceSite"/>

Open in new window

The key element is this bit:

      <WebPartPages:DataFormParameter Name="WebURL" ParameterKey="WebURL" PropertyName="ParameterValues" DefaultValue="/TheSourceSite"/>

Open in new window

The query source for CQWP is more complex and I've never tried to embed a  CQWP into a Page Layout. I will give it a try when I'm back in front of SharePoint tomorrow.

cheers, teylyn
EpistrophyAuthor Commented:
I will give the DVWP a try this morning and let you know.

Thank you
Active Protection takes the fight to cryptojacking

While there were several headline-grabbing ransomware attacks during in 2017, another big threat started appearing at the same time that didn’t get the same coverage – illicit cryptomining.

Ingeborg Hawighorst (Microsoft MVP / EE MVE)Microsoft MVP ExcelCommented:
EpistrophyAuthor Commented:
I get the same problem.  Here is what I did.

1) Created a new layout with one webpart zone
2) Added a DVWP using a list in the top level site. (A simple orgainaztion list and I displayed on the Title)
3) Saved my layout.
4) Successfully created a page using the layout in the top level site.
5) Got an error when I  try to create a page with a layout in a subsite.

Here is the error.

List does not exist.

The page you selected contains a list that does not exist.  It may have been deleted by another user.

Troubleshoot issues with Microsoft SharePoint Foundation.

Correlation ID: 2ac83d35-f55d-41dd-bb30-51535e0493b5

Date and Time: 4/12/2012 9:42:57 AM
EpistrophyAuthor Commented:
Trying a different approach....
Ingeborg Hawighorst (Microsoft MVP / EE MVE)Microsoft MVP ExcelCommented:
It does not work right out of the box. You need to edit the DVWP code and set the URL, as described in the link above.
EpistrophyAuthor Commented:
In the link example his subsite that had the data was "marc".  Her eis his operative line.

     <WebPartPages:DataFormParameter Name="WebURL" ParameterKey="WebURL" PropertyName="ParameterValues" DefaultValue="/Marc"/>

In my case it is the site collection root on a development server.  


so should it be this?

     <WebPartPages:DataFormParameter Name="WebURL" ParameterKey="WebURL" PropertyName="ParameterValues" DefaultValue="http://isvspwebprod:19023/"/>

Is that right?

What about when this is moved to a production server? Will this link then break and all my web parts will have to be edited?

Ingeborg Hawighorst (Microsoft MVP / EE MVE)Microsoft MVP ExcelCommented:
You should be able to use just the "/" to point to the root site collection
EpistrophyAuthor Commented:
Ok.   I obtained the webID and pasted in the wepart as mentioned above.

I have been trying to get this to work and I keep getting the page creation error. Finally I built a brand new layout and I got the same error. I then deleted my wepart and the webpart zone.  I added back the webpart without the zone and it works!  I then added back the webpart zone and added the webpart again and I get the error.  

Is there a problem using webpart zones in a layout when you are creating pages in subsites?

the webpart zone code itself is very simple.

 <WebPartPages:WebPartZone id="g_B0B12C0D6C4A47BAA1CF7037EE6CA792" runat="server" title="Zone 1">

I am going to try to build my layouts without zones but I would rather not. I like the webpart zones.

Any ideas?
Ingeborg Hawighorst (Microsoft MVP / EE MVE)Microsoft MVP ExcelCommented:
If you use web part zones, the user will be able to add/remove web parts from the page, even those that originate in the page layout. If you want to protect the web part from deletion or manipulation, then don't put it in a web part zone.
EpistrophyAuthor Commented:
I want the users to edit the webparts. This will be public facing website. When the staff creates pages, they need to be able to filter and edit the webparts to tailor the page to their needs.

 The public user will of course not have permission to edit the pages

It is a top level site with 7 subsites all using the same master page and css.

I am doing some more testing.   So far the zones are the problem. I create a layout from scratch with a zone and a webpart and can't create a page. Without the zone no problem.  My webpart is n existing xsltListView. I am going to try with just a simple DVWP now.

BTW, I was following this approach.

My layouts do not contain DVWPs so I would rather not switch because it would be a ton of work to do so but I may have to if I can get a layout example to work.
EpistrophyAuthor Commented:
I am stumped.  

I can get a webpart to display list information on a subsite when the list is based on the top level site.  But as soon as I put that same webpart in a webpart zone I get a page creation error.

I know its the webpart zone because I can create a page with a working layout and switch it to the layout with the zone and I get this more specifc error.

"One or more web parts on this page references a zone that doesn't exist. It has been moved..."

I tried changing the title of the webpart zone but that does not do anything.   I have looked in the log file but I am at a loss to what is relevant. I see errors and I see what might be apermission issue, "cannot get user profile, no UserProfile",  but I am not sure it is.  I have full admin rights to sharepoint and the server.  I have attached a cut down version of the log file with just the relevant event info.
I am not sure what to do next.
EpistrophyAuthor Commented:
I found the answer in a blog by Chris O'Brien.

Here is the operative phrase.

"This is because if web part zones are used, the web part is associated with the page instance rather than the page layout"

Basically webpart zones can't be used in page layouts when you are trying to pull data from another site. Basically sharepoint does not know how to resolve where the list or webpart are because of the  zone. That is why I kept getting "list does not exist" page creation error when I tried to create a page using a page layout with my webpart that got data from the top level site.   It is never going to work.   I hope Microsoft addresses this in the future.

 What I ended up doing was creating a bunch of filtered webparts and page layouts with those webparts embedded int hem without zones. More work but it got it done.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Ingeborg Hawighorst (Microsoft MVP / EE MVE)Microsoft MVP ExcelCommented:
Thanks for getting back on this. Good detective work and valuable info.

Happy for you to mark your last comment as the solution.

cheers, teylyn
EpistrophyAuthor Commented:
Basically there is no solution to the problem because of a Microsoft SharePoint limitation. Hopefully this will save others the time I spent trying to figure this out.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft SharePoint

From novice to tech pro — start learning today.