Tuesday, January 15, 2013

Retrieving next 15 Days Due Date Tasks from Tasks List

Real Time Logic Retrieving next 15 Days Due Date Tasks from Tasks List



DateTime str = (DateTime)DateTime.Today.AddDays(15);
            string strNewDate = str.Year + "-" + str.Month + "-" + str.Date.Day;
            SPWeb currentWeb = SPContext.Current.Web;
            SPList lst = currentWeb.Lists["Tasks"];
            SPQuery sQuery = new SPQuery();
            sQuery.Query = "<Where><Geq><FieldRef Name='DueDate' /><Value Type='DateTime'>"+strNewDate+"</Value></Geq></Where><OrderBy><FieldRef Name='DueDate' /></OrderBy>";
            SPListItemCollection myColl = lst.GetItems(sQuery);
            if (myColl.Count > 0)
            {
                dgvTasks.DataSource = myColl.GetDataTable();
                dgvTasks.DataBind();
            }

Programmatically set value to the hyperlink field in SharePoint 2010

I have a created a custom list named "Hyperlink" in a team site. It has the following fields

1. Title - Single Line of text
2. Hyper - Hyperlink

I will add a new item to the custom list "Hyperlink" and set the value for the 'Hyper" field which is of field type Hyperlink.


Hyperlink1.jpg



Steps Involved:

  1. Open Visual Studio 2010 by going Start | All Programs | Microsoft Visual Studio 2010 | Right click on Microsoft Visual Studio 2010 and click on Run as administrator.
  2. Go to File tab, click on New and then click on Project.
  3. In the New Project dialog box, expand the Visual C# node, and then select the Windows node.
  4. In the Templates pane, select Console Application.
  5.  Enter the Name as Hyperlink and then click OK.
  6.  In the solution explorer, right click on the solution and then click on Properties.
  7. Select the Application tab, check whether “.Net Framework 3.5” is selected for Target Framework.
  8. Select the Build tab, check whether “Any CPU” is selected for Platform Target.
  9. Add the following references
     Microsoft.SharePoint 
  1. Add the following namespaces
        using Microsoft.SharePoint;
  1. Replace Program.cs with the following code

 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
using System.IO;

namespace Hyperlink{
    class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("http://serverName:11111/sites/MMS/"))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    SPList list = web.Lists.TryGetList("HyperLink");
                    if (list != null)
                    {
                        SPListItem item = list.Items.Add();
                        SPFieldUrlValue hyper = new SPFieldUrlValue();
                        hyper.Description = "Google";
                        hyper.Url = "http://www.google.com";
                        item["Title"] = "New item";
                        item["Hyper"] = hyper;
                        item.Update();                      
                    }
                }
            }
        }
    }
}




Alernate Method:

 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
using System.IO;

namespace Hyperlink
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("http://serverName:11111/sites/MMS/"))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    SPList list = web.Lists.TryGetList("HyperLink");
                    if (list != null)
                    {
                        SPListItem item = list.Items.Add();                       
                        item["Title"] = "New item";
                        item["Hyper"] = "http://www.google.com, Google";
                        item.Update();                      
                    }
                }
            }
        }
    }
} 

Paging with SpGridView within a User Control

Paging with SpGridView within a User Control



Ascx
<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SgvPagerSampleUserControl.ascx.cs" Inherits="SgvPagerSample.SgvPagerSample.SgvPagerSampleUserControl" %>
<SharePoint:SPGridView ID="sgvPagersample" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField HeaderText="Employee ID" DataField="Title" />
<asp:BoundField HeaderText="Employee Name" DataField="EmpName" />
<asp:BoundField HeaderText="Employee Age" DataField="EmpAge" />
</Columns>
</SharePoint:SPGridView>
Ascx.cs
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using System.Security;
namespace SgvPagerSample.SgvPagerSample
{
    public partial class SgvPagerSampleUserControl : UserControl
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            sgvPagersample.AllowPaging = true;
            sgvPagersample.PageSize = 3;
            sgvPagersample.PagerTemplate = null;
            sgvPagersample.PagerSettings.Mode = (PagerButtons)PagerMode.NextPrev;
            sgvPagersample.PagerSettings.NextPageText = "Next ";
            sgvPagersample.PagerSettings.PreviousPageText = "Previous";
            sgvPagersample.PageIndexChanging += new GridViewPageEventHandler(sgvPagersample_PageIndexChanging);
            if (!IsPostBack)
            {
                BindGridView();
            }
        }
        void sgvPagersample_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            sgvPagersample.PageIndex = e.NewPageIndex;
            BindGridView();
        }
        public void BindGridView()
        {
            SPWeb currentWeb = SPContext.Current.Web;
            SPList lstEmployee = currentWeb.Lists["Employee Details Search"];
            SPQuery sQuery = new SPQuery();
            sQuery.Query = "<OrderBy><FieldRef Name='ID' Ascending='False' /></OrderBy>";
            SPListItemCollection myColl = lstEmployee.GetItems(sQuery);
            if (myColl.Count > 0)
            {
                sgvPagersample.DataSource = myColl.GetDataTable();
                sgvPagersample.DataBind();
            }
        }
    }
}

Paging with SpGridViewPager in SpGridView

Paging with SpGridViewPager in SpGridView


Ascx
<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SgvPagerSampleUserControl.ascx.cs" Inherits="SgvPagerSample.SgvPagerSample.SgvPagerSampleUserControl" %>
<SharePoint:SPGridView ID="sgvPagersample" runat="server" AutoGenerateColumns="false" DataSourceID="objSample" AllowPaging="True" PageSize="3">
<Columns>
<asp:BoundField HeaderText="Employee ID" DataField="Title" />
<asp:BoundField HeaderText="Employee Name" DataField="EmpName" />
<asp:BoundField HeaderText="Employee Age" DataField="EmpAge" />
</Columns>
</SharePoint:SPGridView>
    <asp:ObjectDataSource ID="objSample" runat="server" SelectMethod="BindGridView"></asp:ObjectDataSource>
    <center>
    <SharePoint:SPGridViewPager id="sgvPager" runat="Server" GridViewId="sgvPagersample"></SharePoint:SPGridViewPager>
    </center>
Ascx.cs
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using System.Security;
using System.Data;
namespace SgvPagerSample.SgvPagerSample
{
    public partial class SgvPagerSampleUserControl : UserControl
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            objSample.TypeName = this.GetType().AssemblyQualifiedName;
        }
        public DataTable BindGridView()
        {
            SPWeb currentWeb = SPContext.Current.Web;
            SPList lstEmployee = currentWeb.Lists["Employee Details Search"];
            SPQuery sQuery = new SPQuery();
            sQuery.Query = "<OrderBy><FieldRef Name='ID' Ascending='False' /></OrderBy>";
            SPListItemCollection myColl = lstEmployee.GetItems(sQuery);
            return myColl.GetDataTable();
        }
    }
}

Thursday, August 16, 2012

Replace all the Special Characters in SharePoint


function CorrectStringAsSPData(strValue)
{
    //Replace & symbol
    var givenString = strValue.replace(/&/g, "&amp;");
    //Replace < symbol
    givenString = givenString.replace(/</g, "&lt;");
    //Replace > symbol
    givenString = givenString.replace(/>/g, "&gt;");
    //alert(givenString)
    return givenString;
}



Batch Update for Insert the records into a list

 var query = "<Batch OnError='Continue' RootFolder='" + RootFolder + "' ViewName=''>";

for (var i = 0; i < subCategory.length - 1; i++)
{

 query += "<Method ID='1' Cmd='New'>";
        query += "<Field Name='Title'>" + DocTitle;
        query += "</Field>";
        query += "<Field Name='GrpTitle'>" + GrpTitle;
        query += "</Field>";
        query += "<Field Name='Category'>" + catID;
        query += "</Field>";
        query += "<Field Name='SubCat'>" + subCategory[i];
        query += "</Field>";
        query += "<Field Name='DispOrder'>" + DispOrder;
        query += "</Field>";
        query += "<Field Name='DocID'>" + DocID;
        query += "</Field>";
        query += "<Field Name='DocURL'>" + DocURL;
        query += "</Field>";
        query += "<Field Name='DocDesc'>" + DocDesc;
        query += "</Field>";
        query += "<Field Name='DocType'>" + DocType;
        query += "</Field>";
        query += "</Method>";

}
 query += "</Batch>";
var res = oLists.updateListItems("lstDocOrder", query);