29 June 2012

An Interview with Accenture based on Microsoft SharePoint

Q. What is SharePoint?
A. SharePoint is a software product developed by Microsoft for developing Portals, Collaboration Sites, Publishing sites, content management sites, etc.
Q. Which Site Template you have used for your Project?
A. We have used Publishing Site Template.
Q. Why Publishing, why not Collaboration Site?
A. Publishing because there is usually a small group of people communicating to a much larger group of people. When we’re Collaborating, we share information with others in our group, and those people have an equal opportunity to share information as well.
CollaborationPublishing
Figure: Collaboration                                                       Figure: Publishing
Source: MSDN
Q. How you create a custom Site Definition?
A. We copy the STS folder under Template Folder in 12 and rename it to our Custom Site name. To register our custom site definition we create a WebTemp<Site-Name>.xml file under /12/Templates/1033/XML Folder. And thereafter make necessary changes in your ONET.xml file under the Custom Site Name Folder.
PS: This is an overview. You will have to dive into individual files to explore the details.
Q. How you create Custom list definitions?
A. in VS 2005, if you have WSS extensions installed. When you create a new project, in the left navigation you should click SharePoint, you will get the option to create a list definition, as you will select it. A drop down populated with category of List definition you are willing to create will be shown. I select Custom List and then I open the Schema.xml file and include the columns under <FieldRefs> tag and set the guid and other flags for that column. All the details for the field will go under the <fields> tag. And thereafter we can deploy it by right clicking on the project and click deploy.
Q. Which is the file we use in BDC to map with the Data Source?
A. Application Definition File (ADF). Please go through the structure of ADF.
Q. Explain few frequently used classes under WSS Object Model?
A. I explained little about each of these classes and there main purpose. SPWebApplication, SPSite, SPWeb, SPList etc.
Q. What is CAML Query, explain few tags used under it?
A. CAML queries are used to query the SharePoint lists and fetch List items based on the query.
Q. How you will create custom error pages?
A. we can create a class library and inherit the IHTTPMODULE interface and override the methods meant for displaying Access denied and Errors. Thereafter we can put the dll in the GAC and register our call our dll in <HTTPModules> section in web.config file under our application virtual directory.
Q. Which all event receivers are available in MOSS 2007?
A. There are four namely SPWebEventReceiver , SPListEventReceiver , SPItemEventReceiver, SPEmailEventReceiver .
Q. What is the difference between Synchronous and Asynchronous Event?
A.synchronous event handler are called before the event is completed while Asynchronous will be called after the event is completed.Events name ending with –ing like itemadding,itemupdating are synchronous while events ending with –ed like itemadded, itemupdated are Asynchronous.
Q. What is Feature? Explain the Structure of Feature Folder.
Q. How we can fetch Search results programmatically?
A. We can use methods Query () and QueryEx() under  Web Service present at “http ://< Site>/_vti_bin/Search.asmx” or search object model. Under search object model we have KeywordQuery class underAssembly:Microsoft.Office.Server.Search andNamespace: Microsoft.Office.Server.Search.Query which will fetch you results based on keyword search and under same assembly and namespace we have fulltextsearchquery class which will fetch you results based on some specific managed property.