Tuesday, October 14, 2008

SharePoint Governance

Article:

http://www.codeplex.com/governance

http://www.codeplex.com/spg




Securing SharePoint

Article:

Code Access Security for SharePoint WebParts
http://msdn.microsoft.com/en-us/library/bb530301.aspx

Monday, October 13, 2008

SharePoint integration with other Office products

Article:
Building a KPI List using Excel in Sharepoint
Publishing PowerPoint slides to Sharepoint
Creating a Pivot Table in Sharepoint
Publishing a Blog from Word 2007 into Sharepoint
The importance of Outlook 2007 as a user interface into Sharepoint
Migrating an Access 2007 Database to Sharepoint

SharePoint Reports

SharePoint Usage Reports
http://www.thesanitypoint.com/archive/2008/10/12/finding-buried-treasure-built-in-usage-reports-in-sharepoint-and-search-server.aspx

SharePoint Audit Reports
http://grounding.co.za/blogs/neil/archive/2008/04/09/auditing-and-audit-reports-in-a-sharepoint-site-collection.aspx

List Size Reporting
http://msmvps.com/blogs/shane/archive/2008/06/20/list-size-reporting.aspx

SharePoint Search Reports

Sunday, October 12, 2008

Caching in WebParts

Scenario:
You want to use caching in webpart

Solution:
Webpart is just like any other WebControl and can use caching object.

Code:

using System; 
using System.Collections.Generic;
using System.Text;
using System.Web.UI;
using Microsoft.SharePoint;
using System.Web;

namespace TrainingSamples {

public class SimpleCache: System.Web.UI.WebControls.WebParts.WebPart {

protected override void Render (System.Web.UI.HtmlTextWriter writer) {

base.Render (writer);

List<SPList> lists = new List<SPList>();
string status = "";

if (HttpRuntime.Cache["SimpleSampleCache"] == null)
{
status = "The following items are NOT <strong> </ strong> fetched from the cache <br/>";

SPWeb web = SPContext.Current.Web;
foreach(SPList list in web.Lists)
{
lists.Add (list);
}

HttpRuntime.Cache.Add( "SimpleSampleCache" lists, null DateTime.MaxValue, TimeSpan.FromMinutes(10), System.Web.Caching.CacheItemPriority.Default, null);
}
else
{
status = "The following items ARE <strong> </ strong> fetched from the cache! <br/>";
list = (List<SPList>) HttpRuntime.Cache["SimpleSampleCache"];
}

writer.Write (status);

foreach (l in SPList lists)
{
writer.WriteLine (l.Title + "-" + + l.ItemCount "items <br/>");
}
}
)
)
Note:
Another best practice is consider loading the data from SharePoint objects into a DataSet or DataTable if caching is required.
Article:
http://blogs.msdn.com/modonovan/archive/2005/04/27/412505.aspx

Deliver SharePoint ( Some Tips )

Article:

Eleven ways to make your SharePoint implementation more user-friendly
http://amatterofdegree.typepad.com/a_matter_of_degree/2008/06/eleven-ways-to.html

Best Practices: Using Disposable Windows SharePoint Services Objects
http://msdn.microsoft.com/en-us/library/aa973248.aspx

http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx

http://blogs.msdn.com/sowmyancs/archive/2008/10/26/best-practices-sharepoint-object-model-for-performance-tuning.aspx

Thursday, October 9, 2008

Graphs in SharePoint

Scenario:
You want to have some basic graphs within SharePoint

Solution:
You can use JavaScript , CSS and XSLT

Article:
http://nicholascook.net/demos/graph/ ( JavaScript and CSS )
http://blogs.msdn.com/sharepointdesigner/archive/2008/07/18/dataviews-visifire-silverlight-charting-power.aspx ( JavaScript and VisiFire )
http://blogs.msdn.com/sharepointdesigner/archive/2008/06/27/css-style-bar-graphs-using-data-views.aspx ( XSLT )