Monday, March 8, 2010

DocumentCounterWebPart

using System;using System.Runtime.InteropServices;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Serialization;using Microsoft.SharePoint.Administration;using Microsoft.SharePoint;using Microsoft.SharePoint.WebControls;using Microsoft.SharePoint.WebPartPages;using System.Collections.Generic;using System.Data;using System.Web.UI.HtmlControls;using System.Text;namespace DocumentCounter{ [Guid("97c4024e-90cc-43a0-b635-4dced2b5276b")] public class DocumentCounter : Microsoft.SharePoint.WebPartPages.WebPart { int countDocList = 0; int totalItemcount = 0; public DocumentCounter() { this.ExportMode = WebPartExportMode.All; } /// /// Create all your controls here for rendering. /// Try to avoid using the RenderWebPart() method. /// protected override void CreateChildControls() { SPSite rootSite = SPContext.Current.Site; SPWebApplication webApp = rootSite.WebApplication; SPSecurity.RunWithElevatedPrivileges(delegate() { string sTitel, sUrl, sRelUrl; for (int i = 0; i < href="http://dha02202-mosd05:500/orgs/30018526/30002982">http://dha02202-mosd05:500/orgs/30018526/30002982") try { using (SPSite site = webApp.Sites[i]) { //Response.Write(webApp.Sites[i] + "
"); for (int j = 0; j < web =" site.AllWebs[j])" web =" site.AllWebs[j];" isrootweb ="=" lists =" web.Lists;"> 0) { foreach (SPList list in lists) { try { #region Calculate Count & Total //**********DocumentLibrary**********/// if (list.BaseTemplate == SPListTemplateType.DocumentLibrary) { countDocList += list.ItemCount; totalItemcount += 1; } #endregion end start } catch { continue; } finally { site.Dispose(); } } // foreach } //if } } //if root element count //else part { //top level site and subsites URL SPWebCollection sites = web.Webs; foreach (SPWeb subSite in sites) { SPListCollection lists = subSite.Lists; foreach (SPList list in lists) { #region Count & Total try { //**********DocumentLibrary**********/// if (list.BaseTemplate == SPListTemplateType.DocumentLibrary) { countDocList += list.ItemCount; totalItemcount += 1; } subSite.Dispose(); } // try catch { continue; } finally { site.Dispose(); subSite.Dispose(); } #endregion } // for } } web.Dispose(); } sTitel = site.RootWeb.Title; sUrl = site.RootWeb.Url; sRelUrl = site.RootWeb.ServerRelativeUrl; } } // try catch { continue; } } }); base.CreateChildControls(); } protected override void Render(HtmlTextWriter writer) { writer.Write(""); writer.Write(""); base.Render(writer); } }}

No comments:

Post a Comment

Total Documents in ShareK : " + countDocList + "