Tuesday, November 30, 2010

How to change Page Layout of existing page in SharePoint?

Recently a task was assigned to me to make sure that dev site should look like production one. First thing i noticed when i comparing two sites is both pages using different page layouts. so the question is how do you change the page layout which associated with your current page?

It is really simple once you know where to look.

  1. Go to the Page which you want to change. In my case i need to change my home page. so i browse http://mysite/home.aspx
  2. Click Site Actions and then select Edit Page option.
  3. On the toolbar, Click on Page and then select Page Settings
    image
  4. Now you can pick your page layout
  5. Click OK once you done with your changes

 

Thursday, August 19, 2010

SharePoint List Template Id’s

Following table shows the default list template and its Id’s.

 

100    Generic list
101    Document library
102    Survey
103    Links list
104    Announcements list
105    Contacts list
106    Events list
107    Tasks list
108    Discussion board
109    Picture library
110    Data sources
111    Site template gallery
112    User Information list
113    Web Part gallery
114    List template gallery
115    XML Form library
116    Master pages gallery
117    No-Code Workflows
118    Custom Workflow Process
119    Wiki Page library
120    Custom grid for a list
130    Data Connection library
140    Workflow History
150    Gantt Tasks list
200    Meeting Series list
201    Meeting Agenda list
202    Meeting Attendees list
204    Meeting Decisions list
207    Meeting Objectives list
210    Meeting text box
211    Meeting Things To Bring list
212    Meeting Workspace Pages list
300    Portal Sites list
301    Blog Posts list
302    Blog Comments list
303    Blog Categories list
1100   Issue tracking
1200   Administrator tasks list
2002   Personal document library
2003   Private document library

How to find the template name of SharePoint site?

When you look into any SharePoint site which was created by someone, first question you get is, Which template they used to create the site? It is very difficult to tell by looking at the site.

I used following approaches to find template names/ids

Approach 1: Save the site as a template

  1. Go to Site template Gallery and download the save the template to your desktop
  2. Rename the template extension from .stp to .cab.
  3. Extract .cab file contents. (I normally use WINRAR)
  4. open the manifest.xml file.
  5. Search for TemplateID and Configuration.

 

ID 0 = Global, Configuration 0 = Global Template
ID 1 = STS or SharePoint Team Site, Config  0 = Team Site
ID 1, Config 1 = Blank Site
ID 1, Config 2 = Document Workspace
ID 2 = MPS, or Meeting Place Sites, Config 0 = Basic Meeting Workspace
ID 2, Config 1 = Blank Meeting Workspace
ID 2, Config 2 = Decision Meeting Workspace
ID 2, Config 3 = Social Meeting Workspace
ID 2, Config 4 = Multipage Meeting Workspace
ID 3 = Centraladmin, config 0 - Central Admin Site
ID 4 = WIKI, Config 0 = Wiki site
ID 5, Config 0 = Blog

Any ID over 10000 is custom.

If ID is 75800 range, it might be additional Microsoft applications and templates. You can Check here.

Approach 2: Using custom ASPX page

http://blog.rafelo.com/2008/05/determining-site-template-used-on.html

Thursday, August 12, 2010

Redirect a SharePoint Site/Page to another Site/Page using Content Editor Web Part

Redirecting the user from one site/page to another site/page is most common scenario.

You might have several reasons for this like Site Move from one location to another or Point Staging to Production etc..,

 

For whatever reason, you can achieve this functionality easily using Content Editor WebPart.

 

Copy and paste the following code into your Custom Editor WebPart

 

<script language=”JavaScript”>

alert(“The site has been moved to a new location and will automatically redirect to the location.  Please update your bookmarks accordingly."”);

</script>

<meta http-equiv=”refresh” content=”0;url=http://[YOUR NEW LOCATION]”>

 

Once you save these changes, you are not able to modify any thing on this page since it is redirect to new location.

If in case you want to remove this webpart, the workaround is, you have to go through webpart maintenance page.

 

Copy the following code in Browser Address and make changes accordingly

http://[SERVERNAME]/_layouts/spcontnt.aspx?pageview=shared&url=[Your WebPart Page URL] (For Example: /FirmCalendar/pages/default.aspx)

image

Select the checkbox which you want to close, and click close button

image

 

 

To enable the closed WebParts follow these steps

1. Go To Site Actions –> Edit Page

2. Click on any Add WebParts

image

3. Click on “Advanced WebPart Gallery and Options

image

4. Click on Closed Web Parts link

image

5. Drag and drop the Content Editor WebPart Where ever you want.

 

Hope this helps some one.

Saturday, July 31, 2010

No more SSPs in SharePoint 2010

Yes there are no more Shared Service Providers (SSPs) in SharePoint 2010. This is One of the most interesting and powerful thing in SharePoint 2010. For users who are not familiar with SSPs in SharePoint 2007, you can read my previous post here.

What’s wrong with SSPs?

SSPs were vary handy in SharePoint 2007. They allowed us to share different services like profiles, audiences, search, Excel Services and BDC with different web applications. The problem is if we want to use same search service across multiple web applications but we want to have a totally different profile or BDC configuration. To achieve this functionality, the only option we have is to create a new SSP and duplicate the search service configuration/settings. In feature if we want to make any changes to search service, we have to do it in two places and It’s a hassle.

Some of the major problems with SSPs,

  • SSPs are not built on Core services (WSS) and it built on SharePoint Server.
  • SSPs are non extensible other than Microsoft SharePoint Team.
  • SSPs are tied to a single farm. Technically Shared-farm SSPs are possible, but it tricky.

image

What’s the new approach?

In SharePoint 2010 Shared Service Provides(SSPs) are replaced by Service Applications. So what ever services existed in SSPs are still exist but have been unboxed and don’t have dependencies to each other. In the new version, there are over 20 service applications built using the service application framework. All of these service applications can run independently and each service has its own database (that’s why you see many databases in SQL Server compare to SharePoint 2007). If we want, we can also built our own service application (its is a very advance topic you can find a nice video here), it’s that much flexible.

Since each service run independently,the new service application framework removes the restriction, which says, “a web application could only be associated with a single SSP”. Now web applications can consume services on a individual basis and can use any combination of the available service applications.

 

image

If one of the service has high demand, we can easily scaled out across farms.

image

 

 

Summary

  • Web application can be configured to only use a subset of deployed services.
  • You can deploy multiple instances of the same service in a farm by giving the new service instances unique names.
  • You can also share services across multiple web application.
Tuesday, July 13, 2010

IE6 Tooltip for Select element workaround

In my project, we have a requirement to show huge list of data in a select element. Some of these data has long names to show but the restriction what we have is, Select element has to be in a fixed width to fit it in our UI. So to accomplish the requirement we have the following options

Option 1: Show Horizontal and vertical scroll bars so that user scrolls to see the full name.

Option 2: Show full name in a tooltip on mouse over.

 

Option 1 is not a good choice to me since it has scroll bars which spoils UI look and feel. Even though i tried this option and later i found that Select element won’t have any horizontal scroll bar by default in IE6 (Bug). Later i found that they have workaround to achieve this functionality.

 

 

I googled lot for option 2 and found couple of solutions, but it worked partially. so i made the couple of changes to fit my needs. Following is the code i used for IE6 tooltip.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>IE6 Hack to enable tooltips on select elements</title>
<script>

function showIE6Tooltip(obj, e)
{
        if (!e)
        {
            e = window.event;
        }     

        var eX = e.offsetX ? e.offsetX : e.layerX;
        var eY = e.offsetY ? e.offsetY : e.layerY;
        var maxOptionCount = obj.options.length;

        var listItemHeight = (obj.clientHeight / obj.size); 
        var itemsAtTheTop =  Math.floor(obj.scrollTop / listItemHeight);              
        var hoverOptionIndex =  Math.floor(eY / listItemHeight);     

        //the index of mouseover
        var toolTipIndex = Math.floor(hoverOptionIndex + itemsAtTheTop);
        if(hoverOptionIndex >= 0 && hoverOptionIndex < obj.size )
        {
            var tooltip = document.getElementById('ie6SelectTooltip');       
            tooltip.innerHTML = obj.options[toolTipIndex].text;
            mouseX=e.pageX?e.pageX:e.clientX;
            mouseY=e.pageY?e.pageY:e.clientY;
            tooltip.style.left=mouseX+10;
            tooltip.style.top=mouseY;
            tooltip.style.display = 'block';
            var frm = document.getElementById('frm');
            frm.style.left = tooltip.style.left;
            frm.style.top = tooltip.style.top;
            frm.style.height = tooltip.offsetHeight;
            frm.style.width = tooltip.offsetWidth;
            frm.style.display = 'block';
        }
        else
        {
            hideIE6Tooltip(e);
        }
    }

    function hideIE6Tooltip(e)
    {
        var tooltip = document.getElementById('ie6SelectTooltip');
        var iFrm = document.getElementById('frm');
        tooltip.innerHTML = '';
        tooltip.style.display = 'none';
        iFrm.style.display = 'none';
    }

</script>
</head>
<body>
<div style="overflow-x:hidden; overflow-y:scroll; height:200px; width:90px">
    <select id="test" title="Title on the select" onmousemove="showIE6Tooltip(this,event);" onmouseout="hideIE6Tooltip();" size="20" >
        <option value="1" title="This is the number 1 option, with a really long title based tooltip">1 Thing</option>
        <option value="2" title="This is the number 2 option, with a really long title based tooltip">2 Thing</option>
        <option value="3" title="This is the number 3 option, with a really long title based tooltip">3 Thing</option>
        <option value="4" title="This is the number 4 option, with a really long title based tooltip">4 Thing</option>
        <option value="5" title="This is the number 5 option, with a really long title based tooltip">5 Thing</option>
        <option value="6" title="This is the number 6 option, with a really long title based tooltip">6 Thing</option>
        <option value="7" title="This is the number 7 option, with a really long title based tooltip">7 Thing</option>
        <option value="8" title="This is the number 8 option, with a really long title based tooltip">8 Thing</option>
        <option value="9" title="This is the number 9 option, with a really long title based tooltip">9 Thing</option>
        <option value="10" title="This is the number 10 option, with a really long title based tooltip">10 Thing</option>
        <option value="11" title="This is the number 11 option, with a really long title based tooltip">11 Thing</option>
        <option value="12" title="This is the number 12 option, with a really long title based tooltip">12 Thing</option>
        <option value="13" title="This is the number 13 option, with a really long title based tooltip">13 Thing</option>
        <option value="14" title="This is the number 14 option, with a really long title based tooltip">14 Thing</option>
        <option value="15" title="This is the number 15 option, with a really long title based tooltip">15 Thing</option>
        <option value="16" title="This is the number 16 option, with a really long title based tooltip">16 Thing</option>
        <option value="17" title="This is the number 17 option, with a really long title based tooltip">17 Thing</option>
        <option value="18" title="This is the number 18 option, with a really long title based tooltip">18 Thing</option>
        <option value="19" title="This is the number 19 option, with a really long title based tooltip">19 Thing</option>
        <option value="20" title="This is the number 20 option, with a really long title based tooltip">20 Thing</option>
    </select>
    </div>
    <div id="ie6SelectTooltip" style="display: none; position: absolute; padding: 1px; border: 1px solid #333333;
        background-color: #fffedf; font-size: smaller; z-index: 999;">
    </div>
    <iframe id="frm" style="display: none; position: absolute; z-index: 998"></iframe>
</body>
</html>

 

For me the above code worked vary well. I hope this code is useful for some one. If so, please leave some comments below.

SharePoint 2010 Features and Enhancements

Following is the high-level list of SharePoint 2010 features and enhancements. For detailed information you can check it here.
New in SharePoint 2010

  • Language Integrated Query (LINQ)
  • AJAX Support
  • Ribbon navigation
  • List Enhancements
    • New Scale Limits
    • XSLT Views for better customizations
    • Cascade deletes/Updates
    • Formula Validation for Column like Excel
    • External Data List Type - allows to connect external data such as databases or web services.
  • Business Connectivity Services (BCS) - New name for BDC and drastically enhanced.
  • Silverlight integration
  • Client side object Model
  • Sandbox Solutions - deploy in a secure environment.
  • Added More Services - Word,Visio, Performance Point and Access Services in addition to Excel and InfoPath Form Services.
  • New enhancements to InfoPath Form Services
    • Replace default list forms to InfoPath form
    • New mobile form capabilities
  • Well Integrated with Visual Studio 2010
    • Browse SharePoint environment from server explorer to see lists, libraries, Content types, etc.,.
    • Web Parts Visual elements
    • improved Web Solution Package (WSP)
    • Development on Windows 7
  • Developer Dashboard
  • Communities
    • Enhanced Blogging and wikis
    • Tagging and Rating
    • Activity Feeds - Stay informed and track colleagues updates
    • Social Bookmarking - can be internal or external web sites
    • Enhanced My Sites
    • Enhanced User Profiles
    • Organization Browser
  • Search
    • Extensible Search web parts
    • preview content with integrated FAST technologies
    • Phonetics people search
    • Outlook Address book style lookup
    • FAST Search - need separate license
  • Content Management
    • Document Management
      • Metadata views instead of hierarchical folder based navigation
      • Location based metadata
      • Document Routing to specific location
      • unique document IDs instead of URL based location
      • Taxonomy services
      • Document Sets - Manage collection of different content (doc,ppt,xls) into a set
    • Records Management
      • Multi stage disposition
      • In place records management
      • location based file plans
      • e-discovery
    • Web Content Management
      • New Enhanced UI
      • XHTML Compliant
      • Enhanced Page libraries
    • Digital Asset Management
      • Support most common digital assets like Video, Audio, Images
      • Bit Rate Throttling with IIS - Just in time delivery of the content instead of deliver the entire video to the user at maximum speed.
      • Remote BLOB (Binary Large OBject) storage
      • Silverlight WebPart and Media Player
    • Workflows
      • Now Workflows are Customizable
      • Allowed Site Workflows
    • SharePoint Workspace (Previously known as Groove) - allow to work offline and sync the lists, libraries and forms
Saturday, July 10, 2010

Microsoft’s SharePoint 2010 Migration Approaches

I found the following poster’s in Microsoft site on How to migrate from SharePoint 2007 to SharePoint 2010. It is very useful to understand the migration process and everyone  who are working on SharePoint migration should see this.

 

Here is the list of links to Posters:

Upgrade Planning : Poster, TechNet article

Upgrade Approaches : Poster, TechNet Article, Comparison

Upgrade Services : Poster, TechNet Article

Test Your Upgrade Process : Poster, TechNet Article

Upgrading Parent and Child Farms: Poster, TechNet Article

Thursday, June 17, 2010

Enable AJAX Support in SharePoint,WSS, MOSS 2007

Microsoft suggests the following changes to web.config for your SharePoint installation if you want to enable AJAX functionality. http://msdn.microsoft.com/en-us/library/bb861898.aspx

 

I found the this file ( http://www.hansrasmussen.com/2010/02/enable-ajax-support-in-sharepointwss-moss-2007/ ) which enable AJAX support in MOSS 2007 using Feature.

Wednesday, June 16, 2010

SharePoint DateTimeControl returns today's date if there is no selected date

By Default SharePoint DateTimeControl returns today's date if there is no selected date. Use IsDateEmpty to check whether user selected any date or not. If IsDateEmpty returns true, means no date selected by the user otherwise user selected the date and use that date.

 

 

if (!((DateTimeControl)c).IsDateEmpty)
{
    columnValue = ((DateTimeControl)c).SelectedDate.ToString();
}
else
{
    columnValue = "";
}

Saturday, June 5, 2010

Number of rings before voice mail picks up

Go to phone settings (Start –> Settings --> Personal), select services tab, highlight call forwarding and then the GET SETTINGS button. from there it will show what you currently have and let you change it. Max is 30 Sec.

Tuesday, May 18, 2010

SharePoint 2010 Installation Step By Step

The following article provides a step by step installation of SharePoint Server 2010. Before installing SharePoint Server 2010, like any other software, they are some prerequisites which we must install first.

Prerequisites:

  1. Need 64bit Operating System. Windows Server 2008 with SP2 / Windows 7.
  2. Web Server (IIS) role
  3. Application Server role
  4. Microsoft .NET Framework version 3.5 SP1
  5. SQL Server 2008 Express with SP1
  6. Microsoft Sync Framework Runtime v1.0 (x64)
  7. Microsoft Filter Pack 2.0
  8. Microsoft Chart Controls for the Microsoft .NET Framework 3.5
  9. Windows PowerShell 2.0
  10. . SQL Server 2008 Native Client
  11.   Microsoft SQL Server 2008 Analysis Services ADOMD.NET
  12.   ADO.NET Data Services Update for .NET Framework 3.5 SP1

First I installed the fresh copy of Windows Server 2008 Server 64 bit trail version and then installed SQL Server 2008 trail version. Once i installed these successfully, i followed the following steps.

 

Step 1: Log on to the Server with Service Account / Administrator which you want to use. If you have a Domain add this server to the Domain. (Optional)

Step 2: Run Setup File

image

Step 3: Select “Install software prerequisites” under Install to install all prerequisites. It may take few minutes (mine took almost 30 – 40 minutes) to install all prerequisites and may need to restart the server couple of times.

image

Step 4:  Once all prerequisites are installed successfully, Select “Install SharePoint Server” under Install.  Once you see the following screen, Enter your product key which you received from the Microsoft.

image

 Step 5: Once you read the License Terms, Select the check box and click Continue button.

image

Step 6: If your installing in Single Server, select Standalone. If you a server Farm then choose Server Farm option. Since i am installing for testing purpose, so i go with Standalone option.

image

It will take several minutes to complete the installation.

image

Step 7: Once the installation is complete, Run the Configuration Wizard by selecting the checkbox. If you close the windows without selecting the checkbox, You can also Run this wizard by Going to Start –> Programs –> Microsoft SharePoint 2010 Products –> SharePoint 2010 Products Configuration Wizard.

image

Step 8:  Run the configuration wizard by clicking on Next button.

image

Step 9: It shows the following message, just click Yes button.

image

Once Configuration process started, it will take several minutes to complete.

image

Step 10: You will see the following message if everything went smooth.

image

 

Step 11: When Login Screen appears, enter your credentials which you logged with.

Step 12: If it shows Phishing filter dialogue, select Turn on Automatic Phishing Filter and click OK button.

Step 13: Select your own template and click OK button.

image

image

 

Step 14: create your own group if needed. I just go with defaults since mine is a test environment.

image

Hope this post helps some one. If so, Please leave some comments.

Tuesday, May 11, 2010

Internet Explorer JavaScript Debugging

Most of the time people frustrated with JavaScript errors since the lack of information provided by the browser. You can use alert’s to find out where it went wrong but this is annoying by number of clicks. So you have to use some debugging tools for browser.

 

If you are a .NET Developer, Visual Studio comes with inbuilt JavaScript debugging tool. But what if you are neither a .NET developer nor you have Visual Studio. In this case Microsoft provides a free tool called “Microsoft Script Debugger” which you can download it from here. As of i know, this is the free and best tool for debugging JavaScript on Internet Explorer.

 

To use either Visual Studio or Microsoft Script Debugger as your debugging tool, you have to turn debugging on in IE. To do that Go to Tools –> Internet Options –> Advanced tab. Make sure that “Disable Script debugging (Internet Explorer)” is not checked.

 

image

 

Once you restart the browser, you can load your page which you want to test it. If there are any errors on the page, it shows a Dialog box asking whether to debug or not and just press OK button. That’s it. Now you can see where exactly the error happens and analyze accordingly.

 

If in case you want to debug specific line irrespective of error. You can put a line debugger; in your JavaScript code. so it will create a break point automatically and when this breakpoint gets hit, your debugger will lunch.

 

Hope this helps some one.

Thursday, May 6, 2010

C# Regular Expressions Quick Reference Sheet

Character

Description

Example

\

Marks the next character as either a special character or escapes a literal.

For example, "n" matches the character "n". "\n" matches a newline character. The sequence "\\" matches "\" and "\(" matches "(".

Note: double quotes may be escaped by doubling them: "<a href=""...>"

^

Depending on whether the MultiLine option is set, matches the position before the first character in a line, or the first character in the string.

 

$

Depending on whether the MultiLine option is set, matches the position after the last character in a line, or the last character in the string.

 

*

Matches the preceding character zero or more times.

For example, "zo*" matches either "z" or "zoo".

+

Matches the preceding character one or more times.

For example, "zo+" matches "zoo" but not "z".

?

Matches the preceding character zero or one time.

For example, "a?ve?" matches the "ve" in "never".

.

Matches any single character except a newline character.

 

(pattern)

Matches pattern and remembers the match. The matched substring can be retrieved from the resulting Matches collection, using Item [0]...[n]. To match parentheses characters ( ), use "\(" or "\)".

 

(?<name>pattern)

Matches pattern and gives the match a name.

 

(?:pattern)

A non-capturing group

 

(?=...)

A positive lookahead

 

(?!...)

A negative lookahead

 

(?<=...)

A positive lookbehind .

 

(?<!...)

A negative lookbehind .

 

x|y

Matches either x or y.

For example, "z|wood" matches "z" or "wood". "(z|w)oo" matches "zoo" or "wood".

{n}

n is a non-negative integer. Matches exactly n times. For example, "o{2}" does not match the "o" in "Bob," but matches the first two o's in "foooood".

 

{n,}

n is a non-negative integer. Matches at least n times.

For example, "o{2,}" does not match the "o" in "Bob" and matches all the o's in "foooood." "o{1,}" is equivalent to "o+". "o{0,}" is equivalent to "o*".

{n,m}

m and n are non-negative integers. Matches at least n and at most m times.

For example, "o{1,3}" matches the first three o's in "fooooood." "o{0,1}" is equivalent to "o?".

[xyz]

A character set. Matches any one of the enclosed characters.

For example, "[abc]" matches the "a" in "plain".

[^xyz]

A negative character set. Matches any character not enclosed.

For example, "[^abc]" matches the "p" in "plain".

[a-z]

A range of characters. Matches any character in the specified range.

For example, "[a-z]" matches any lowercase alphabetic character in the range "a" through "z".

[^m-z]

A negative range characters. Matches any character not in the specified range.

For example, "[m-z]" matches any character not in the range "m" through "z".

\b

Matches a word boundary, that is, the position between a word and a space.

For example, "er\b" matches the "er" in "never" but not the "er" in "verb".

\B

Matches a non-word boundary.

"ea*r\B" matches the "ear" in "never early".

\d

Matches a digit character. Equivalent to [0-9].

 

\D

Matches a non-digit character. Equivalent to [^0-9].

 

\f

Matches a form-feed character.

 

\n

Matches a newline character.

 

\r

Matches a carriage return character.

 

\s

Matches any white space including space, tab, form-feed, etc. Equivalent to "[ \f\n\r\t\v]".

 

\S

Matches any nonwhite space character. Equivalent to "[^ \f\n\r\t\v]".

 

\t

Matches a tab character.

 

\v

Matches a vertical tab character.

 

\w

Matches any word character including underscore. Equivalent to "[A-Za-z0-9_]".

 

\W

Matches any non-word character. Equivalent to "[^A-Za-z0-9_]".

 

\num

Matches num, where num is a positive integer. A reference back to remembered matches.

For example, "(.)\1" matches two consecutive identical characters.

\n

Matches n, where n is an octal escape value. Octal escape values must be 1, 2, or 3 digits long.

For example, "\11" and "\011" both match a tab character. "\0011" is the equivalent of "\001" & "1". Octal escape values must not exceed 256. If they do, only the first two digits comprise the expression. Allows ASCII codes to be used in regular expressions.

\xn

Matches n, where n is a hexadecimal escape value. Hexadecimal escape values must be exactly two digits long. Allows ASCII codes to be used in regular expressions.

For example, "\x41" matches "A". "\x041" is equivalent to "\x04" & "1".

\un

Matches a Unicode character expressed in hexadecimal notation with exactly four numeric digits. "\u0200" matches a space character.

 

\A

Matches the position before the first character in a string. Not affected by the MultiLine setting

 

\Z

Matches the position after the last character of a string. Not affected by the MultiLine setting.

 

\G

Specifies that the matches must be consecutive, without any intervening non-matching characters.

 
Friday, April 9, 2010

SharePoint 2007 Interview Questions

SharePoint Concepts

What is Content Type? Where did you use content type?

A content type is a flexible and reusable WSS type definition that defines the columns and behavior for an item in a list or a document in a document library.
For example, consider the following two types of documents: software specifications and legal contracts. It is reasonable that you might want to store documents of those two types in the same document library. However, the metadata you would want to gather and store about each of these document types would be very different. In addition, you would most likely want to assign very different workflows to the two types of documents.

Why to maintain separate SSP? Is there any specific reason?

Did you involved in Site Governance?

How many Site Collections are there in your current SharePoint Environment?

What is Item level security?

Why did you use SharePoint Central Administration to deploy InfoPath Form?

Because my InfoPath Form has custom code (code behind files) and its needs to be approved by the administrator.

How to migrate SharePoint 2003 to SharePoint 2007?

There are multiple approaches depends on the customizations. I followed Database migration.

What kind of authentication providers did you use in SharePoint?

We can use Windows authentication and Form based authentication.

How do you setup Form based authentication?



Why you used K2 BlackPearl instead of Microsoft Workflow Framework?

Due to lot of customizations in our workflow. By using K2 we can create complex workflows with out writing code or with minimal code.

Why cant you use SharePoint Designer workflows instead of custom Workflows (K2/WF)?

Due to lot of customizations in our workflow.

What is Workflow Task Forms?

Describe the difference between a Site definition and a Site template?

I have a single SharePoint list in which I want to keep a list of computers and metadata describing each computer's properties. For desktops, I have one set of metadata fields. For laptops, I have another set of metadata fields. How can I store both laptops and desktops in this same list?

By using Content Types.

What is a SharePoint Feature? What files are used to define a feature?

A SharePoint Feature is a functional component that can be activated and deactivate at various scopes throughout a SharePoint instances. Scopes include
  • Farm
  • WebApplication
  • Site (site collection)
  • Web (site)
Features have their own receiver architecture, which allow you to trap events such as when a feature is
  • installing
  • uninstalling
  • activated
  • deactivated
The element types that can be defined by a feature include
  • menu commands
  • link commands
  • page templates
  • page instances
  • list definitions
  • list instances
  • event handlers
  • workflows

The two files that are used to define a feature are

  • feature.xml - The feature XML file defines the actual feature and will make SharePoint aware of the installed feature.
  • manifest file(elements.xml) - The manifest file contains details about the feature such as functionality.

Common stsadm commands associated with feature are

  • stsadm -o installfeature
  • stsadm -o uninstallfeature
  • stsadm -o activatefeature
  • stsadm -o deactivatefeature

Workflow can be applied to what all elements of SharePoint ?

  • At the level of a list or document library
  • At the level of a content type defined at site scope
  • At the level of a site ( SharePoint 2010 )

What are ways to create input forms for workflow ?

Two different approaches can be used to develop custom input forms for a WSS workflow template.
  • You can create your forms by using custom application pages, which are standard .aspx pages deployed to run out of the _layouts directory. ( disadvantage: lot of code required when compared to InfoPath approach)
  • using Microsoft Office InfoPath 2007 (disadvantage: picks up a dependent on MOSS, i.e., it cannot run in a standalone WSS environment)

Can you explain what is the difference between Column vs. Field vs. Property?

What are called columns in the user interface are referred to as fields in the schema and object model.
You can create columns at two levels: the site, and list levels. These columns are represented as elements in the site and list schema, and Field objects in the object model. List columns created when you add a site column to a list retain a child/parent relationship with the site column, and retain the same field ID as the site column.
You cannot create a column in a content type. When you add a column to a content type, it's added as a in the content type schema. When you add a content type to a list, the columns referenced by the elements in that content type schema are added to the list as elements.
Therefore, columns are always represented by elements in site and list schemas, and always represented by elements in content type schemas.
Document properties usually just refer to a field as it applies to a specific document. The document property might be something you're tracking solely at the document library level, or it might also be included in the document itself.









  1. WebParts
  1. Did you use DataView webpart? If yes, in what scenario?
  2. Can we use DataView webpart to show document libraries and list to show data?
  3. How to deploy web parts?
  4. What are the challenges you faced while building web parts?
  5. How to create Connected webparts?
  6. What is Event Listeners? Why to use them?
  7. How to deploy event listeners?
  8. What is Content Query WebPart?
  9. I'm writing code to iterate thru the items in a SharePoint list.  What two objects would I use to get a handle on the list and each list item?
Tuesday, April 6, 2010

Windows Workflow Interview Questions

  1. What is WF?
  2. What are different types of workflows?
  3. Can I Use Parallel Workflows?
  4. What exactly the state workflow is?

ASP.NET Interview Questions

  1. ASP.NET 3.5 Features?
  2. What is Master Page?
  3. What is the disadvantage of User Controls?
  4. Can I access Master Page data in content page?
  5. How to call a control in the GAC with the following scenario. Company A and Company B has same namespaces and versions but different dll names. How to call a specific Control?
  6. How do you know whether page is Post backed or Ajax controlled?
  7. What is the difference between a Get and a Post Request ?
  8. In what type of situations would you use Get instead of Post?
  9. How does the browser behave differently when performing a Get and a Post request?
  10. What is the Http Session used for?
  11. What kind of objects can be stored in the Session? and What kind of objects can’t be stored in Session?
  12. How is an HTTP Handler different than a Module?
  13. Describe the difference between a Stream and a BufferedStream?
  14. What is view state and how is it different from Session State? Explain the mechanism of persisting variables using ViewState?
  15. Are ViewState stored in the client side or the server side?
  16. Describe at least one of the events fired as part of the ASP.NET System.Web.UI.Page lifecycle. 

AJAX

  1. What is AJAX?
  2. How does AJAX benefit the client side of a Web Applications?
  3. What is an XMLHttpRequest?
  4. You have a two controls on one Page. How these controls update data without refreshing each other or entire page?
  5. How do you implement if i want one control submit button should update both controls with one click?
XML

  1. What are the XML files that are important in developing an ASP.NET application?
  2. What is XSL?

Windows Communication Framework Interview Questions

  1. What is the difference between WCF and Web Services?
  2. How do you write a simple WCF?
  3. Where do you specify Bindings?
  4. Did you write any web services yourself?
  5. Did you write any WCF services yourself?
  6. How do you consume WCF Service?
  7. Other than referencing service, How can you call the service?

OOPs Interview Questions

  1. What are OOPs concepts?
  2. Why you use interface?
  3. What is Abstract Class?
  4. Inheritance wise what is the difference between interface and abstract?
  5. Can Interface have Private variables?
  6. What is the Static Class, Method and Variable?

C# Interview Questions

  1. Is Static thread Safe?
  2. Where do you use Static?
  3. What is the difference between static and instance variables?
  4. What is the difference between a shared and private assembly?
  5. What is one key requirement for a shared assembly (as opposed to private assembly)?
  6. What is the procedure to sign an assembly?
  7. What is the difference between early binding and late binding?
  8. What is the difference between a process and a thread? 
  9. What is the difference between ToString() VS Convert.ToString() VS Parse VS (string) cast?

    ToString() raise an exception when the object is null.

    Convert.TosString()- returns empty in case of null object

    Parse - raise ArugumentNull Exception in case of null.

    (string) cast - assign the object in case of null.

Tuesday, March 30, 2010

How to change Default Welcome Screen Image on LG Incite?

Most of us want to use our own image when mobile starts. There is a way to do that. Just follow the steps

Step 1: Open CeRegistryEditor or registry editor which you use

Step 2: Go to HKEY_LOCAL_MACHINE > SOFTWARE > MICROSOFT > SPLASH SCREEN

Step 3: You see exact location and image file name which it points to (CarrierBitmap & MS Bitmap). Here You can change the path or replace the image in that folder(\windows) with your image.

Saturday, March 27, 2010

How to enable Media Net in Windows Mobile?

Most of people are using smart phones these days for there own reasons. I use my LG Incite especially for WI-FI, but by default its connected to 3G Data which charge money (I don’t want to spend $30/month). There is little hack you can follow to use WI-FI instead of 3G Data.

 

Step 1: Download the registry editor called CeRegEditor. If you already have jump to Step 3.

Step 2: Install it in your PC

Step 3: Open CeRegEditor app

Step 4: Go to Connection Menu and then select Connect (F1)

Step 5: Navigate to HKEY_LOCAL_MACHINE>Comm>ConnMgr>Destinations>MEdia Net

Step 6: Double click on ReadOnly and change to 0. (if you received Access Denied error, Go to Tools>Unlock Registry)

image

Now you can go to the MEdia Net connection on the LG Incite and edit the MEdia Net Settings.

Step 7: On your mobile go to Start>settings>Connections

Step 8: tap on Connections > Advanced

Step 9: tap on Select Networks button

Step 10: Select MEdia Net from drop down and tap on Edit button

Step 11: Select MEdia Net radio button and tap on Edit button

Step 12: tap on Next button

Step 13: add "xxx" in front of wap.cingular (The Access Point Name Needs Changed)
Step 14: tap on next button

Step 15: You can also add "xxx" in front of the user name to ensure it won't connect.

Step 16: tap on Finish button.

Step 17: Same way we have to do it for Video Sharing. So tap on Video Sharing radio button

Step 18: tap on Edit button.

Step 19: tap on Next

Step 20: add "xxx" in front of ims.cingular (The Access Point Name Needs Changed)
Step 21: tap on next
Step 22: You can also add "xxx" in front of the user name to ensure it won't connect

 

and also make sure that you disabled the proxy by going to Start>Programs>Tools>Proxy Manager, then disable proxy to use IE on your or any other WiFi connection

Hope this helps some one. If so leave comments.

Thursday, March 25, 2010

How to See Engineer Menu in LG Incite Mobile?

In LG Incite Mobile, there is a invisible menu called Engineer menu. In this Engineer Menu you can perform following operations

  1. Version Info
  2. Factory Reset
  3. Device Test
  4. Port Setting
  5. Modem Testing
  6. IMS Setting

To access this menu, dial 5476278#*# on the dial pad as a phone number.

LG Incite wifi setting – Step by step

If you want to send and receive e-mail or surf the internet, you need to set up your LG Incite wifi first.

LG Incite wifi setting – Step by step

  1. Start -> Settings -> Connections tab
  2. WiFi -> Network Adapters tab
  3. select "The Internet" and then select Broadcom 802.11 DHD Network Adapter
  4. Go Start/Programs/Tools/Proxy Manager, then disable proxy to use IE on your or any other WiFi connection.

LG Incite Change Maximum Ringtone Size

Most of us want to use our favorite song as a ringtone, but currently the file size is limited to 300Kb.

You can follow the step by step instructions to set file size limit to what ever you want.

Step 1: Download the registry editor called CeRegEditor.

Step 2: Install it in your PC

Step 3: Open CeRegEditor app

Step 4: Go to Connection Menu and then select Connect (F1)

Step 5: Navigate to HKEY_CURRENT_USER>Control Panel>Sounds

Step 6: Double click on FileSizeLimit and change to whatever size you would like, default is around 300Kb (307200). Mine changed to 6MB (6598657).

 

image

Hope this helps some one.

Thursday, March 11, 2010

Event manager error: Could not load file or assembly

We have created a Custom SharePoint List Event handler to call our custom application (Web Services) when new item is added to the SharePoint List. Everything was worked in production server for first time (Register Event Handler). As soon as a new item was created, event handler was triggered and its called our web services. After we made some changes and reregister the event handler, this time event handler was not triggered somehow. We checked the register process and it same we followed first time, no difference, but still didn’t work.
Friday, March 5, 2010

Blog Editors

http://www.masternewmedia.org/best-offline-blog-editors-and-web-publishing-tools-mini-guide/




Before you leave:

  • Tell me whether you like this article or not? Rate this post accordingly by selecting the stars below.
  •  Any suggestion, question or comment? Please post it in the comments below.


Friday, February 26, 2010

How to find duplicate records in SQL Server?

This is not a tuff job to do but recently one my friend asked me the same question and i replied with the following query.

SELECT SKUID, COUNT(SKUID) FROM SKURequests
GROUP BY SKUID
HAVING COUNT(SKUID) > 1

 

Even though it is very simple, i thought to share in my blog so it may help some one who needs it.

Wednesday, February 24, 2010

The product level is insufficient for component

Recently i tried to import the data from the excel document to my SQL database and received the following error.
Error 0xc00470fe: Data Flow Task: The product level is insufficient for component "Source – XXXX.XLS
Tuesday, February 23, 2010

How to generate Data script from SQL Database

SQL Server 2005 provides a way to generate a scripts for database schema such as Tables, Stored Procedures, Triggers, Functions, Views etc. That’s a good feature you need when you want to move the database schema form one environment to another environment. But what about data? You guys might faced a challenge to fetch data from production to development and you can not use backup and restore option since If you do so, what ever changes you made in development database will be vanished.

JavaScript Frameworks/Libraries Side by Side Comparison

Now a days everyone is using JavaScript frameworks/library in there JavaScript based application development for easier development, especially for AJAX.

There is list of notable JavaScript Frameworks/libraries are available, but the question is which one appropriate to choose.

Friday, February 19, 2010

How to Eliminate Merged Cells from a Reporting Services Excel Export

Recently i developed a report as i do normally by using Page Header (Images and Report Heading), Body (Data within tables) and Page footer (Page Numbers and date and time of report generation). When displaying on the web page or export to excel, all fields and layout shows correctly with out any issue. But the problem is when export to excel, some of the columns were merged as shown below.
Thursday, February 11, 2010

Top 10 VMware Performance Tweaks

Looking for VMWare optimization to improve performance, then look into this article.

Before you leave:
  • Tell me whether you like this article or not? Rate this post accordingly by selecting the stars below.
  •  Any suggestion, question or comment? Please post it in the comments below.
Wednesday, February 10, 2010

A nice article about Microsoft Windows Communication Foundation (WCF) Basics

Look into this article to get quick understanding and basics on WCF.

Before you leave:

  • Tell me whether you like this article or not? Rate this post accordingly by selecting the stars below.
  • Any suggestion, question or comment? Please post it in the comments below.

How to Delete SharedServices?

What ever reason you want to delete the shared services, because of wrong name or wrong site, you can do it either using UI or STSADM tool. Some times UI delete option is disabled, so you dont have any choice other than using STSADM tool.

Virtual Server Performance Tips

Go to this link. I found the article which is very nice and useful for improving virtual server performance.

Before you leave:

  • Tell me whether you like this article or not? Rate this post accordingly by selecting the stars below.
  •  Any suggestion, question or comment? Please post it in the comments below.


How to Enable AHCI After Windows OS installation?

AHCI(Advanced Host Controller Interface) mode brings 3 main advantages:
  1. Supports NCQ (Native Command Queuing) allowing SATA drives to accept more than one command at a time and dynamically reorder the commands for maximum efficiency.
  2. Supports hot plugging of devices.
  3. Supports staggered spin ups of multiple hard drives at boot time
Tuesday, February 9, 2010

How to find Your processor supports Virtualization or not?

I use the following free tools to verify my matherboard and processor details.

Saturday, February 6, 2010

UnKnown PCI Simple Communications Controller

If  your device manger shows unknown PCI Communications controller and not sure what that device is?

Friday, February 5, 2010

Dynamically Change Environment Specific Web.Config file

When ever we develop ASP.NET application, we keep our entire environmental specific settings into web.config file. Based on where we deploy the application (Dev, Test, Prod), we will comment out other environments which is a manually process. Personally I prefer different web.config files for different environments and based on the Build option you select it should dynamically create the appropriate web.config file for that environment.

Thursday, February 4, 2010

UNIX VS Linux

Recently my wife asked me what is the difference between UNIX and Linux. Basically I dont know much about these operating systems becauseI always work with windows operating systems. Since my wife asked the difference between those and even i want to know other operating systems, so I immediately jumped into google and find the following information.

Factory Method Pattern (Creational)

AIM: Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory method lets classes defer (postpone) instantiate to subclasses.

Friday, January 29, 2010

Spyware or Antivirus Protect 2009 / sysguard.exe Infection

Most of the people browse the internet every day and some sites are reliable and some or not. Eventhough we browse good sites, some sites as 3rd party Ads which install some crap/malware in our computer and says some infection or virus were found in our computer. It asks you to purchase the software to clean up the crap/malware. So many times it happened to my wife computer and good thing is i always take image of her PC so that when ever it infected with virus, i reimage back.
Monday, January 25, 2010

SQL Queries

TABLES:

1) Table name - programmer

name not null varchar2(8) name
dob not null date date of birth
doj not null date date of joining
sex not null varchar2(1) male or female
prof1 varchar2(8) known language 1
prof2 varchar2(8) known language 2
salary not null number(4) salary
Thursday, January 21, 2010

Singleton Pattern (Creational)

AIM:
Restrict instantiation of a class to one object and provide a global point of access to the object.
Class Diagram:


How to Increase the maximum size of list templates?

Problem / Issue:
Saving a list as template is an easy way of transferring data from one place to another in SharePoint. By default, however the maximum size of list templates in  WSS3.0 and MOSS 2007 is 10 MB.

If you try to save the list as template that is larger than this you will get the follwoing error.
The list is too large to save as a template. The size of a template cannot exceed 10485760 bytes.

How to print multi line text in InfoPath

Problem: If a multi line text box is used in an InfoPath form and in default print view only prints the text visible in the scroll box, not all the text contained within the field. So how do you make a print view so that all the text is printable?
Wednesday, January 20, 2010

Understanding Design Patterns

What is Design Pattern and why it is so important?

Before explaining what design pattern is, we will look into why we need to learn design patterns. As a software or application developer, we do write a lot of code every day to deliver the software/application. Most of the people write the code in different ways; someone writes all logic into one single file and someone separates that code into multiple files.

Blog Archive