<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-339275521350076912</id><updated>2012-02-08T08:44:47.335-08:00</updated><category term='Personal'/><category term='Using BSM in MOSS 2007'/><category term='Record Management'/><category term='Content Database'/><category term='Gates Foundation'/><category term='Nitish Kumar'/><category term='Electronic Content Management'/><category term='Tracing MOSS exception handling logging'/><category term='Developer Training kit'/><category term='LINQ MOSS Query LINQ To Object'/><category term='ECM'/><category term='Usage Scenarios'/><category term='SharePoint'/><category term='SharePoint List Set Operation LINQ Intersection Union'/><category term='SharePoint 2010 Beta'/><category term='AZURE'/><category term='SharePoint 2010'/><category term='windows Workflows examples'/><category term='Entity Framework LINQ to Entities Sample'/><category term='Excel Services'/><category term='Sharepoint Office Integration Best Better'/><category term='Features'/><category term='WCF'/><category term='Rahul Gandhi'/><category term='Society'/><category term='sharePoint 2010 certification'/><category term='SSRS'/><category term='Uses'/><category term='SQL 2008 R2'/><category term='Rich Text Editor Sharepoint 2007 MOSS'/><category term='CLOUD Computing'/><category term='Blank Report'/><category term='Windows Azure'/><category term='Sharepoint problem reinstalling'/><category term='Licencing'/><category term='Preview'/><category term='error'/><category term='70-573 exam'/><category term='Reporting services MOSS 2007'/><title type='text'>My new experiments with SharePoint and myself</title><subtitle type='html'>I try to talk about SharePoint, BI and myself about the means of this blog.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>47</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-4124036424793818017</id><published>2011-12-06T08:52:00.001-08:00</published><updated>2011-12-06T08:52:20.953-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2008 R2'/><category scheme='http://www.blogger.com/atom/ns#' term='Content Database'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='Record Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Electronic Content Management'/><title type='text'>Content databases and their size in the SharePoint farm.</title><content type='html'>&lt;p&gt;Quite often we get a request to tell what is the database utilization of the SharePoint farm and then the size of the individual content databases. Then starts a request to the database team which already is really busy and running neck deep in the work.&lt;/p&gt;  &lt;p&gt;They would then ask if you need the data file size or log size and the Sharepoint guys will say, all we need to know about it the disk space we are consuming.&lt;/p&gt;  &lt;p&gt;Here is the easiest solution&lt;/p&gt;  &lt;p&gt;Open the SharePoint powershell and execute the following command.&lt;/p&gt;  &lt;p&gt;Get-SPDatabase &lt;/p&gt;  &lt;p&gt;Once executed, this command will give you the list of the databases in the farm. You can also export this list to csv to start a further analysis which is where the fun starts.&lt;/p&gt;  &lt;p&gt;run the following command.&lt;/p&gt;  &lt;p&gt;Get-SPDatabase | Export-Csv c:\scripts\databases.csv&lt;/p&gt;  &lt;p&gt;once exported, open this file in excel and that provides you with lot of data.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;DiskSizeRequired&lt;/strong&gt; is the column which provides the number of bytes that the database is using. remember its in bytes so you would need to divide by 1024*1024 to get the&amp;#160; data in MB.&lt;/p&gt;  &lt;p&gt;there are various other details that can be found in this excel which can be of real use like id, upgrade needed, version number etc.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Hope it helps.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Thanks,   &lt;br /&gt;Sahil&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-4124036424793818017?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/4124036424793818017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=4124036424793818017&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4124036424793818017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4124036424793818017'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2011/12/content-databases-and-their-size-in.html' title='Content databases and their size in the SharePoint farm.'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-2087392742412249445</id><published>2011-03-28T03:20:00.001-07:00</published><updated>2011-03-28T03:20:32.715-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='sharePoint 2010 certification'/><category scheme='http://www.blogger.com/atom/ns#' term='70-573 exam'/><title type='text'>SharePoint 2010 Certification</title><content type='html'>&lt;p&gt;I was at tech ed India last week and tried my hand with SharePoint 2010 developer certification. 70-573 TS: Microsoft SharePoint 2010, Application Development&lt;/p&gt;  &lt;p&gt;I was able to clear the exam as i have worked on 4 SharePoint projects in the last 5-6 months but I am sure this is not a very easy exam for most of the people around.&lt;/p&gt;  &lt;p&gt;Good job done by MS in preparing a good set of questions.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-2087392742412249445?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/2087392742412249445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=2087392742412249445&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2087392742412249445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2087392742412249445'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2011/03/sharepoint-2010-certification.html' title='SharePoint 2010 Certification'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-6179134117144275209</id><published>2011-02-11T07:23:00.001-08:00</published><updated>2011-02-11T07:23:56.169-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2008 R2'/><category scheme='http://www.blogger.com/atom/ns#' term='Blank Report'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='error'/><category scheme='http://www.blogger.com/atom/ns#' term='SSRS'/><category scheme='http://www.blogger.com/atom/ns#' term='Reporting services MOSS 2007'/><title type='text'>SQL 2008 R2 SSRS Reports on Safari Browser using ReportViewer Control on SharePoint 2010.</title><content type='html'>&lt;p&gt;In the last project we faced few issues on the Safari browser when using the ReportViewer Control to render the reports from SQL 2008 R2. The reports were rendered on SharePoint 2010.&lt;/p&gt;  &lt;p&gt;The problem that we were facing were that the reports were coming as blank while when we export, we were able to see the data.&lt;/p&gt;  &lt;p&gt;Following was the fix.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;We deleted the DOCType definition XML node from top of the master page.&lt;/li&gt;    &lt;li&gt;Changed the report rendering mode to Sync rather than async.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Hope this saves some time for somebody facing the same issue.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-6179134117144275209?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/6179134117144275209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=6179134117144275209&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6179134117144275209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6179134117144275209'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2011/02/sql-2008-r2-ssrs-reports-on-safari.html' title='SQL 2008 R2 SSRS Reports on Safari Browser using ReportViewer Control on SharePoint 2010.'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-6112187541474154997</id><published>2010-12-13T06:39:00.001-08:00</published><updated>2010-12-13T06:39:11.445-08:00</updated><title type='text'>SPLongOperation : Long running operations in SharePoint 2010 modal dialog</title><content type='html'>&lt;p&gt;Ever got a request of showing the SharePoint 2010 native processing image for the long running operation in a modal dialog?&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/TQYv9zax3xI/AAAAAAAAMxw/JZAaiS2otUo/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/TQYv-yQcsQI/AAAAAAAAMx0/dQg2gsyMwfI/image_thumb%5B1%5D.png?imgmax=800" width="624" height="392" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Yes I am talking about this kind of page. &lt;/p&gt;  &lt;p&gt;The solution is simple, use a in-build class for SharePoint called the SPLongOperation. I am sure most of the people have used this in SharePoint 2007. With SharePoint 2010, as you see i am trying to run this in SharePoint 2010 modal popup page. &lt;/p&gt;  &lt;p&gt;This is how you get this page&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/TQYwAFkGFNI/AAAAAAAAMx8/HdDuqaaJK1I/s1600-h/image%5B12%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/TQYwBQF00TI/AAAAAAAAMyA/lVwOlBuG2kc/image_thumb%5B6%5D.png?imgmax=800" width="564" height="145" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The question with SharePoint 2010 modal dialog is how do you get this page to close after finishing the operation. In 2007 all we need to do was to call the end method on the longoperation object and pass the page where we need to redirect after the completion, as a parameter to the end method. This will redirect the modal page to the parameter and that will be off no help.&lt;/p&gt;  &lt;p&gt;In 2010, the final step in the case when you are running this long operation in the modal dialog box will be to give a to the longoperation.endscript method and pass the script to close the modal popup. This is how the final code will look like.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/TQYwCdB37-I/AAAAAAAAMyE/U0wpheAE14E/s1600-h/image%5B11%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_ddkYnxI4Hkg/TQYwDqgKtCI/AAAAAAAAMyI/SVxYtUzYu-E/image_thumb%5B5%5D.png?imgmax=800" width="554" height="246" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Cheers!!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-6112187541474154997?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/6112187541474154997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=6112187541474154997&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6112187541474154997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6112187541474154997'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/12/splongoperation-long-running-operations.html' title='SPLongOperation : Long running operations in SharePoint 2010 modal dialog'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_ddkYnxI4Hkg/TQYv-yQcsQI/AAAAAAAAMx0/dQg2gsyMwfI/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-9060615309521891866</id><published>2010-10-04T06:43:00.001-07:00</published><updated>2010-10-04T06:43:42.004-07:00</updated><title type='text'>Dell Latitude E6410 Display problem on Projector</title><content type='html'>&lt;p&gt;I am running Windows server 2008 on a dell latitude E6410. Everything seemed to be running smooth till i tried giving a presentation for one of the demo that i created.&lt;/p&gt;  &lt;p&gt;The machine will not connect to any external display. I searched on google quite a lot without much of a help.&lt;/p&gt;  &lt;p&gt;Here is what i did to resolve the issue.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;I applied the BIOS patch available from the dell driver site for the laptop.&lt;/li&gt;    &lt;li&gt;Upgraded the BIOS after applying the above patch.&lt;/li&gt;    &lt;li&gt;Installed the drivers of display for win 7 64 bit from dell site.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Things are working great after that. Hope this will help someone.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Thanks,&lt;/p&gt;  &lt;p&gt;Sahil&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-9060615309521891866?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/9060615309521891866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=9060615309521891866&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/9060615309521891866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/9060615309521891866'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/10/dell-latitude-e6410-display-problem-on.html' title='Dell Latitude E6410 Display problem on Projector'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-1886953558023131521</id><published>2010-08-29T10:21:00.001-07:00</published><updated>2010-08-29T10:21:19.964-07:00</updated><title type='text'>Visio Services in SharePoint 2010 : A Practical Example</title><content type='html'>&lt;p&gt;I have been thinking of writing this one for quite some time. Today I will try to present an example of visio services in SharePoint 2010.&lt;/p&gt;  &lt;p&gt;The example is going to be an Movie theater sample where we will create a drawing of 6 screen and will display a visio drawing on SharePoint which will color code screens based on the number of&amp;#160; sold tickets.&lt;/p&gt;  &lt;p&gt; Lets assume that there is a separate system for the ticket booking. For the sake of simplicity i have create a table which looks like this.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/THqWQ60VqnI/AAAAAAAAMvk/hA3dKuxUCfY/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_ddkYnxI4Hkg/THqWSmJgmfI/AAAAAAAAMvo/j_KxanDFrYg/image_thumb%5B1%5D.png?imgmax=800" width="355" height="137" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Lets assume that that table contains the following dummy data.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWUKDVEKI/AAAAAAAAMvs/KuIFpCiHxHY/s1600-h/image%5B7%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_ddkYnxI4Hkg/THqWV5i1jEI/AAAAAAAAMvw/vXwJVJ0t8gM/image_thumb%5B3%5D.png?imgmax=800" width="410" height="261" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now lets open our visio 2010 and create a drawing to represent screens in a movie theater. &lt;/p&gt;  &lt;p&gt;The drawing looks like this.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWXvgfurI/AAAAAAAAMv0/2X7NM7Yn_Os/s1600-h/image%5B11%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWZiHXZ3I/AAAAAAAAMv4/PQ7p_eFkmc0/image_thumb%5B5%5D.png?imgmax=800" width="351" height="263" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now lets go to the data tab of the visio and create a new odc file&amp;#160; to connect to the sql server table we just created. This step is similar to the step that we used to do in SharePoint 2007. We can create a odc file from any office application or from “my data sources” in my document. Once we create the odc file to connect to the table. Lets upload the odc file to SharePoint. &lt;/p&gt;  &lt;p&gt;Create a data connection library for uploading the odc file and upload the odc file.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/THqWcCA_GXI/AAAAAAAAMv8/cvDveTVpSBE/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWenzr1-I/AAAAAAAAMwA/63J5lkAeeKs/image_thumb%5B7%5D.png?imgmax=800" width="490" height="294" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This sets up our connection to access the data. Now lets access this data from visio.&lt;/p&gt;  &lt;p&gt;Go to Data tab and click on link data to shapes. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/THqWgT4tGGI/AAAAAAAAMwE/Zpfz3EgJ0bE/s1600-h/image%5B19%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWiE11JsI/AAAAAAAAMwI/xnpBUxxAEck/image_thumb%5B9%5D.png?imgmax=800" width="360" height="267" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Select the option of previously created connection and browse to the odc file that you have just uploaded in previous step.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWlNOtAEI/AAAAAAAAMwM/cwLItg4SZZc/s1600-h/image%5B23%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/THqWp5WUDwI/AAAAAAAAMwQ/lIlUz5J3Xg8/image_thumb%5B11%5D.png?imgmax=800" width="355" height="284" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/THqWsrPx1cI/AAAAAAAAMwU/ukPDn5CIhYk/s1600-h/image%5B27%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqWvmuHDwI/AAAAAAAAMwY/SHZ4wckM-Tg/image_thumb%5B13%5D.png?imgmax=800" width="408" height="317" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This will make an connection to the data source defined. And visio will prompt you to provide the column which is the unique identifier of the data. In our case its the movie name&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/THqWxFGW5DI/AAAAAAAAMwc/3N0hfYEucro/s1600-h/image%5B32%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_ddkYnxI4Hkg/THqWzRvB8UI/AAAAAAAAMwg/O5gkWpyk5Eg/image_thumb%5B16%5D.png?imgmax=800" width="500" height="372" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now our visio has the data, we need to connect the datarows with the shapes. That is simple.&lt;/p&gt;  &lt;p&gt;Simple select the shape and click on the datarow and associate it with the shape.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/THqW0mTSwAI/AAAAAAAAMwk/rrGo5LUKyzI/s1600-h/image%5B36%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqW3RroZmI/AAAAAAAAMwo/9KSEKROG0I8/image_thumb%5B18%5D.png?imgmax=800" width="418" height="330" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;We need to click on the option of “Link to selected shape”. Having done that, the data rows are connected to the screens.&lt;/p&gt;  &lt;p&gt;Now we need to configure, how the data should look like.&lt;/p&gt;  &lt;p&gt;Go on the data tab and select “Data Graphics” drop down and select create new data item.&lt;/p&gt;  &lt;p&gt;Click on the new item and configure the graphic option as depicted in the picture below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/THqW5kbFsUI/AAAAAAAAMws/QE4xC4KeQyo/s1600-h/image%5B41%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/THqW71jA2BI/AAAAAAAAMww/wKxpPiVxIpc/image_thumb%5B21%5D.png?imgmax=800" width="504" height="421" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This sets the data visualization and we are all set. :)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;We just need to publish the visio now. For doing this we need to select the following option in the “save and send” menu under file. Select the web drawing option to enable the data refresh.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/THqW9iAttSI/AAAAAAAAMw0/CJVc1ggXdKo/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqW_3taHzI/AAAAAAAAMw4/yobXsfbm4Ak/image_thumb%5B24%5D.png?imgmax=800" width="554" height="362" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;And that completes the whole story. We should have a data driven visio up and running. Here is how the final output looks like&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqXBAQRALI/AAAAAAAAMw8/cVMO-M6svfM/s1600-h/image%5B52%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/THqXDeRMaUI/AAAAAAAAMxA/w6SjWIcXVac/image_thumb%5B28%5D.png?imgmax=800" width="641" height="448" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Hope this helps.&lt;/p&gt;  &lt;p&gt;-Sahil&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-1886953558023131521?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/1886953558023131521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=1886953558023131521&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1886953558023131521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1886953558023131521'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/08/visio-services-in-sharepoint-2010.html' title='Visio Services in SharePoint 2010 : A Practical Example'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_ddkYnxI4Hkg/THqWSmJgmfI/AAAAAAAAMvo/j_KxanDFrYg/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-7669773964245664796</id><published>2010-07-30T23:57:00.001-07:00</published><updated>2010-07-30T23:57:17.848-07:00</updated><title type='text'>Excel Services UDF by Visual Studio 2010</title><content type='html'>&lt;p&gt;Trying to get the UDF running for excel services for SharePoint 2010? This doesn't work by default and you need to change the framework version to .Net framework 3.5 to get it working :). Something that is very easy to miss. Hope this saves somebody’s time.&lt;/p&gt;  &lt;p&gt;-Sahil&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-7669773964245664796?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/7669773964245664796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=7669773964245664796&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7669773964245664796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7669773964245664796'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/07/excel-services-udf-by-visual-studio.html' title='Excel Services UDF by Visual Studio 2010'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-1818133921333213744</id><published>2010-07-30T23:53:00.001-07:00</published><updated>2010-07-30T23:53:00.532-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Features'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='error'/><category scheme='http://www.blogger.com/atom/ns#' term='Excel Services'/><title type='text'>UDF in Excel services for SharePoint 2010</title><content type='html'>&lt;p&gt;I got a client requirement today to write a UDF for excel services in SharePoint 2010.&lt;/p&gt;  &lt;p&gt;The things remains pretty much the same as they were in excel services for SharePoint 2007. &lt;/p&gt;  &lt;p&gt;Here are the steps.&lt;/p&gt;  &lt;p&gt;1. I created a class library project in Visual Studio 2010. Remember to change the .Net Framework version to 3.5. I wasted 1 day to figure it out. This doesnt work with framework 4.0.&lt;/p&gt;  &lt;p&gt;2. Create a UDF in a sample UDF class as depicted in the below mentioned image.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/TFPINHWtkCI/AAAAAAAAMvA/88GdMGu4ZaE/s1600-h/UDF%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="UDF" border="0" alt="UDF" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/TFPIOcTpUGI/AAAAAAAAMvE/XI5rb_9V_bA/UDF_thumb%5B1%5D.png?imgmax=800" width="558" height="366" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;3. Use this UDF in a excel file.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/TFPIO0YRP9I/AAAAAAAAMvI/7ugpyw_Q0bs/s1600-h/UDF1%5B2%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="UDF1" border="0" alt="UDF1" src="http://lh5.ggpht.com/_ddkYnxI4Hkg/TFPIQUc4XfI/AAAAAAAAMvM/DrjoUtZJhFw/UDF1_thumb.png?imgmax=800" width="244" height="225" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;4. This will appear in the excel file as “#NAME?”. Don't worry about it as it will render correctly in SharePoint 2010 excel services web part.&lt;/p&gt;  &lt;p&gt;5. Publish this excel to a document library and add a web part to display it.&lt;/p&gt;  &lt;p&gt;6. Adding a trusted location for excel files in not required in SharePoint 2010 as by default all locations are trusted.&lt;/p&gt;  &lt;p&gt;7. Add the UDF dll to the trusted dlls for excel services. This can be done as you used to do it in SharePoint 2007. Only difference is that the settings are not available in service application –&amp;gt; excel services.&lt;/p&gt;  &lt;p&gt;Here is the snapshot of the settings.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/TFPIRIGcMsI/AAAAAAAAMvQ/7Md4mq1Ljzk/s1600-h/UDF3%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="UDF3" border="0" alt="UDF3" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/TFPISwk34EI/AAAAAAAAMvU/gjPArTD5j3Q/UDF3_thumb%5B1%5D.png?imgmax=800" width="317" height="365" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once you do that, you excel file should be able to use the UDF function without any problem.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Feel free to drop me a mail if you don't get it working.&lt;/p&gt;  &lt;p&gt;-Sahil&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-1818133921333213744?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/1818133921333213744/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=1818133921333213744&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1818133921333213744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1818133921333213744'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/07/udf-in-excel-services-for-sharepoint.html' title='UDF in Excel services for SharePoint 2010'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_ddkYnxI4Hkg/TFPIOcTpUGI/AAAAAAAAMvE/XI5rb_9V_bA/s72-c/UDF_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-8617174840186647187</id><published>2010-07-20T06:41:00.001-07:00</published><updated>2010-07-20T06:41:09.507-07:00</updated><title type='text'>Enterprise Metadata management in SharePoint 2010</title><content type='html'>&lt;p&gt;I talked last about the &lt;a href="http://sahilsagar.blogspot.com/2010/06/in-place-record-management-in.html" target="_blank"&gt;in place record management&lt;/a&gt; in SharePoint 2010. This time i am going to give a walk through of setting up a enterprise metadata store in SharePoint 2010.&lt;/p&gt;  &lt;p&gt;The term enterprise metadata is used to setup a taxonomy of the keywords in the organization on that basis of whom you can tag your content in the SharePoint world. I am sure all of us have seen a tag cloud with synonyms like “SharePoint 2007” and “MOSS”. This not only decreases the relevance as the count gets divided into the number of synonyms but also makes it difficult to search.&lt;/p&gt;  &lt;p&gt;The answer to the above problem is to define the metadata ( or these terms ) at the organization level and use them in the site collections. &lt;/p&gt;  &lt;p&gt;Lets see how we do it.&lt;/p&gt;  &lt;p&gt;First we need to configure the metadata at the organization level using a service application called the managed metadata service.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/TEWnQRNyOwI/AAAAAAAAMuM/ZPu3wrcBtGc/s1600-h/Central%20admin%20service%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Central admin service" border="0" alt="Central admin service" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/TEWnT29NsOI/AAAAAAAAMuQ/DKcyClky5yA/Central%20admin%20service_thumb%5B1%5D.png?imgmax=800" width="591" height="378" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click on this service application lets you configure the metadata and assign the owners and contributors to each node of the organizational metadata.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/TEWnU6QB7TI/AAAAAAAAMuU/R13LCrPYnog/s1600-h/Defineing%20Metadata%5B7%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Defineing Metadata" border="0" alt="Defineing Metadata" src="http://lh5.ggpht.com/_ddkYnxI4Hkg/TEWnWG5TL4I/AAAAAAAAMuY/OUaCLCCaMjg/Defineing%20Metadata_thumb%5B3%5D.png?imgmax=800" width="595" height="266" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;In the above example i am defining the metadata hierarchy as depicted in the image above.&lt;/p&gt;  &lt;p&gt;Once we have defined the metadata at the central administration level. we need to associate the web application with the service application. This is done by default in most of the installations.&lt;/p&gt;  &lt;p&gt;On the site collection level we should go to the site term store in the site settings.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/TEWnWz0LR0I/AAAAAAAAMuc/myqiSltc3YY/s1600-h/site%20term%20store%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="site term store" border="0" alt="site term store" src="http://lh3.ggpht.com/_ddkYnxI4Hkg/TEWnXwDyWGI/AAAAAAAAMug/PL3BLKJVQDQ/site%20term%20store_thumb%5B2%5D.png?imgmax=800" width="588" height="380" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;and make any updated to hierarchy specific to our site collection if we are the owner of that group in the term store.&lt;/p&gt;  &lt;p&gt;So we are done with setting it up. Now all we need to do is to add a column to a list/document library of type managed metadata column.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/TEWnYndJGUI/AAAAAAAAMuk/B92Z517s7RY/s1600-h/Document%20Library%20colum%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Document Library colum" border="0" alt="Document Library colum" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/TEWnZuSuKaI/AAAAAAAAMuo/O86ZR8UXL58/Document%20Library%20colum_thumb%5B2%5D.png?imgmax=800" width="630" height="407" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;and select the part of the metadata hierarchy that we want to have this column obtain values from in the column creation UI. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/TEWnaZb63jI/AAAAAAAAMus/YLU68fBH7MQ/s1600-h/term%20set%20selection%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="term set selection" border="0" alt="term set selection" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/TEWnbQXdgCI/AAAAAAAAMuw/NU8LGyMciwU/term%20set%20selection_thumb%5B2%5D.png?imgmax=800" width="623" height="402" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;And add the column to the list. &lt;/p&gt;  &lt;p&gt;We are done !!! &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now when we add any item to this library, we see a field in which we can add values from managed metadata and it does gives an intelligence to pick the values from.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/TEWncLMdSrI/AAAAAAAAMu0/1-10t3ULZ40/s1600-h/Updation%20of%20the%20metadata%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Updation of the metadata" border="0" alt="Updation of the metadata" src="http://lh6.ggpht.com/_ddkYnxI4Hkg/TEWndLaUi9I/AAAAAAAAMu4/RLtbLNxTFuE/Updation%20of%20the%20metadata_thumb%5B2%5D.png?imgmax=800" width="615" height="397" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; With this I finished the walkthrough of one more feature among the feature that i mentioned that are important to ECM in this &lt;a href="http://sahilsagar.blogspot.com/2010/06/sharepoint-2010-ecm-capabilities.html" target="_blank"&gt;blog&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Hope it Helps!!!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-8617174840186647187?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/8617174840186647187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=8617174840186647187&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8617174840186647187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8617174840186647187'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/07/enterprise-metadata-management-in.html' title='Enterprise Metadata management in SharePoint 2010'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_ddkYnxI4Hkg/TEWnT29NsOI/AAAAAAAAMuQ/DKcyClky5yA/s72-c/Central%20admin%20service_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-2510945618607634389</id><published>2010-06-30T05:10:00.001-07:00</published><updated>2010-06-30T05:10:53.804-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Features'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010 Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='Record Management'/><category scheme='http://www.blogger.com/atom/ns#' term='ECM'/><category scheme='http://www.blogger.com/atom/ns#' term='Electronic Content Management'/><title type='text'>In Place Record Management in SharePoint 2010</title><content type='html'>&lt;p&gt;As i discussed in my &lt;a href="http://sahilsagar.blogspot.com/2010/06/sharepoint-2010-ecm-capabilities.html"&gt;last post&lt;/a&gt;, Record management feature is highly improved in SharePoint 2010. The feature existed in SharePoint 2007 but people who have used this feature must agree to the fact that this is not something that we really wanted.&lt;/p&gt;  &lt;p&gt;Today I will walk you through utilizing this feature of SharePoint 2010. &lt;/p&gt;  &lt;p&gt;We first need to enable the record management feature on the site collection level. This can be done by going to Site Settings –&amp;gt; Site collection Feature and enabling this feature.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/TCs0K6kJ19I/AAAAAAAAMtM/W00mJtchi00/s1600-h/Feature%20Activate%5B6%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Feature Activate" border="0" alt="Feature Activate" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/TCs0MAQwmtI/AAAAAAAAMtQ/n1mYrYe-ywg/Feature%20Activate_thumb%5B4%5D.png?imgmax=800" width="612" height="192" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once this feature is enabled, we are set to use the record management in the site collection.&lt;/p&gt;  &lt;p&gt;Any Document library which needs to use this feature should enable this feature by going to the document library settings and selecting the Record declaration Settings.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/TCs0NJujTFI/AAAAAAAAMtU/3yhSTtiQFP0/s1600-h/ListSettings%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ListSettings" border="0" alt="ListSettings" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/TCs0Nw8VrXI/AAAAAAAAMtY/qG4EZgvu3sM/ListSettings_thumb%5B1%5D.png?imgmax=800" width="611" height="229" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;By default the record declaration is off and should be enabled to be able to manually start declaring the documents as records. We can also select an option to automatically declare the items as records.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/TCs0PVoBs1I/AAAAAAAAMtc/kpK6z75BpS8/s1600-h/RecordDelaration%5B5%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="RecordDelaration" border="0" alt="RecordDelaration" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/TCs0QVe3rLI/AAAAAAAAMtg/hVhb3WADI0k/RecordDelaration_thumb%5B3%5D.png?imgmax=800" width="659" height="178" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once we do this settings, we are all set. We will see a new item on the ribbon to declare the document as record. On clicking that, the document will become a record and will be marked read only.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ddkYnxI4Hkg/TCs0Rrp2ZTI/AAAAAAAAMtk/-1AMWS1_f8Y/s1600-h/RecordMenu%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="RecordMenu" border="0" alt="RecordMenu" src="http://lh3.ggpht.com/_ddkYnxI4Hkg/TCs0S3l0FdI/AAAAAAAAMto/Z9jnIk5uEwE/RecordMenu_thumb%5B2%5D.png?imgmax=800" width="689" height="220" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;We can also see the report of this document once we mark it as record. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Hope this gave a head start to the record management in SharePoint 2010. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-2510945618607634389?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/2510945618607634389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=2510945618607634389&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2510945618607634389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2510945618607634389'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/06/in-place-record-management-in.html' title='In Place Record Management in SharePoint 2010'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_ddkYnxI4Hkg/TCs0MAQwmtI/AAAAAAAAMtQ/n1mYrYe-ywg/s72-c/Feature%20Activate_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5667097946985406186</id><published>2010-06-21T05:39:00.001-07:00</published><updated>2010-06-21T05:39:36.820-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Features'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='ECM'/><category scheme='http://www.blogger.com/atom/ns#' term='Electronic Content Management'/><title type='text'>SharePoint 2010 ECM Capabilities</title><content type='html'>&lt;p&gt;MOSS 2007 was a capable ECM product to start with but there were definitely some things in it that would need some additional work.&amp;#160; There are few specific areas that are improved significantly and are worth mentioning for the world of Enterprise Content Management with the flow of 2010.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Enterprise Content Types&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Enterprise Content Types (or ECTs) are the technical representation of the organizations logical entities. They solve the problem of having to keep content types synchronized across site collections and thus common across organization.&amp;#160; Typically, the issue in the past is that you create a content type in one collection and then you also have to updates those content types on all of your other site collections.&amp;#160; The power of the ECT is that it allows you to define one site collection as the hub and then the Managed Metadata Service looks at the source site collection and periodically updates all other site collections with any changes. This can be considered as a common hub to manage the organization logical segments of data.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Document Id Service&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;How many times did we came across this scenario where we started with a&amp;#160; structure and then realized that it’s not the best one and then moved the documents to another place. The challenge is keeping track of documents that have gotten moved.&amp;#160; The Document Id Service helps with this by generating a unique identifier for every document uploaded.&amp;#160; It then stores this URL as metadata on your document and provides a capability of static links.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;In Place Records Management&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;My personal believe is that Records Management in MOSS 2007 had a lot of scope of improvement. I think the MS team shares the same view.&amp;#160; The main issues were that you had to transfer the records an external record center to manage them. Also the applying holds was not very interesting to use. In 2010 there is a great improvement on the way records are handled. The is an option to declare the document as record in-place..&amp;#160; Doing this, it makes it read-only and also starts providing option to mark the docs as records.&amp;#160;&amp;#160; All of this together gives you the ability to apply holds to documents without ever having to ship them off any where (although you can still send them to an external records center).&amp;#160; There is also some improvements on the compliance side along with this which makes the whole feature quite usable.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Document Sets&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Think about a project which will have multiple documents which will be of multiple content types. This essentially is a like a set of document which are of different type but are logically a unit. SharePoint 2010 provides this feature as Document Sets. Effectively you create custom document content types and then create a document set content type.&amp;#160; The document set has a settings page which allows you to specific which child content types to include&amp;#160;&amp;#160; When you view the document set in a document library, it kind of opens like a folder but displays a page (which can be customized) showing metadata and each child document.&amp;#160; It also provides the ability to download the whole set as a zip file.&amp;#160; Great feature I must say.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Managed Metadata (Term Store)&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;How many times did we come across in SharePoint 2007 that we didn’t type the metadata properly. That they tags on the documents don’t match. Hopefully we will not face the same issue in 2010.&amp;#160; Thanks to the new Managed Metadata column that you can add to your content types. This provides an ability to pick the metadata from the list of terms which are centrally managed. This is a really powerful new feature that will allow users to make better choices when classifying documents which in turn leads to better search results.&amp;#160; Now this is a great feature for the end user.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5667097946985406186?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5667097946985406186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5667097946985406186&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5667097946985406186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5667097946985406186'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/06/sharepoint-2010-ecm-capabilities.html' title='SharePoint 2010 ECM Capabilities'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-1008333322507914368</id><published>2010-01-26T11:56:00.001-08:00</published><updated>2010-01-26T11:56:16.282-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Society'/><category scheme='http://www.blogger.com/atom/ns#' term='Rahul Gandhi'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='Nitish Kumar'/><category scheme='http://www.blogger.com/atom/ns#' term='Gates Foundation'/><title type='text'>Making a difference</title><content type='html'>&lt;p&gt;Writing a blog after quite some time on a non technical topic. But i must write about this…..&lt;/p&gt;  &lt;p&gt;This morning I read the &lt;a href="http://www.gatesfoundation.org/annual-letter/2010/Pages/bill-gates-annual-letter.aspx" target="_blank"&gt;annual letter&lt;/a&gt; from Bill gates on the Bill and Melinda Gates foundation. I wont say that the information is an eye opener, we know all this already, but is for sure is something that makes us think &lt;strong&gt;&lt;u&gt;again&lt;/u&gt;&lt;/strong&gt; about our responsibilities towards the world that we live in.&lt;/p&gt;  &lt;p&gt;The more I read about the problems of India and more I talk to people, I think that we all have a duty to pay back to society and the world. Bill wrote in this news letter about Rahul Gandhi and the way he is trying to make the things work for the country. He also talked about his openness to tell the fact that the money is not reaching the people its intended to. He also talked about Nitish Kumar and the measures that he is taking to improve the condition of Bihar. Again, out media does not talk about this. Our media is much more interested in what kind of clothes is Mr. Gandhi wearing these days rather than what is he doing for the people who don't have clothes to wear.&lt;/p&gt;  &lt;p&gt;I believe there are lot of people who want to do something to improve the condition of the country. I believe what we lack is the channel to make things happen. &lt;/p&gt;  &lt;p&gt;I do understand that none of us will be willing to give up their jobs and take up this task of working for the country and society but cant we create jobs to do the same? Cant we say that we will have people working full time to think / to plan about improving the state of the society and we will back them up with a financial support and run it like any other planned venture. A venture whose intentions is are not to make money, but to make meaning. A venture who has its P &amp;amp; L but that is linked to how happy the people are in the society. I know this overlaps with what our politicians are supposed to do and what they are paid for but who cares. &lt;/p&gt;  &lt;p&gt;When i ask this question to myself that can i leave everything and work for the country and the society, my heart wants to say yes, but my brain tells me that you have a family to sustain and you need money to do that. I am sure that is going to be the case with a lot of people. If anybody has a plan where we can listen to our heart and satisfy the needs that&amp;#160; brain is asking for as well, Please leave a comment.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-1008333322507914368?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/1008333322507914368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=1008333322507914368&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1008333322507914368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1008333322507914368'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2010/01/making-difference.html' title='Making a difference'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-7014963347048750480</id><published>2009-12-21T12:08:00.001-08:00</published><updated>2009-12-21T12:08:56.030-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Features'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010 Beta'/><title type='text'>SharePoint 2010- SPI’s in Visual Studio</title><content type='html'>&lt;p&gt;As i dive more and more into the SharePoint 2010 development stories, I am really impressed with work that is done to make the life easier for the SharePoint developers in this release. &lt;/p&gt;  &lt;p&gt;I just started playing with visual studio 2010 and was really happy to see the native support for SharePoint from inside the visual studio as described in my &lt;a href="http://sahilsagar.blogspot.com/2009/12/sharepoint-2010-new-features-for.html" target="_blank"&gt;last&lt;/a&gt; article. There are built-in&amp;#160; SPI’s (SharePoint project Items) as they call them which are there to provide a really good support for the routine development activities. Here is a list of the item templates.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ddkYnxI4Hkg/Sy_V1dXh2NI/AAAAAAAAMoI/t_tvk_V11VQ/s1600-h/SharePointTemplates%5B5%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="SharePointTemplates" border="0" alt="SharePointTemplates" src="http://lh5.ggpht.com/_ddkYnxI4Hkg/Sy_V1-6-VZI/AAAAAAAAMoM/nTx6UFS4Axw/SharePointTemplates_thumb%5B3%5D.png?imgmax=800" width="618" height="441" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Most of the item templates names are self explanatory.&amp;#160; I will keep blogging about specifics as i get into the templates.&lt;/p&gt;  &lt;p&gt;The key is that there is an in-build support to create a wsp file and deploy it from visual studio. This is something for which we all were dependent on codeplex tools likes &lt;a href="http://www.codeplex.com/wspbuilder" target="_blank"&gt;wsp builder&lt;/a&gt; etc. I think finally this is going to be really good development platform. Also the developer needs to pick a test site for deploying the items, and the improved visual studio analyses the site and automatically gets attached to the corresponding w3wp while debugging. So no more attach to process :). &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-7014963347048750480?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/7014963347048750480/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=7014963347048750480&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7014963347048750480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7014963347048750480'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/12/sharepoint-2010-spis-in-visual-studio.html' title='SharePoint 2010- SPI’s in Visual Studio'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_ddkYnxI4Hkg/Sy_V1-6-VZI/AAAAAAAAMoM/nTx6UFS4Axw/s72-c/SharePointTemplates_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-199474781286629708</id><published>2009-12-18T14:29:00.001-08:00</published><updated>2009-12-18T14:30:20.390-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010 Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='Developer Training kit'/><title type='text'>SharePoint 2010 : New features for developers</title><content type='html'>&lt;p&gt;As we are getting close and close to the release for the SharePoint 2010, There are lot of videos and information available on what is new in SharePoint 2010. Not to mention that there are significant improvements in all the areas, I believe here are the things that are a must pick for every developer.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Better Tools for Developers and Designers : &lt;/strong&gt;There is a significant improvement on the development side of the story. A great visual studio 2010 integration, lot of project and item templates for SharePoint , a SharePoint explorer right inside visual studio to name a few.&amp;#160; There were lot of people who were just as annoyed with SharePoint designer as I were, I believe we don't have to deal with that anymore :).&lt;strong&gt;&lt;/strong&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;End-to-end Integration with PowerShell : &lt;/strong&gt;I believe this is a huge improvement, all the new admin funtionalities will be based on the powershell and stsadm will be there only for the backward compatibility. I think its time for me to pick some powershell book. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Improvements to lists and events : &lt;/strong&gt;There were few events that we were carving for and had to do a lot of tweaking around to hook too are available. I believe subsite creation is one of them. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;New WSS integration with LINQ :&lt;/strong&gt;Now i was behind this for quite some time. Wrote few blogs around the &lt;a href="http://sahilsagar.blogspot.com/2009/04/intersecting-to-sharepoint-list-results.html" target="_blank"&gt;same&lt;/a&gt;. Haven’t tried my hands but as per &lt;a href="http://blog.tedpattison.net/default.aspx" target="_blank"&gt;Ted&lt;/a&gt;, This is in-build. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;New client-side object model and runtime:&lt;/strong&gt; Now this is what I would say the best improvement, We can develop on a now server platform. Oh.. what a relief.&amp;#160; The operating system needs to be 64 bit and that's about it. You can develop on your vista and windows 7 platform. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;There are also other improvements that are worth mentioning but i would take that up in the next blog.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-199474781286629708?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/199474781286629708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=199474781286629708&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/199474781286629708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/199474781286629708'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/12/sharepoint-2010-new-features-for.html' title='SharePoint 2010 : New features for developers'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5281072684413709918</id><published>2009-12-17T13:16:00.001-08:00</published><updated>2009-12-17T13:16:18.062-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010 Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='error'/><category scheme='http://www.blogger.com/atom/ns#' term='Developer Training kit'/><title type='text'>SharePoint 2010: Unable to find the web application error</title><content type='html'>&lt;p&gt;Its not way back when i first got the same &lt;a href="http://sahilsagar.blogspot.com/2007/05/web-application-at-could-not-be-found.html" target="_blank"&gt;error&lt;/a&gt; for SharePoint 2007. This time the reason is different though. &lt;/p&gt;  &lt;p&gt;SharePoint 2010 works over 64 bit. So when you get this error messages, Please go to the project setting and make sure that the build output is not x86. Both 64 bits and any CPU will work as the options.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5281072684413709918?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5281072684413709918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5281072684413709918&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5281072684413709918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5281072684413709918'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/12/sharepoint-2010-unable-to-find-web.html' title='SharePoint 2010: Unable to find the web application error'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-2318234384500619296</id><published>2009-12-17T13:02:00.001-08:00</published><updated>2009-12-17T13:02:15.584-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010 Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='Developer Training kit'/><title type='text'>SharePoint 2010 Developer Training Kit</title><content type='html'>&lt;p&gt;Microsoft has published the developer training kit (BETA) for SharePoint 2010. You can find the download &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=bfd1603b-7550-4b8e-be85-4215a5069b90" target="_blank"&gt;here&lt;/a&gt;. Please grab a copy and start playing&lt;/p&gt;  &lt;p&gt;I promise to put some more posts as i play around with the training kit.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-2318234384500619296?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/2318234384500619296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=2318234384500619296&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2318234384500619296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2318234384500619296'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/12/sharepoint-2010-developer-training-kit.html' title='SharePoint 2010 Developer Training Kit'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-6469447991832559429</id><published>2009-07-29T08:09:00.001-07:00</published><updated>2009-07-29T08:09:47.173-07:00</updated><title type='text'>Costing and Availability of Windows Azure</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Microsoft recently announced the availability and the commercials of the Window Azure Platform. You can read out more details of the plans and other details &lt;a href="http://blogs.msdn.com/windowsazure/archive/2009/07/14/confirming-commercial-availability-and-announcing-business-model.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Few important point from the blog.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Computing time which essentially means the fixed cost of having the application/service on cloud is at&amp;#160; $0.12 / hour.&lt;/li&gt;    &lt;li&gt;SQL Azure : Web edition 1 GB&amp;#160; at $9.99 and Business edition 10 GB @99.99.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;So if you were to plan setting up a simple web app on the cloud, think again. &lt;/p&gt;  &lt;p&gt;This led me to think again about the usage scenarios of Azure and which application suits the Azure cloud. May be the next blog post entry. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-6469447991832559429?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/6469447991832559429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=6469447991832559429&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6469447991832559429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6469447991832559429'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/07/costing-and-availability-of-windows.html' title='Costing and Availability of Windows Azure'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5001011249828027277</id><published>2009-07-15T00:23:00.001-07:00</published><updated>2009-07-15T00:23:59.812-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Preview'/><category scheme='http://www.blogger.com/atom/ns#' term='Features'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>SharePoint 2010 Previews</title><content type='html'>&lt;p&gt;Microsoft has release SharePoint 2010 previews. There are sneak peek available for developers and IT professionals along with an overview about the features.&lt;/p&gt;  &lt;p&gt;You can find the videos &lt;a href="http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Hope to see a lot of features in the release!!!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5001011249828027277?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5001011249828027277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5001011249828027277&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5001011249828027277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5001011249828027277'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/07/sharepoint-2010-previews.html' title='SharePoint 2010 Previews'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-4792601193407327296</id><published>2009-07-10T00:12:00.001-07:00</published><updated>2009-07-10T00:12:11.912-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Usage Scenarios'/><category scheme='http://www.blogger.com/atom/ns#' term='Licencing'/><category scheme='http://www.blogger.com/atom/ns#' term='Features'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='Uses'/><title type='text'>Different Usage Scenarios of SharePoint</title><content type='html'>&lt;p&gt;A post after quite some days, however a post long awaited.&lt;/p&gt;  &lt;p&gt;The reason for the delay in this post is that i have moved from Bangalore to Gurgaon and joined a new company &lt;a href="http://www.sapient.com" target="_blank"&gt;Sapient&lt;/a&gt; here.&lt;/p&gt;  &lt;p&gt;Back to the post, I wanted to write about this post for quite some time. The post is about how different people see SharePoint or in a nut shell different implementation scenarios of SharePoint. I would also like to talk about what flavor (WSS, MOSS, MOSS Enterprise etc) would work best in which scenario from a licensing point of view.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1. &lt;u&gt;Public facing sites&lt;/u&gt;&lt;/strong&gt; : This is usually the most widely used usage scenario of SharePoint these days. The sites usually run on anonymous access or some kind of form authentication. The advantage here is that it saves a log of development time and you get features like Search and lists for free. A list of the SharePoint public facing can be found &lt;a href="http://www.wssdemo.com/Pages/websites.aspx" target="_blank"&gt;here&lt;/a&gt;.&amp;#160; In a scenario like this, I think WSS should be the choice as it will save you a lot of money and will provide you with the features required in the public facing site.&lt;/p&gt;  &lt;ul&gt;   &lt;ul&gt;     &lt;li&gt;&lt;u&gt;Features required&lt;/u&gt; : Anonymous access, Membership Providers, Search and Lists&lt;/li&gt;      &lt;li&gt;&lt;u&gt;Suggested flavor&lt;/u&gt;: WSS 3.0        &lt;br /&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;2. &lt;strong&gt;Corporate Intranet :&lt;/strong&gt; I would like to divide the corporate intranet&amp;#160; into couple of subcategories for further discussion.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;&lt;em&gt;Collaboration and Content Management&lt;/em&gt;&lt;/strong&gt; : A lot of companies use SharePoint for their Collaboration features. Most of the software companies are using it as a standard for collaboration and sharing the information across the project teams. The documents are shared from all the project teams usually in document libraries. Also the information about the audience is very important in this case.&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;u&gt;Features required&lt;/u&gt; : Team Site, Active Directory Sync, Groups, Audience Targeting, Record Management, People Search.&lt;/li&gt;      &lt;li&gt;&lt;u&gt;Suggested flavor&lt;/u&gt;: MOSS Standard.&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;&lt;em&gt;BI and Planning&lt;/em&gt;&lt;/strong&gt;: As the product is getting matured, the industry have started using the Microsoft BI offerings for providing them the dashboards of the information. These dashboards help them take the key business decisions.&amp;#160; This is not just SharePoint but a combination of the complete offering from Microsoft BI offering using SQL Server, SharePoint and Performance Point on top of it.&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;u&gt;Features required&lt;/u&gt; : Excel Services, BI features, Report Center etc.&lt;/li&gt;      &lt;li&gt;&lt;u&gt;Suggested flavor&lt;/u&gt;: MOSS Enterprise.&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Hope this gave a very high level idea of the usage scenarios of SharePoint. Please feel free to comment if you think some information is not accurate.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Regards.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-4792601193407327296?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/4792601193407327296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=4792601193407327296&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4792601193407327296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4792601193407327296'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/07/different-usage-scenarios-of-sharepoint.html' title='Different Usage Scenarios of SharePoint'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-2665507436812935658</id><published>2009-05-19T04:07:00.001-07:00</published><updated>2009-05-19T04:07:45.461-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CLOUD Computing'/><category scheme='http://www.blogger.com/atom/ns#' term='AZURE'/><title type='text'>Windows Azure: Developer Perspective</title><content type='html'>&lt;p&gt;My last post talked about what is there in Windows Azure as a platform. This post will be concentrating on what do i have in windows azure as a developer. Lets get into the layers and see what is offered in the platform at each layer level.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Presentation Layer&lt;/strong&gt; : We can host our aspx files in Windows Azure. You need to download the windows azure sdk and develop the aspx file as your will develop it for a normal hosted site. The complete integrated development experience of Visual Studio is available and the development is inline with what we have done till now. Once you develop the pages, you need to publish them on windows azure.&lt;/p&gt;  &lt;p&gt;You can get the tool kit and lot of starting material from &lt;a href="http://msdn.microsoft.com/hi-in/azure/default(en-us).aspx" target="_blank"&gt;here&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The difference here is that you need to first create a cloud service so that you can publish over the cloud and then you need to develop your website under that ( We refer it as web role in Windows Azure)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/ShKS8dv1VCI/AAAAAAAAMiA/yGuD2QO5lWI/s1600-h/Visual%20Studio%20Azure%5B4%5D.png"&gt;&lt;img title="Visual Studio Azure" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="326" alt="Visual Studio Azure" src="http://lh4.ggpht.com/_ddkYnxI4Hkg/ShKS97Sql3I/AAAAAAAAMiE/fD0bl-WskNE/Visual%20Studio%20Azure_thumb%5B2%5D.png?imgmax=800" width="446" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Web Role : A web role in the the Cloud computing service is for developing the&amp;#160; presentation layer, very similar to a web project from a developer perspective.&lt;/li&gt;    &lt;li&gt;Worker Role : A worker role for the sake of simplicity can be considered as a custom service that we can create on the cloud which will be running all the time.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ddkYnxI4Hkg/ShKS-rEODfI/AAAAAAAAMiI/nyIZwR054FI/s1600-h/RolesInCloudComputing%5B4%5D.png"&gt;&lt;img title="RolesInCloudComputing" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="368" alt="RolesInCloudComputing" src="http://lh5.ggpht.com/_ddkYnxI4Hkg/ShKS_1BvAiI/AAAAAAAAMiM/OHl-K4jECK0/RolesInCloudComputing_thumb%5B2%5D.png?imgmax=800" width="209" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;How we pass information from the web to the worker role will be covered in the coming articles when we talk about the code in detail.&lt;/p&gt;  &lt;p&gt; Once you create your presentation layer( the web services can be hosted along the same lines) you can publish it on the cloud. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The presentation layer is of no use if we cant connect it to some sort of database.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Database Layer&lt;/strong&gt;: Windows Azure lets your presentation layer talk to the data present in the cloud or to the data present on premise that you don't want to host on the cloud.&amp;#160; In my personal opinion the current database layer ( i.e. SQL Services) cant be used as&amp;#160; a complete database layer for holding the data for an full blown application. There is lot of work that we need to do that to get our existing layer to work with the database on cloud. To give a very high level overview, The data on the cloud is stored in the tables that we create on cloud and which can be accessed using the REST protocol. I am not going into the details of it as there are talks around there its been reworked from its launch in the last year PDC.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Infrastructure Blocks: &lt;/strong&gt;Infrastructure blocks like authentication and authorization , logging etc are built in for the cloud. &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Access Control: The Access control in Azure is rule based. You can define roles like if the user belong to a specified group he has access to certain resources.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Hope this gave a basic understanding of what all is available in cloud. lets dive into the code from the next part of the series.&lt;/p&gt;  &lt;p&gt;Happy Reading!!!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-2665507436812935658?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/2665507436812935658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=2665507436812935658&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2665507436812935658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2665507436812935658'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/05/windows-azure-developer-perspective.html' title='Windows Azure: Developer Perspective'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_ddkYnxI4Hkg/ShKS97Sql3I/AAAAAAAAMiE/fD0bl-WskNE/s72-c/Visual%20Studio%20Azure_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-4519587516648929116</id><published>2009-05-13T23:58:00.001-07:00</published><updated>2009-05-14T02:05:52.153-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CLOUD Computing'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows Azure'/><category scheme='http://www.blogger.com/atom/ns#' term='AZURE'/><title type='text'>Beginners understanding of Windows Azure</title><content type='html'>&lt;p&gt;There is a lot of Buzz around Windows Azure and i believe i am late writing about it, doing my basic work on LINQ to SharePoint and other things. But better late than never.&lt;/p&gt;&lt;p&gt;Let us first understand what is cloud computing. It becomes the basics of the understanding of azure as that is one way of achieving cloud computing. Cloud Computing as the term reflects is computing over the cloud i.e. computing over the web. There are couple of terms that came into existence over the last couple of year which gave birth to this concept of cloud computing. &lt;/p&gt;&lt;p&gt;Lets take a scenario: A company SoftTouch corporation wants to get a new app like facebook into the market. The funds are limited. and the future is gray. A common story with lot of ISV’s these days right?&lt;/p&gt;&lt;p&gt;There are lot of things that can happen in this situation. &lt;/p&gt;&lt;p&gt;1. The company spends a lot on the development and the deployment takes a back. The site is very good but we don't have infrastructure to churn out the performance that we need.&lt;/p&gt;&lt;p&gt;2. The company spends a lot on the infrastructure and the development takes a back. The site is not great. The features envisioned are not there.&lt;/p&gt;&lt;p&gt;Cloud computing came as a solution to the above scenarios. A concept is floating around called Unity computing. Unity computing refers to using computing resources in the same way you would use electricity or water; that is, as a metered service in which you only pay for what you use. The Unity computing can eliminate the need to purchase and maintain hardware and application platforms, and to develop core services.&lt;/p&gt;&lt;p&gt;So Cloud computing is using the resources setup by some third party over the web. You can scale up and down when you need, thus lowering the risk involved in the investment.&lt;/p&gt;&lt;p&gt;Another example could be an IPL site. the load on this site during the IPL days will be drastic but what happens once the IPL is over. if we have bought the server and the supporting material, its a waste till the next IPL. &lt;/p&gt;&lt;p&gt;Keeping all this in mind, Microsoft has come up with an offering for Cloud computing which is &lt;a href="http://www.microsoft.com/azure/windowsazure.mspx" target="_blank"&gt;Windows Azure.&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ddkYnxI4Hkg/SgvBEVKUXBI/AAAAAAAAMh4/JNG_TlAuB8Q/s1600-h/Azure%5B6%5D.png"&gt;&lt;img title="Azure" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="258" alt="Azure" src="http://lh3.ggpht.com/_ddkYnxI4Hkg/SgvBF3RcNiI/AAAAAAAAMh8/szWnirLd9Dk/Azure_thumb%5B2%5D.png?imgmax=800" width="429" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;It provides a support of dynamically increasing the resources and allows the platform services. &lt;/p&gt;&lt;p&gt;Hope this gave a basic of what Azure is all about. I will write in detail about the services it provide in the next blog.&lt;/p&gt;&lt;p&gt;Happy reading.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-4519587516648929116?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/4519587516648929116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=4519587516648929116&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4519587516648929116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4519587516648929116'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/05/beginners-understanding-of-windows.html' title='Beginners understanding of Windows Azure'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_ddkYnxI4Hkg/SgvBF3RcNiI/AAAAAAAAMh8/szWnirLd9Dk/s72-c/Azure_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-8990130434920576338</id><published>2009-04-19T07:27:00.000-07:00</published><updated>2009-04-19T07:52:04.920-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint List Set Operation LINQ Intersection Union'/><title type='text'>Intersecting SharePoint list results using LINQ</title><content type='html'>&lt;span style="font-family:arial;"&gt;There are lot of times when we come across scenarios for making a Union, Intersection, or performing a join on the sharepoint results that we got out of running a CAML query.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Consider this.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;we run a CAML query using &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;SPQuery query1 = new SPQuery();&lt;br /&gt;query1.Query = &lt;&lt;your&gt;&gt;;&lt;br /&gt;searchResultsCollection1 = list.GetItems(query1);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Now you run another query...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;SPQuery query2 = new SPQuery();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;query2.Query = &lt;&lt;your&gt;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;searchResultsCollection2 = list.GetItems(query2);&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;Now consider that you want to perform an intersection of these two results. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;Lets see it using LINQ. Make sure you have a reference of LINQ on top of your file&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;IEnumerable&lt;splistitem&gt; EnumResultsCollection1 = searchResultsCollection1.Cast&lt;splistitem&gt;();&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;IEnumerable&lt;splistitem&gt; EnumResultsCollection2 = searchResultsCollection2.Cast&lt;splistitem&gt;();&lt;/p&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;Before we get into the set operations, Lets create a class for comparing the list items. This class just implements IEqualityComparer&lt;splistitem&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Here is the structure of the class.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;public class SPListItemEqualityComparer:IEqualityComparer&lt;splistitem&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;{&lt;br /&gt;public bool Equals(SPListItem firstItem, SPListItem secondItem)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;return firstItem.UniqueId == secondItem.UniqueId; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;}&lt;br /&gt;public int GetHashCode(SPListItem obj) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;return obj.ID;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;Now lets get into some set operations.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Intersection:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;SPListItemEqualityComparer comparer = new SPListItemEqualityComparer();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Intersection= EnumResultsCollection1.Intersect&lt;splistitem&gt;(EnumResultsCollection2, comparer);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;strong&gt;Union:&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;SPListItemEqualityComparer comparer = new SPListItemEqualityComparer();&lt;br /&gt;Intersection= EnumResultsCollection1.Union&lt;splistitem&gt;(EnumResultsCollection2, comparer);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;strong&gt;Except:&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;SPListItemEqualityComparer comparer = new SPListItemEqualityComparer();Intersection= EnumResultsCollection1.Except&lt;splistitem&gt;(EnumResultsCollection2, comparer);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;And there are lot more like Joins... Will take up in the another post...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Happy Reading&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size:100%;"&gt;sahil&lt;/span&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-8990130434920576338?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/8990130434920576338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=8990130434920576338&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8990130434920576338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8990130434920576338'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/04/intersecting-to-sharepoint-list-results.html' title='Intersecting SharePoint list results using LINQ'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-6693121130101790812</id><published>2009-04-09T21:34:00.001-07:00</published><updated>2009-04-09T21:35:21.752-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LINQ MOSS Query LINQ To Object'/><title type='text'>Using LINQ Queries in SharePoint.</title><content type='html'>&lt;div align="center"&gt;Using LINQ Queries in SharePoint.&lt;br /&gt;&lt;br /&gt;I am fascinated to work on LINQ and over the last few days I tried to use the LINQ queries on SharePoint List items.&lt;br /&gt;&lt;br /&gt;I understand that this could be a performance overhead for the list/document libraries having a lot of documents; however I am sure that this makes your code to be much more readable than using the CAML queries.&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;Consider the following scenario:&lt;br /&gt;I need to get the distinct values for a column in the list.&lt;br /&gt;One way to do this is iterate over the listitems in a for each loop and keep adding them to a list, if the list does not already contains them.&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;Here is the LINQ to Object code for achieving the same.&lt;br /&gt;&lt;br /&gt;(from SPListItem Z in list.Items&lt;br /&gt;                            where Z[currentField.Title] != null&lt;br /&gt;                            select Z[currentField.Title]&lt;br /&gt;                    ).Distinct()&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;Where currentField is the field on which we want to select the distict.&lt;br /&gt;Interesting???&lt;br /&gt;&lt;br /&gt;Let’s take one more example which is little complex. Let’s try to perform a query on a list.&lt;br /&gt;Let’s say we want to select items where the value of a particular column falls in a list of values. This is almost like using a IN clause in the SQL query.&lt;br /&gt;&lt;br /&gt;filteredCollection = (from SPListItem Z in currentItemList&lt;br /&gt;                                          where&lt;br /&gt;                                                filterCriterias.Contains(Z[currentField.Title].ToString())&lt;br /&gt;&lt;br /&gt;select Z).ToList&lt;splistitem&gt;();&lt;br /&gt;&lt;br /&gt;Where filterCriterias is the list of values that you want to check against and filteredCollection is the list of SPListItem.&lt;br /&gt;&lt;br /&gt;Better than creating a CAML query dynamically???&lt;br /&gt;&lt;br /&gt;Let me know your thoughts.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-6693121130101790812?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/6693121130101790812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=6693121130101790812&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6693121130101790812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6693121130101790812'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2009/04/using-linq-queries-in-sharepoint.html' title='Using LINQ Queries in SharePoint.'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-8028110494410127773</id><published>2008-11-10T04:16:00.000-08:00</published><updated>2008-11-10T04:25:27.589-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Entity Framework LINQ to Entities Sample'/><title type='text'>Getting Started with Entity Framework</title><content type='html'>&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div align="left"&gt;                                                &lt;strong&gt;Getting started with Entity Framework&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;I was working from quite some days on the entity framework which is now a part of .net Visual Studio 2008 SP1.&lt;br /&gt;&lt;br /&gt;The whole idea is an interesting shift from the database oriented thinking to the thinking in the Objects and Classes diagrams. The whole exercise starts from coming up with the domain model of the project and then creating the structure around it. Thought that’s the crux of the framework, Today I am not going to discuss about that and keep myself limited to the scope of just getting the bare minimum setup working from the Entity framework.&lt;br /&gt;&lt;br /&gt;I have used the adventure works 2008 DB as I am using SQL server 2008. I am sure it will be no different from working on SQL 2005.&lt;br /&gt;&lt;br /&gt;The Visual studio needs to be 2008 SP1 for the Entity Framework templates to come up.&lt;br /&gt;So lets start&lt;br /&gt;&lt;br /&gt;1. Create a Console Application and go to file new and add a entity framework data model. &lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5267001972514985714" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 198px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_ddkYnxI4Hkg/SRgmY2MJlvI/AAAAAAAALM8/8X8vgBeBIyw/s320/ItemTemplate.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;2. Setup the data model to connect to your database. Its adventure works in my case. The connection properties are self explainatory so I am not discussion them in details. However there are couple of things to be discussed here.&lt;br /&gt;a. If you look at the connection string, its talks about some connection in the resource files.&lt;br /&gt;b. There is a mention of few files like csdl, ssdl, msl.&lt;br /&gt;I will be discussing them towards the end of the post. For the time being you can keep them like this. &lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5267002265163767858" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 290px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_ddkYnxI4Hkg/SRgmp4ZDoDI/AAAAAAAALNE/n2FAsmMpG6M/s320/EntityConnectionString.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;3. You need to select the tables and views that you want in the project. This will show you the association of those tables and views. For the sake of simplicity I am adding only the product table. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;4. Once you are done adding it, You will see that you have a designer class along with your model which has the Object Context class and the product class. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;5. Not you can fetch the data from the database using the Linq to entities. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5267002640952396866" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 358px; CURSOR: hand; HEIGHT: 125px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_ddkYnxI4Hkg/SRgm_wUDDEI/AAAAAAAALNM/tdxRAHPqX90/s320/Code.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;6. Here is the output. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5267002822947872306" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 193px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_ddkYnxI4Hkg/SRgnKWTJnjI/AAAAAAAALNU/I6vUmihLBN4/s320/Output.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;To dive in deep into those three files.&lt;br /&gt;CSDL : The file is Conceptual Schema definition language . This file contains information about the members of the classes that will be generated in the designer. i.e. the conceptual schema of the product.&lt;br /&gt;SSDL : Storage Schema definition language. This file contains the information about the database structure. i.e. the Storage schema&lt;br /&gt;MSL: Mapping Schema Language.&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;This file contains the information about the mapping schema.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;Intrested is looking at these file. Change the following setting and have these files generated in the output folder and have a look at them. A must see for all. &lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;img id="BLOGGER_PHOTO_ID_5267003405966609314" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 303px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_ddkYnxI4Hkg/SRgnsSNpi6I/AAAAAAAALNc/fZw_7WjvefU/s320/Properties.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;Happy reading.&lt;br /&gt;&lt;br /&gt;Sahil &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-8028110494410127773?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/8028110494410127773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=8028110494410127773&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8028110494410127773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8028110494410127773'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2008/11/getting-started-with-entity-framework.html' title='Getting Started with Entity Framework'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ddkYnxI4Hkg/SRgmY2MJlvI/AAAAAAAALM8/8X8vgBeBIyw/s72-c/ItemTemplate.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-217901194167339395</id><published>2008-07-23T18:06:00.000-07:00</published><updated>2008-07-23T18:09:20.426-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>WCF :Known Types</title><content type='html'>We all know that the building blocks of a WCF service are:&lt;br /&gt;• Address – Specifies the location (URI) of the service.&lt;br /&gt;• Binding – Specifies how to talk to the service.&lt;br /&gt;• Contract – Specifies what the service can do? The functionalities (aka – Operations) it exposes.&lt;br /&gt;We can see that the “Contract” of a service defines its capabilities to the consumer. It also specifies the type of data that the service returns. This is done so that both the service and consumer is aware of the type of data that is interchanged between them.&lt;br /&gt;In WCF this is achieved via the class/method level attributes:&lt;br /&gt;• [ServiceContract] / [OperationContract] – Defines the service classes and its operations&lt;br /&gt;• [DataContract] / [DataMember] – Defines any custom types and the members that need to be exposed and that are accepted or returned by the services.&lt;br /&gt;The [DataContract] / [DataMember] attributed brings into the picture the WCF’s default object serializer known as the DataContractFormatSerializer. This serializer is responsible for serializing all data that is transmitted over the wire. By default this engine serializes primitive types, common objects, enums, Collections and anything that implements IXmlSerializable or ISerializable, giving us a nice out-of-the-box solution for our objects to be transmitted over the wire.&lt;br /&gt;The serialized data it generates does not contain information about the .Net CLR type from which this data was serialized. Because of such a design, the WCF objects are described via the service metadata (WSDL) and are interoperable with any kind of consumer and therefore are not restricted to .Net CLR types only.&lt;br /&gt;But when we're writing closed systems, where we can control both ends of the pipe and use WCF code, it can get limiting with the above design. Let us take up a common scenario:&lt;br /&gt;[ServiceContract]&lt;br /&gt;interface MyService&lt;br /&gt;{&lt;br /&gt;   [OperationContract]&lt;br /&gt;   void SendMessage(IMessage message);&lt;br /&gt;}&lt;br /&gt;In the above scenario we define a service contract on an interface with a method “SendMessage” that takes a single parameter of IMessage type. &lt;br /&gt;Now what would happen if I try to send an object of a concrete IMessage implementation to this contract? When the service receives the message and tries to deserialize the message parameter, it gets stuck, as there's no way to create an object of the interface IMessage from the serialized data, and the data itself carries no information on how to deserialize it to the concrete object.&lt;br /&gt;&lt;br /&gt;Now if I change the service contract to something like the following:&lt;br /&gt;[ServiceContract]&lt;br /&gt;interface MyService&lt;br /&gt;{&lt;br /&gt;   [OperationContract]&lt;br /&gt;   void SendMessage(MessageBase message);&lt;br /&gt;}&lt;br /&gt;What would happen if I try to send an object of DerivedMessage that is inherited from MessageBase? The system would again get stuck up and fail to work. &lt;br /&gt;WCF provides a couple of solutions to the above problem.&lt;br /&gt;1) The base type can specify the derived as a known type using the “KnownType” attribute as shown below.&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;[KnownType(typeof(DerivedMessage))]&lt;br /&gt;public class MessageBase&lt;br /&gt;{&lt;br /&gt;    …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;2) Known types can be specified in the config as shown below.&lt;br /&gt;&lt;br /&gt;&lt;configuration&gt;&lt;br /&gt;  &lt;system.runtime.serialization&gt;&lt;br /&gt;    &lt;dataContractSerializer&gt;&lt;br /&gt;      &lt;declaredTypes&gt;&lt;br /&gt;         &lt;add type="[Fully Qualified Assembly Reference]"&gt;&lt;br /&gt;            &lt;knownType type="[Fully Qualified Assembly Reference]" /&gt;&lt;br /&gt;         &lt;/add&gt;&lt;br /&gt;      &lt;/declaredTypes&gt;&lt;br /&gt;    &lt;/dataContractSerializer&gt;&lt;br /&gt;  &lt;/system.runtime.serialization&gt;&lt;br /&gt;&lt;/configuration&gt;&lt;br /&gt;&lt;br /&gt;The config defines the types and the known types in the xml hierarchy. This is equivalent to defining KnownType in the base type as described in #1.&lt;br /&gt;&lt;br /&gt;3) In service model known types can be added via the ServiceKnownType attribute along with either ServiceContract or OperationContract.&lt;br /&gt;&lt;br /&gt;[ServiceContract]&lt;br /&gt;public interface MyService&lt;br /&gt;{&lt;br /&gt;   [OperationContract]&lt;br /&gt;   [ServiceKnownType(typeof(MessageBase))]&lt;br /&gt;   void SendMessage(IMessage message);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Declaring ServiceKnownType on an operation (method) causes the known type to be applied for all the parameters for the operation. Declaring on the service contract (class) causes the known type to be applied for all the parameters of all the operations. Let us take these up in more detail…&lt;br /&gt;&lt;br /&gt;KnownType attribute&lt;br /&gt;Your data contract class may be the subclass of another data contract class. WCF requires that every level in the class hierarchy explicitly opt in for a given data contract, because the DataContract attribute is not inheritable. WCF does not allow you to use a subclass of a data contract class instead of its base class. Let us take up a service contract example:&lt;br /&gt;[DataContract]&lt;br /&gt;class Contact&lt;br /&gt;{&lt;br /&gt;   [DataMember]&lt;br /&gt;   public string FirstName;&lt;br /&gt;&lt;br /&gt;   [DataMember]&lt;br /&gt;   public string LastName;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Customer : Contact&lt;br /&gt;{&lt;br /&gt;   [DataMember]&lt;br /&gt;   public int OrderNumber;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[ServiceContract]&lt;br /&gt;interface IContactManager&lt;br /&gt;{&lt;br /&gt;   //Cannot accept Customer object here:&lt;br /&gt;   [OperationContract]&lt;br /&gt;   void AddContact(Contact contact);&lt;br /&gt;&lt;br /&gt;   //Cannot return Customer objects here:&lt;br /&gt;   [OperationContract]&lt;br /&gt;   Contact[] GetContacts( );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;According to our common C# principles the above code is perfectly valid and it is in fact the basis of object oriented principles too.&lt;br /&gt;But in WCF world things are slightly different. Using the Metadata Exchange the client can create the proxy for the Customer class and also the Contact class. &lt;br /&gt;&lt;br /&gt;Contact contact = new Customer( );&lt;br /&gt;contact.FirstName = "Juval";&lt;br /&gt;contact.LastName = "Lowy";&lt;br /&gt;&lt;br /&gt;ContactManagerClient proxy = new ContactManagerClient( );&lt;br /&gt;proxy.AddContact(contact);                                    // Service call will fail&lt;br /&gt;&lt;br /&gt;proxy.Close( );&lt;br /&gt;&lt;br /&gt;The above code compiles fine, but during run-time it fails. The reason is that when you pass in a Customer instead of a Contact as in the previous example, the service does not know how to deserialize the Contact object it received, because it does not know about the Customer object.&lt;br /&gt;Much the same way, when a Customer is returned instead of a Contact, the client does not know how to deserialize it, because all it knows about are contacts, and not customers.&lt;br /&gt;&lt;br /&gt;The solution is to explicitly tell WCF about the Customer class using the KnownTypeAttribute. The KnownType attribute allows you to designate acceptable subclasses for the data contract.&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;[KnownType(typeof(Customer))]&lt;br /&gt;class Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Customer : Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;On the host side, the KnownType attribute affects all contracts and operations using the base class, across all services and endpoints, allowing it to accept subclasses instead of base classes. In addition, it includes the subclass in the metadata, so that the client will have its own definition of the subclass, and can pass the subclass instead of the base class. If the client also applies the KnownType attribute on its copy of the base class, then it can receive the known subclass back from the service.&lt;br /&gt;&lt;br /&gt;You can apply the KnownType attribute multiple times to inform WCF about as many known types as required:&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;[KnownType(typeof(Customer))]&lt;br /&gt;[KnownType(typeof(Person))]&lt;br /&gt;class Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Customer : Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Person : Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ServiceKnownType attribute&lt;br /&gt;The downside of using the KnownType attribute is that it may be too broad in scope. WCF also provides the ServiceKnownTypeAttribute. Instead of using the KnownType attribute on the base data contract, the ServiceKnownType attribute is applied on a specific operation on the service side, so that only the operation marked by the attribute can accept the known subclass.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;[DataContract]&lt;br /&gt;class Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Customer : Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[ServiceContract]&lt;br /&gt;interface IContactManager&lt;br /&gt;{&lt;br /&gt;   [OperationContract]&lt;br /&gt;   [ServiceKnownType(typeof(Customer))]&lt;br /&gt;   void AddContact(Contact contact);&lt;br /&gt;&lt;br /&gt;   [OperationContract]&lt;br /&gt;   Contact[] GetContacts( );&lt;br /&gt;}&lt;br /&gt;In the above example, only the AddContact() operation (method) can accept the subclass object, whereas the GetContact() cannot return a subclass object array..&lt;br /&gt;&lt;br /&gt;When the ServiceKnownType attribute is applied at the contract level, all the operations on that contract can accept the known subclass across all implementing services:&lt;br /&gt;[ServiceContract]&lt;br /&gt;[ServiceKnownType(typeof(Customer))]&lt;br /&gt;interface IContactManager&lt;br /&gt;{&lt;br /&gt;   [OperationContract]&lt;br /&gt;   void AddContact(Contact contact);&lt;br /&gt;&lt;br /&gt;   [OperationContract]&lt;br /&gt;   Contact[] GetContacts( );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Similar to the KnownType attribute, you can apply the ServiceKnownType attribute multiple times to inform WCF about as many known types as required:&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Customer : Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Person : Contact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[ServiceContract]&lt;br /&gt;[ServiceKnownType(typeof(Customer))]&lt;br /&gt;[ServiceKnownType(typeof(Person))]&lt;br /&gt;interface IContactManager&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Interface Considerations&lt;br /&gt;&lt;br /&gt;The base type of a data contract Class or a Struct can be an Interface. You can use such a base interface in your service contract or as data members in data contracts, as long as you use the ServiceKnownType attribute to designate the actual data type:&lt;br /&gt;&lt;br /&gt;interface IContact&lt;br /&gt;{&lt;br /&gt;   string FirstName&lt;br /&gt;   {get;set;}&lt;br /&gt;   string LastName&lt;br /&gt;   {get;set;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[DataContract]&lt;br /&gt;class Contact : IContact&lt;br /&gt;{&lt;br /&gt; …&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[ServiceContract]&lt;br /&gt;[ServiceKnownType(typeof(Contact))]&lt;br /&gt;interface IContactManager&lt;br /&gt;{&lt;br /&gt;   [OperationContract]&lt;br /&gt;   void AddContact(IContact contact);&lt;br /&gt;&lt;br /&gt;   [OperationContract]&lt;br /&gt;   IContact[] GetContacts( );&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-217901194167339395?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/217901194167339395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=217901194167339395&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/217901194167339395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/217901194167339395'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2008/07/wcf-known-types.html' title='WCF :Known Types'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-1900245020899800440</id><published>2008-07-23T17:45:00.000-07:00</published><updated>2008-07-23T18:04:10.895-07:00</updated><title type='text'>Object Model OR SOA</title><content type='html'>Today the discussion with my client came to a point where we are trying to evaluate that we need to support an object based API for the enterprise system of my client or do we have our system exposed as a set of WCF services i.e. make it a SOA.&lt;br /&gt;What I believe is that both the approaches are good and have their own pros and cons. There are a couple of factors that I think we need to take into consideration here.&lt;br /&gt;• Understand the need of the system and try to understand the scenario in which the system will be used. For example if somebody wants to write a complete client on top of the API exposed, then I think it makes sense to expose this as an Object model as it will be easy for the API consumers to make this as their framework. On the other hand if it is just a matter of the integration than I think the SOA will be a better fit.&lt;br /&gt;• Time to market: This is a very critical factor in this decision. We need to understand that object model requires a lot of ground work upfront as your cant do iterative development in its true sense. Its easy with SOA as we can keep adding the interfaces for consumption.&lt;br /&gt;• Uncertain requirement: I think in this case SOA is the way to go.&lt;br /&gt;&lt;br /&gt;I would also recommend reading the &lt;a href="http://docs.oasis-open.org/soa-rm/v1.0/soa-rm.html"&gt;Reference Model for SOA&lt;/a&gt;. And this &lt;a href="http://www.keithelder.net/blog/archive/2008/05/02/How-To-Not-Screw-Up-Your-Application-Object-Model.aspx"&gt;article&lt;/a&gt; on Object model.&lt;br /&gt;&lt;br /&gt;Sahil&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-1900245020899800440?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/1900245020899800440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=1900245020899800440&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1900245020899800440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1900245020899800440'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2008/07/object-model-or-soa.html' title='Object Model OR SOA'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5100812323136921560</id><published>2008-03-29T12:08:00.000-07:00</published><updated>2008-03-29T12:10:40.823-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>One year completion mail @ Aditi</title><content type='html'>Hello everybody,&lt;br /&gt;Not sure if all of you know the story of how attitude and determination took an young chap to heights of glory. &lt;br /&gt;&lt;br /&gt;Here is a snap shot of what happened. This Dude joined in an organization which was known for its strenuous yet incredibly challenging work culture. The dude seemed to like the work culture right from day one. Alas who else would stay back till 10:00 in the night right from day one.!!! &lt;br /&gt;&lt;br /&gt;Anyways he joined as a Dev Engineer yet had tremendous confidence in his potential that he opted for a cool house in one of the poshest area with a swimming pool view from his balcony . Boys are always boys.&lt;br /&gt;From day one there was no turning back and it's amazing to know that in a span of 1 year he grew to a stature which people outside might thing crazy, highly impossible, absurd. Yet he broke all these barriers and completed in 1 year in flying colors. The truth is he still does not have the time to count the number of feathers added to his cap. &lt;br /&gt;&lt;br /&gt;Well lots all join together in a wild applause for the dude or should I say the current super man of Ranjith's Wagon wheel. &lt;br /&gt;Applause to Sahil on completing 1 long year in Aditi and breaking all odds and setting new standards. We bow down in respect and awe &lt;br /&gt;&lt;br /&gt;Pal,&lt;br /&gt;Jerry&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5100812323136921560?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5100812323136921560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5100812323136921560&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5100812323136921560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5100812323136921560'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2008/03/one-year-completion-mail-aditi.html' title='One year completion mail @ Aditi'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-324165377394473851</id><published>2007-11-11T00:42:00.000-08:00</published><updated>2007-11-11T00:43:44.178-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>Understand and welcome the ones who are new to this industry</title><content type='html'>Didn’t get any chance to write anything off-late.  I was busy working on the project and roaming all around the world. &lt;br /&gt;Here I am back and will try to keep up the habit intact. This time thinking about writing stuff not on technical things but some stuff about the problem that I am visualizing off late. During this course of last months, I have interacted with lot of new hires who have joined our company and also I was one among the recruitment guys for the company. &lt;br /&gt;I have seen the college pass-out students changing into a corporate professional during this time period. I have seen them changing from looking all around and looking here and there as if everything is a mirage, and then turning into a Software engineer who is spending his night in the office to overcome a problem given by his senior which could have been solved in matter of minutes by his seniors.&lt;br /&gt;I have seen these kids planning to spend their first salary (Ah.. that was a real big day even for me). Seen some of them planning for a Booze party while the other planning to send this money home.. Plan start from thinking about buying a motor bike to buying a music instrument …to buying weights to make a small gym at home and the list is endless.&lt;br /&gt;All this remind of the desires that they have in their hearts and they want to fulfill these desires as fast as possible and sometime back of my heads I think that is it because of these desires that these guys have joined this IT industry OR because they really wanted to come to this IT Industry… (This is a separate thread that I will take on later  ).&lt;br /&gt;This is the time when they really need somebody to look up to and think that ya, It’s worth spending the &lt;a href="http://sahilsagar.blogspot.com/2007/09/sleepless-nights.html"&gt;Sleepless nights&lt;/a&gt; in the organization. They should not be thinking of just gaining a year or two experience and then venture into something else. &lt;br /&gt;It becomes the responsibility of all of us who are in the industry for more time than these new comers to make them feel comfortable here and ignite the passion in them to achieve the goals. By doing this we are doing a favor to ourselves because at the end of the day we know that these new guns are the base of the growing IT organization and more and more passion they have for this IT industry, The more beneficial is this for them and us also.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-324165377394473851?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/324165377394473851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=324165377394473851&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/324165377394473851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/324165377394473851'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/11/understand-and-welcome-ones-who-are-new.html' title='Understand and welcome the ones who are new to this industry'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-4051238713022462828</id><published>2007-09-03T13:13:00.001-07:00</published><updated>2008-04-07T15:04:10.602-07:00</updated><title type='text'>Sleepless Nights</title><content type='html'>Sleepless Nights&lt;br /&gt;&lt;br /&gt;It’s going to be a year since I joined Aditi. Let me share few things what I have learned in this years…&lt;br /&gt;&lt;br /&gt;Somebody said that Dreams are not the ones that come in night, but are the ones that give you “Sleepless Nights” and its really true, at least for me in the last one year.&lt;br /&gt;&lt;br /&gt; Joined this company as a Development engineer and became a part of a breed called “Aditians” and still can’t forget the first day when I came here and met the people of this amazing company, started working on the first day itself and left at 10:00 p.m. on the first day.&lt;br /&gt;&lt;br /&gt;Here I learned what its means to be passionate about work, passionate about your dreams and what does it means to go through all those Sleepless Nights.&lt;br /&gt;&lt;br /&gt;I worked and I worked and I worked and worked… and saw other working like crazy. I saw people joining the company and I saw people leaving the company because of there own reasons but the only reason that was common in all of them was Sleepless Nights.&lt;br /&gt;&lt;br /&gt;The release and the crunch in the schedules and the pressure to perform has given every body quite a lot of things to take back home with them along with the salary, one of them is satisfaction of completing the things. I have seen people working continuously late hours for weeks in office and getting Sleepless Nights in office and at home. But I have seen them enjoying that also. (See a guy writing this silly blog at 2:00 a.m. in the night)&lt;br /&gt;&lt;br /&gt;Aditi has given me a lot and I am thankful to Aditi from the core of my heart, but have I given Aditi something, May be yes, May be no (But surely have given Aditi few Sleepless Nights of mine).&lt;br /&gt;&lt;br /&gt;Still I am trying to get an answer of question that is it worth spending all these Sleepless Nights in the office while your family is waiting for you at home?&lt;br /&gt;&lt;br /&gt;May be yes for few …. Or may be no for other……&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-4051238713022462828?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/4051238713022462828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=4051238713022462828&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4051238713022462828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/4051238713022462828'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/09/sleepless-nights.html' title='Sleepless Nights'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5069191109329777401</id><published>2007-07-26T08:08:00.000-07:00</published><updated>2007-07-26T08:45:46.054-07:00</updated><title type='text'>Enabling the COM addin in office 2003</title><content type='html'>Are you facing the problem of breakpoints not being hit in office 2003 add-in project while debugging?&lt;br /&gt;&lt;br /&gt;Here is one possible Solution&lt;br /&gt;1. Go to Help&lt;br /&gt;2. Click on About Microsoft Office Word &lt;br /&gt;3. Now you will find Disabled Items.&lt;br /&gt;4. Open Disabled Items and Select the one you need to re-enable.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5069191109329777401?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5069191109329777401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5069191109329777401&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5069191109329777401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5069191109329777401'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/07/enabling-com-addin-in-office-2003.html' title='Enabling the COM addin in office 2003'/><author><name>Nagendra</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://2.bp.blogspot.com/-OKbnRRgo_8U/TYcmPWrLMeI/AAAAAAAAE-s/iyyfs7ly1Hc/s220/IMG_2369.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5783272248512848437</id><published>2007-07-25T10:59:00.001-07:00</published><updated>2007-07-25T10:59:49.921-07:00</updated><title type='text'>Blog is down</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5783272248512848437?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5783272248512848437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5783272248512848437&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5783272248512848437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5783272248512848437'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/07/blog-is-down.html' title='Blog is down'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-8273184004580888966</id><published>2007-06-14T17:12:00.000-07:00</published><updated>2007-06-14T17:22:28.889-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>Its about a week left</title><content type='html'>Its about a week left that I will head back to India.&lt;br /&gt;&lt;br /&gt;Home sweet home....&lt;br /&gt;&lt;br /&gt;But I learned a lot in these past three months. Coming to US was never a dream for me and I believe will never will be. However in the heart of my heart I know that coming to this place was a right decision that I took.&lt;br /&gt;&lt;br /&gt;There are some very good things about the people here that I learned, Being independent to the extent possible, Courtesy, Helping other and Living life to the fullest to name a few. I never thought before coming here that I will be enjoying my stay this much in US.&lt;br /&gt;&lt;br /&gt;I have seen people living their life to the fullest here and doing whatever they want to do in life irrespective of the fact that what others will think of them. Hope we will be able imbibe all these qualities in the next generations in India as well.&lt;br /&gt;&lt;br /&gt;Thanks to all the people in US who have make my stay memorable here. I owe you all a lot. &lt;br /&gt;&lt;br /&gt;These three month flew like anything and now its time to get back to my home. I know that I am goona miss something there, atleast the good things about US and some of the people from whom I have learned a lot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-8273184004580888966?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/8273184004580888966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=8273184004580888966&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8273184004580888966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8273184004580888966'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/06/its-about-week-left.html' title='Its about a week left'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-472131022525879029</id><published>2007-05-22T21:41:00.000-07:00</published><updated>2007-05-22T21:46:32.108-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tracing MOSS exception handling logging'/><title type='text'>Tracing and Logging in MOSS and WSS 3.0</title><content type='html'>Tracing and Logging in MOSS and WSS 3.0&lt;br /&gt;&lt;br /&gt;I was thinking through the ways of putting a logging and tracing mechanism in place in for MOSS and WSS 3.0 features or webparts or for that matter any application that uses the Sharepoint object model.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I came across few alternatives.&lt;br /&gt;&lt;br /&gt;1. Putting the events in the Event Viewer of the system: This is the traditional method of putting the tracing mechanism in place but I would say this is not as efficient as it should be. It has few drawbacks like we need to have access to the production system in order to check the trace and need to have specific right to access the event viewer&lt;br /&gt;&lt;br /&gt;2. Putting the events log in a text file: This is also among one of the oldest why where we have the information about the trace file in the application settings section of the web config and we write the information to this file. This will also have the same set of draw back the above approach has.&lt;br /&gt;&lt;br /&gt;One of the alternative ways to perform this is to add the trace data in audit information using the MOSS custom event audit feature and have the information as the custom Audit data xml there.&lt;br /&gt;&lt;br /&gt;This takes us to a place where audit database will act like a trace database sink for us.&lt;br /&gt;&lt;br /&gt;Using this we can have the trace writing capabilities available on the fly with the object model of Sharepoint and then we can write a webpart to read and view the traces over the internet/intraner.&lt;br /&gt;&lt;br /&gt;This could be extended to the fact to put the audit information in the form of a document which can be downloaded for the support people on request.&lt;br /&gt;&lt;br /&gt;I am not sure how successful this approach is going to be. So I request some comments from you people to do some more brain storming on this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Sahil&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note: There are lot of resources available on the net to how to access the audit log and add data to it so I am not going into the details for that. I am trying to keep this post as conceptual as possible. May be with the comments with the post I will put some code with this.&lt;br /&gt;&lt;a href="http://www.sharepointkicks.com/kick/?url=http://sahilsagar.blogspot.com/2007/05/tracing-and-logging-in-moss-and-wss-30.html"&gt;&lt;img src="http://www.sharepointkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://sahilsagar.blogspot.com/2007/05/tracing-and-logging-in-moss-and-wss-30.html" border="0" alt="kick it on SharePointKicks.com" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-472131022525879029?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/472131022525879029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=472131022525879029&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/472131022525879029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/472131022525879029'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/05/tracing-and-logging-in-moss-and-wss-30.html' title='Tracing and Logging in MOSS and WSS 3.0'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-2153341955108588014</id><published>2007-05-08T19:30:00.000-07:00</published><updated>2007-05-08T19:35:45.127-07:00</updated><title type='text'>The Web Application at could not be found</title><content type='html'>I was trying to use the Sharepoint object model from a web service and I was getting the error&lt;br /&gt;&lt;br /&gt;"The Web Application at could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application"&lt;br /&gt;&lt;br /&gt;However if I run the same code from the Console app or a window app the code works.&lt;br /&gt;&lt;br /&gt;After spending some time on some of the forums and some of the articles I found nothing.&lt;br /&gt;&lt;br /&gt;When I solved this problem problem I thought that that could help somebody out here.&lt;br /&gt;&lt;br /&gt;The solution lies in the account that is used by the application pool of the web application to connect to the Sharepoint site.&lt;br /&gt;&lt;br /&gt;Change the application pool acoount to a user who had the access to the site as an administrator and as well has an access to the database.&lt;br /&gt;&lt;br /&gt;A quick solution would be to change the account to a Local service account.&lt;br /&gt;&lt;br /&gt;Hope this saves some time &lt;br /&gt;&lt;br /&gt;Cheers!&lt;br /&gt;Sahil&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-2153341955108588014?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/2153341955108588014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=2153341955108588014&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2153341955108588014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2153341955108588014'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/05/web-application-at-could-not-be-found.html' title='The Web Application at could not be found'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-2055417454712834800</id><published>2007-05-07T09:16:00.000-07:00</published><updated>2007-05-08T08:12:27.316-07:00</updated><title type='text'>Sharepoint search engine</title><content type='html'>I have added a sharepoint search enginr to the site.&lt;br /&gt;Please feel free to give comments to add the sites which you think are good.&lt;br /&gt;&lt;br /&gt;Please check it &lt;a href="http://www.google.com/coop/cse?cx=006547785864917407168%3A9u9mdukbanw"&gt;here  &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Feel free to contribute to this engine&lt;br /&gt;&lt;br /&gt;Regard,&lt;br /&gt;Sahil&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-2055417454712834800?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/2055417454712834800/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=2055417454712834800&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2055417454712834800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/2055417454712834800'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/05/blog-post.html' title='Sharepoint search engine'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-8671029162631147664</id><published>2007-05-06T18:40:00.001-07:00</published><updated>2007-05-06T18:40:04.914-07:00</updated><title type='text'>Best coding practices for WSS and MOSS</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Here is the link for best coding practices for SharePoint and WSS. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa973248.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa973248.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Regards,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Sahil&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-8671029162631147664?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/8671029162631147664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=8671029162631147664&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8671029162631147664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8671029162631147664'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/05/best-coding-practices-for-wss-and-moss.html' title='Best coding practices for WSS and MOSS'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-7368699066765071818</id><published>2007-05-06T18:39:00.001-07:00</published><updated>2007-05-06T19:08:02.026-07:00</updated><title type='text'>Best Practice analyzer for SharePoint</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;I came across the best practice analyzer tool for MOSS. We can download it here&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=cb944b27-9d6b-4a1f-b3e1-778efda07df8&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=cb944b27-9d6b-4a1f-b3e1-778efda07df8&amp;amp;displaylang=en&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;This will be helpful to everybody who are installing /deploying SharePoint 2007&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Regards,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Sahil&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;/div&gt; &lt;br /&gt;&lt;a href="http://www.sharepointkicks.com/kick/?url=http://sahilsagar.blogspot.com/2007/05/best-practice-analyzer-for-sharepoint.html"&gt;&lt;img src="http://www.sharepointkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://sahilsagar.blogspot.com/2007/05/best-practice-analyzer-for-sharepoint.html" border="0" alt="kick it on SharePointKicks.com" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-7368699066765071818?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/7368699066765071818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=7368699066765071818&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7368699066765071818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7368699066765071818'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/05/best-practice-analyzer-for-sharepoint.html' title='Best Practice analyzer for SharePoint'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-6267387416034701230</id><published>2007-05-03T13:05:00.001-07:00</published><updated>2007-05-03T13:05:17.537-07:00</updated><title type='text'>Comparison :Unit Testing Frameworks</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;I searched for some articles on Unit testing frameworks and comparison, Here are the ones that give the overview.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;a href="http://weblogs.asp.net/rosherove/archive/2006/09/24/MbUnit-vs.-NUnit-Vs.-Team-System-Unit-Testing-_2D00_-Choosing-a-unit-test-framework.aspx"&gt;http://weblogs.asp.net/rosherove/archive/2006/09/24/MbUnit-vs.-NUnit-Vs.-Team-System-Unit-Testing-_2D00_-Choosing-a-unit-test-framework.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;This article follows the above article&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;a href="http://weblogs.asp.net/rosherove/archive/2006/09/25/The-future-of-unit-testing-tools-_2D00_-MbUnit_2C00_-NUnit_2C00_-NMock-and-FIT.aspx"&gt;http://weblogs.asp.net/rosherove/archive/2006/09/25/The-future-of-unit-testing-tools-_2D00_-MbUnit_2C00_-NUnit_2C00_-NMock-and-FIT.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;There are few points that goes against the Unit testing in Team System. Here is the one that I found most problematic:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;Inheritance&lt;/b&gt; &lt;b&gt;Not Supported &lt;/b&gt;- If you can't inherit, your are prone to sloppy design which will eventually lead you to code duplication and/or poor coverage. see &lt;a href="http://vaultofthoughts.net/TestMethodInTheAbstractClass.aspx"&gt;&lt;span style='color:windowtext;text-decoration:none'&gt;http://vaultofthoughts.net/TestMethodInTheAbstractClass.aspx&lt;/span&gt;&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Regards,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;Sahil&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-6267387416034701230?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/6267387416034701230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=6267387416034701230&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6267387416034701230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/6267387416034701230'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/05/comparison-unit-testing-frameworks.html' title='Comparison :Unit Testing Frameworks'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-3983841688861345605</id><published>2007-04-19T18:14:00.000-07:00</published><updated>2007-04-19T18:18:01.645-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sharepoint Office Integration Best Better'/><title type='text'>Office Integration with Sharepoint</title><content type='html'>Microsoft has launched the most awaited document for &lt;br /&gt;Microsoft Office Programs and SharePoint Products and Technologies Integration – Fair, Good, Better, Best.......&lt;br /&gt;&lt;br /&gt;This is a must for anybody working with Microsoft office technologies and Sharepoint integration  ...&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=E0D05A69-F67B-4D37-961E-2DB3C4065CB9&amp;displaylang=en"&gt;Download it here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-3983841688861345605?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/3983841688861345605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=3983841688861345605&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/3983841688861345605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/3983841688861345605'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/04/office-integration-with-sharepoint.html' title='Office Integration with Sharepoint'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-7176626017043213909</id><published>2007-03-31T15:00:00.000-07:00</published><updated>2007-04-19T18:14:00.360-07:00</updated><title type='text'>KPI's In Analysis services and BSM: Which way to go and When</title><content type='html'>I was really surprised not to find any thing on the net talking about the difference in the way we should use the KPI's from SSAS directly or to use BSM.&lt;br /&gt;&lt;br /&gt;So I thought putting something here could be of some help.&lt;br /&gt;&lt;br /&gt;Here we go.....&lt;br /&gt;&lt;br /&gt;Key Performance Indicators (KPI) are quantifiable measurements, agreed to beforehand, that reflect the critical success factors of an organization.&lt;br /&gt;&lt;br /&gt;A KPI is nothig but a combination of an Actual value, a Budgeted/Target value and an indicator. There are different products available in market to create or rather a better word is define KPI's.&lt;br /&gt;&lt;br /&gt;With the latest rave about the Business Intelligence Microsoft is spending a lot of amount on its Business Intelligence Offerings in the product like &lt;a href="http://www.microsoft.com/sql/technologies/analysis/default.mspx"&gt;SQL Server Analysis services&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/bsm/"&gt;Business Scorecard Manager&lt;/a&gt; ( &lt;a href="http://office.microsoft.com/fr-fr/performancepoint/FX101680481036.aspx"&gt;Performance Point server&lt;/a&gt; is coming as the new enhanced version of BSM)and &lt;a href="http://office.microsoft.com/fr-fr/sharepointserver/FX100492001036.aspx"&gt;MOSS 2007&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The organisations are looking at using this products in conjunction to provide the Business Intelligence offering to the clients.&lt;br /&gt;&lt;br /&gt;The data is coming from the legacy systems to and a cube is created out of the data.&lt;br /&gt;A picture is worth thousand words so here is a diagram to explain the architecture&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5048264715761010578" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp2.blogger.com/_ddkYnxI4Hkg/Rg8KAxsSx5I/AAAAAAAAAa0/pyldaosaBrU/s320/MOSS.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;Now as far as KPI's are concerned They can be defined at 2 places&lt;br /&gt;1. Define the KPIs directly into SSAS cube : In this approach you can directly pull the KPI's into MOSS 2007 from analysis services. This approach is suitable in the case when the objective is just to show the KPI on a portal.&lt;br /&gt;&lt;br /&gt;2. Define the KPI's in BSM: This approach is far more flexible than defining the KPI's in Analysis services. Using this approach we can have diff rent kind of reports attached with KPI and we can do score carding on the base of these KPI's. In this approach the data stills comes from the SSAS cube but only the definition of the KPIs goes into the Business scorecard manager.&lt;br /&gt;&lt;br /&gt;There is also a utility with the name KPIUtil available which can help you transfer the KPI's from SSAS to BSM and vice versa.&lt;br /&gt;&lt;br /&gt;Let me know if somebody is more intrested in understanding how we should implement this.&lt;br /&gt;&lt;br /&gt;Cheers to BI !!!!!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.sharepointkicks.com/kick/?url=http://sahilsagar.blogspot.com/2007/03/kpis-in-analysis-services-and-bsm-which.html"&gt;&lt;img src="http://www.sharepointkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://sahilsagar.blogspot.com/2007/03/kpis-in-analysis-services-and-bsm-which.html" border="0" alt="kick it on SharePointKicks.com" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-7176626017043213909?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/7176626017043213909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=7176626017043213909&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7176626017043213909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7176626017043213909'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/03/kpis-in-analysis-services-and-bsm-which.html' title='KPI&apos;s In Analysis services and BSM: Which way to go and When'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_ddkYnxI4Hkg/Rg8KAxsSx5I/AAAAAAAAAa0/pyldaosaBrU/s72-c/MOSS.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-1185032527041720567</id><published>2007-03-30T16:42:00.000-07:00</published><updated>2007-03-30T16:46:52.040-07:00</updated><title type='text'>Just went for some Khalbali</title><content type='html'>&lt;a href="http://bp3.blogger.com/_ddkYnxI4Hkg/Rg2hOhsSx4I/AAAAAAAAAas/1ypSesUQ8WI/s1600-h/khalbali.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://bp3.blogger.com/_ddkYnxI4Hkg/Rg2hOhsSx4I/AAAAAAAAAas/1ypSesUQ8WI/s320/khalbali.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5047868028286584706" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I went to a place called "Nandi Hills" few days before. Doesn't it look like the place in Rang de Basanti&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-1185032527041720567?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/1185032527041720567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=1185032527041720567&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1185032527041720567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1185032527041720567'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/03/just-went-for-some-khalbali.html' title='Just went for some Khalbali'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_ddkYnxI4Hkg/Rg2hOhsSx4I/AAAAAAAAAas/1ypSesUQ8WI/s72-c/khalbali.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-1498254019238277644</id><published>2007-03-14T05:26:00.000-07:00</published><updated>2007-03-14T05:40:55.684-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rich Text Editor Sharepoint 2007 MOSS'/><title type='text'>Rich Text Editor in MOSS</title><content type='html'>Have you ever tried creating a rich text editor in MOSS 2007?&lt;br /&gt;&lt;br /&gt;After searching google for quite some time, I landed up only with telerik editor. However those of you who have worked on MOSS can make out that it gives you rich text editing capabilities when you select a column as a rich text column.&lt;br /&gt;&lt;br /&gt;The secret here is a page under the _layout directory which is htmledit.aspx.&lt;br /&gt;This page has the html editing capabilities.&lt;br /&gt;&lt;br /&gt;Use the code to pop up the window&lt;br /&gt;&lt;br /&gt;function PopupHTMLEditor(FieldName) // NEW FUNCTION &lt;br /&gt;{ &lt;br /&gt;var rc = new Array(0,0); &lt;br /&gt;rc = &lt;br /&gt;window.showModalDialog('/_layouts/1033/htmledit.aspx?Target='+FieldName, &lt;br /&gt;document.getElementById(FieldName), &lt;br /&gt;'dialogHeight:600px;dialogWidth:550px;'); &lt;br /&gt;document.getElementById(FieldName).value = rc; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;Here the data that you want to edit should be present in a field with ID FieldName and once we are done with the editing the data will come back in the rich text format to the same field.&lt;br /&gt;&lt;br /&gt;Enjoy!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-1498254019238277644?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/1498254019238277644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=1498254019238277644&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1498254019238277644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/1498254019238277644'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/03/rich-text-editor-in-moss.html' title='Rich Text Editor in MOSS'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-5779558257999278473</id><published>2007-03-14T05:11:00.000-07:00</published><updated>2007-03-14T05:21:08.769-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows Workflows examples'/><title type='text'>Workflows : Something More than the Approval Workflow</title><content type='html'>Since the time I started working on workflows, I am not able to come out of the example of the Submitter and Reviewer/Approvar workflow. &lt;br /&gt;&lt;br /&gt;Let me do it now :)&lt;br /&gt;&lt;br /&gt;Here are some more examples which can help us understand about the concept.&lt;br /&gt;&lt;br /&gt;Backup System:&lt;br /&gt;&lt;br /&gt;Consider the process of taking the backup of enterprise system: User credentials are stored in an xml file. A workflow starts connects to the underlying data source, send the data to a service to check for the credentials, and goes to a wait state. if it gets a go ahead it moves forward and do all the tasks needed to take the backup and then finally send a mail for acknowledge saying the backup is complete else there is a fallback plan to send a mail of wrong credentials. &lt;br /&gt;&lt;br /&gt;All these tasks can be taken care by separate activities. &lt;br /&gt;This example is not something that is a very good candidate for workflow But yes we can start from this.&lt;br /&gt;&lt;br /&gt;I will keep adding inputs.&lt;br /&gt;&lt;br /&gt;-sahil&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-5779558257999278473?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/5779558257999278473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=5779558257999278473&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5779558257999278473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/5779558257999278473'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/03/workflows-something-more-than-approval.html' title='Workflows : Something More than the Approval Workflow'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-3935708300922601220</id><published>2007-03-14T05:05:00.000-07:00</published><updated>2007-03-14T05:09:45.370-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reporting services MOSS 2007'/><title type='text'>Reporting Services with MOSS 2007</title><content type='html'>I was working on a machine where we have reporting services installed and then we need to Install Sharepoint on the same. &lt;br /&gt;&lt;br /&gt;Since they both work on port 80 by default you need to get one of them down to get them working !!  It is not the case. &lt;br /&gt;&lt;br /&gt;You can have reports and reportserver virtual directories under the site which is actuall a MOSS site and that worked for me.&lt;br /&gt;&lt;br /&gt;If you have them on diffrent ports the problem that you are likly to face is that when you try rendering those reports on the MOSS Site it prompts you for your name and password 2 times since both are running on diffrent ports.&lt;br /&gt;&lt;br /&gt;Hope this helps!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-3935708300922601220?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/3935708300922601220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=3935708300922601220&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/3935708300922601220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/3935708300922601220'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/03/reporting-services-with-moss-2007.html' title='Reporting Services with MOSS 2007'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-8487611590756417151</id><published>2007-03-14T05:04:00.001-07:00</published><updated>2007-03-14T05:04:30.522-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Using BSM in MOSS 2007'/><title type='text'>Using BSM in MOSS 2007</title><content type='html'>&lt;strong&gt;Using BSM in MOSS 2007&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Business Scorecard manager or BSM as it is known to be has three components to it&lt;br /&gt;1. The Scorecard Builder : where you build the KPI’s&lt;br /&gt;2. The Webservice where you publish the KPI’s &lt;br /&gt;3. The Database in SQL server where you can store the version and mapping.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Rendering these KPI’s on the Sharepoint requires you to add BPMConnection string to the web.config of the site and then add the Office Scorecard View and Office reports view webpart to the sharepoint site.&lt;br /&gt;&lt;br /&gt;You can install these webparts using &lt;br /&gt;&lt;br /&gt;stsadm.exe -o addwppack -filename Web_Part_Pack_name [-url URL] [-globalinstall] [-force]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-8487611590756417151?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/8487611590756417151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=8487611590756417151&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8487611590756417151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/8487611590756417151'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2007/03/using-bsm-in-moss-2007.html' title='Using BSM in MOSS 2007'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-3495220363684596171</id><published>2006-11-26T20:40:00.000-08:00</published><updated>2006-11-26T20:49:10.083-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sharepoint problem reinstalling'/><title type='text'>Problem Reinstalling Sharepoint 2007 : Language not supported</title><content type='html'>If you are facing a problem reinstalling sharepoint 2007 beta. and the error message while configuring the database days Language not supported.&lt;br /&gt;&lt;br /&gt;Please try the following:&lt;br /&gt;&lt;br /&gt;open the notepad and add the following lines&lt;br /&gt;Windows Registry Editor Version 5.00&lt;br /&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0\ServerLanguage]&lt;br /&gt;"1033"=""&lt;br /&gt;&lt;br /&gt;save as fix.reg and run it.&lt;br /&gt;&lt;br /&gt;This should fix the error.&lt;br /&gt;&lt;br /&gt;The reason is that while unistalling Sharepoint, This key gets lost&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-3495220363684596171?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/3495220363684596171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=3495220363684596171&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/3495220363684596171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/3495220363684596171'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2006/11/problem-reinstalling-sharepoint-2007.html' title='Problem Reinstalling Sharepoint 2007 : Language not supported'/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-339275521350076912.post-7235441654810434930</id><published>2006-11-23T21:37:00.000-08:00</published><updated>2006-11-23T21:38:09.292-08:00</updated><title type='text'></title><content type='html'>&lt;a href="http://www.nerdtests.com/ft_nq.php?im"&gt;&lt;img src="http://www.nerdtests.com/images/ft/nq.php?val=5771" alt="I am nerdier than 90% of all people. Are you nerdier? Click here to find out!"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/339275521350076912-7235441654810434930?l=sahilsagar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sahilsagar.blogspot.com/feeds/7235441654810434930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=339275521350076912&amp;postID=7235441654810434930&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7235441654810434930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/339275521350076912/posts/default/7235441654810434930'/><link rel='alternate' type='text/html' href='http://sahilsagar.blogspot.com/2006/11/i-am-nerdier-than-90-of-all-people-are.html' title=''/><author><name>Sahil Sagar</name><uri>http://www.blogger.com/profile/07307346081126264434</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp1.blogger.com/_ddkYnxI4Hkg/R5RdH4U8AVI/AAAAAAAADhM/bL_soRaLXz8/S220/IMG_0223.jpg'/></author><thr:total>0</thr:total></entry></feed>
