<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-691739770978360344</atom:id><lastBuildDate>Tue, 10 Nov 2009 17:30:57 +0000</lastBuildDate><title>KWizCom SharePoint CRM Blog</title><description>A blog by the experts! 
The KWizCom team utilizes their experience and knowledge to give fresh insight on Microsoft's SharePoint and CRM Products and Technologies...</description><link>http://kwizcom.blogspot.com/</link><managingEditor>noreply@blogger.com (Shai Petel)</managingEditor><generator>Blogger</generator><openSearch:totalResults>101</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/KwizcomSharepointBlog" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-6601265129237726016</guid><pubDate>Tue, 10 Nov 2009 16:26:00 +0000</pubDate><atom:updated>2009-11-10T08:48:06.388-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">install</category><category domain="http://www.blogger.com/atom/ns#">WSP</category><title>How to install WSP SharePoint Solution Package</title><description>&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Download the zip file: &lt;a href="http://www.kwizcom.com/objects/Blog/Install%20WSP.zip"&gt;WSP Installer&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Extract the batch file from the zip into the "send to" folder (for example: "C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\SendTo").&lt;br /&gt;Now you can simply use "right click -&gt; send to -&gt; install WSP" to install any WSP file.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;a href="http://1.bp.blogspot.com/_TWHHFUIBngE/SvmXRC2l7XI/AAAAAAAAAHs/R7FVE3RLHpU/s1600-h/wsp+install.png"&gt;&lt;img style="MARGIN: 0px 10px 10px 0px; WIDTH: 400px; FLOAT: left; HEIGHT: 152px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5402515547087039858" border="0" alt="" src="http://1.bp.blogspot.com/_TWHHFUIBngE/SvmXRC2l7XI/AAAAAAAAAHs/R7FVE3RLHpU/s400/wsp+install.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;a href="http://www.kwizcom.com/objects/Blog/Install%20WSP.zip"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-6601265129237726016?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/11/how-to-install-wsp-sharepoint-solution.html</link><author>noreply@blogger.com (Shai Petel)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_TWHHFUIBngE/SvmXRC2l7XI/AAAAAAAAAHs/R7FVE3RLHpU/s72-c/wsp+install.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-1893825784031910471</guid><pubDate>Thu, 05 Nov 2009 23:12:00 +0000</pubDate><atom:updated>2009-11-05T15:19:51.181-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Sun VirtaulBox</category><category domain="http://www.blogger.com/atom/ns#">Virtual Machine</category><title>Using HyperV VHD in Sun Virtual Box - no bootable medium found</title><description>Since last week I started migrating all my HyperV VM's into Sun's Virtual Box.&lt;br /&gt;&lt;br /&gt;All my VMs migrated without a problem (after I learned I have to completely remove the HyperV before the virtual box would start...) except for one.&lt;br /&gt;&lt;br /&gt;Trying to start it gave me an error: "fatal no bootable medium found system halted virtualbox" and I could not even use the VHD to format and reinstall it!&lt;br /&gt;&lt;br /&gt;This one was a virtual windows 2008, 64bit with MOSS 2010 installed.&lt;br /&gt;It was my only win2008 and my only 64bit VM - so I assumed this was the problem...&lt;br /&gt;&lt;br /&gt;But, as it so happen, this was also the only VM I created in HyperV! All others were migrated from VPC or Virtual Server editions.&lt;br /&gt;&lt;br /&gt;So, after a lot of research, formatting, copying, pasting I found the solution.&lt;br /&gt;&lt;br /&gt;It appears that HyperV created VMs are not the same as VPC ones, and Sun VirtualBox does not recognize the HyperV VHDs correctly.&lt;br /&gt;&lt;br /&gt;The quick and easy fix (which I didn't believe would work but did!) was to install VPC and use the VPC VHD wizard utility to compact the HyperV VHD.&lt;br /&gt;&lt;br /&gt;Don't ask me why, but it did the trick and now my VHD is bootable in Sun VirtualBox!&lt;br /&gt;&lt;br /&gt;Since I did not found any post on that matter anywhere I thought this might be handy for some of you.&lt;br /&gt;&lt;br /&gt;Cheers&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-1893825784031910471?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/11/using-hyperv-vhd-in-sun-virtual-box-no.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-6172120161782235931</guid><pubDate>Tue, 03 Nov 2009 15:35:00 +0000</pubDate><atom:updated>2009-11-03T07:40:15.999-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><category domain="http://www.blogger.com/atom/ns#">Social</category><title>Social networking in SharePoint 2010</title><description>Here is a list of new things I picked up playing with the demo's and at the SPC2009 as well,&lt;br /&gt;&lt;br /&gt;It turns out MS invested a lot in social networking in the new version of SharePoint, but is it enough? You decide,&lt;br /&gt;&lt;br /&gt;I suppose many organizations are still new to the concept of employees having a rich virtual profile, but for some (larger once usually) this has become the reality.&lt;br /&gt;&lt;br /&gt;So, what is new?&lt;br /&gt;Among other things, I saw:&lt;br /&gt;1. Silverlight organization chart – very nice one.&lt;br /&gt;2. Activity feed.&lt;br /&gt;3. My status note (integrated with live messenger if you want, or enter it in the portal if you don’t use live messenger/communicator)&lt;br /&gt;4. Option to add twitter or other online community info to your profile with minimum customization (no real dev needed), Twitter has REST API this is why it is easy to use. Perhaps face book needs some dev.&lt;br /&gt;5. Tagging, comments, ratings&lt;br /&gt;6. Social data service&lt;br /&gt;7. Relevance of search results is effected by my colleagues!&lt;br /&gt;&lt;br /&gt;That’s it so far. Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-6172120161782235931?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/11/social-networking-in-sharepoint-2010.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-4815350250308982555</guid><pubDate>Mon, 26 Oct 2009 18:52:00 +0000</pubDate><atom:updated>2009-10-26T12:09:11.536-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><category domain="http://www.blogger.com/atom/ns#">Cascading Lookup Field</category><title>New in SharePoint 2010 Lookup fields</title><description>SharePoint 2010 introduces some new features in the lookup fields area.&lt;br /&gt;&lt;br /&gt;The bad news are, I'm afraid, that still all lookups are restricted to the same site collection.&lt;br /&gt;&lt;br /&gt;But, from now on you will be able to include more then one field in the remote list when creating a lookup. So that if you are creating a lookup to "customers" list, you can ask to see customer's first name, last name, company and email instead of just "full name" or "customer name" as before.&lt;br /&gt;&lt;br /&gt;Another new feature allows you to enforce your lookup data integrity, meaning you can either prevent deleting an item that has other items connected to it, or cascade the delete action to delete all dependant items.&lt;br /&gt;This is good for customers who has "project" list and "project tasks" list, where a task is connected to a project.&lt;br /&gt;So, by deleting a project you can make sure that all that project tasks are also deleted.&lt;br /&gt;Or - if you'd like, to prevent deleting a project wiht active tasks! which is also cool.&lt;br /&gt;&lt;br /&gt;Finally, there are some news on reverse lookup. Although SharePoint 2010 does not fully support reverse lookup fields it has a new API for getting all related items for a specific list items.&lt;br /&gt;This means, that this new API will get all items in SharePoint that has a lookup that is connected to the current item. This new API also comes with a new web part OOTB you can just drop at any list item view form to see its connected items.&lt;br /&gt;But still, if you want real reverse lookup functionality you will have to go with a 3rd party solution like KWizCom's &lt;a href="http://www.kwizcom.com/ProductPage.asp?ProductID=709&amp;ProductSubNodeID=710"&gt;Cascading lookup plus field type&lt;/a&gt; currently available for SharePoint 2007 but will be upgraded as soon as there is a public release of 2010.&lt;br /&gt;&lt;br /&gt;Another thing that is greatly missing (and is available in our cascading lookup) is... Cascading feature! :) I mean the option to filter items in one lookup field based on one or more other fields on the same page. Thus creating a 2 or more levels of dependant fields (Country/City/Street fields for example)&lt;br /&gt;Well, good thing SharePoint 2010 is not perfect - gives us more work to do, right? :)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enjoy your migraion!&lt;br /&gt;If you need help, feel free to contact us,&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-4815350250308982555?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/new-in-sharepoint-2010-lookup-fields.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-5474723632139062806</guid><pubDate>Mon, 26 Oct 2009 18:32:00 +0000</pubDate><atom:updated>2009-10-26T11:52:17.606-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Client Code</category><category domain="http://www.blogger.com/atom/ns#">REST</category><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><title>Using LINQ and REST in SharePoint 2010</title><description>Among the new APIs available for SharePoint 2010 developers the 2 new most significant ones are LINQ and REST.&lt;br /&gt;&lt;br /&gt;While developing server side code, you can now make use of LINQ to query your lists instead of using CAML.&lt;br /&gt;The benefit of using LINQ is clear, working with strong typed objects and cutting down the development effort by a lot.&lt;br /&gt;The problem comes when you are not sure what type of lists you are going to work on, and if you wish to support custom lists created by customers.&lt;br /&gt;Before you can use LINQ on SharePoint you need to create an object that represent that list structure, and once the list changes (the fields you are querying are removed to renamed) you will not be able to use it anymore :(&lt;br /&gt;&lt;br /&gt;But - remember, working on the server site with the SPList object is dengerous as well, as all you get are item[field_name] resutls, which is not strongly types and requies many validations to be done!&lt;br /&gt;&lt;br /&gt;While working on the client side, you will be able to work using the client side object model (much like the server side, using Site/Web/List instead of SPSite/SPWeb/SPList we have on the server) but still that will not be strongly typed for you.&lt;br /&gt;The news are that you will be able to use LINQ in the client side, that will allow you to automatically render the correct proxy objects in the client side (accessible from javascript / silverlight) and will be strongly typed!&lt;br /&gt;&lt;br /&gt;So, by all means - start learning SharePoint REST syntax and commands...&lt;br /&gt;here are some available commands to get you started:&lt;br /&gt;$filter=&lt;br /&gt;$expand=&lt;br /&gt;$orderby={property}&lt;br /&gt;$skip=n&lt;br /&gt;$top=n&lt;br /&gt;$metadata – bring all metadata of that object&lt;br /&gt;&lt;br /&gt;These commands are accessible under the REST service URL which includes (sometimes) the entity name you wish to run against, like so:&lt;br /&gt;http://site/subsite/_vti_bin/ListData.svc/{Entity Name}/{Options...}&lt;br /&gt;&lt;br /&gt;This service URL can be registerd to the client using the standard ASP.NET AJAX way for registring services, and everything is made simple after that!&lt;br /&gt;&lt;br /&gt;(If you need more info on ASP.NET AJAX you should definitly check these how-to's by Joe Stagner here: http://www.asp.net/learn/ajax-videos/ and specifically on registring services here: http://www.asp.net/learn/ajax-videos/video-82.aspx)&lt;br /&gt;&lt;br /&gt;Well, are you excited as I am to move onto SharePoint 2010 yet? :)&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-5474723632139062806?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/using-linq-and-rest-in-sharepoint-2010.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-569001160879840973</guid><pubDate>Wed, 21 Oct 2009 01:22:00 +0000</pubDate><atom:updated>2009-10-20T18:24:49.545-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><category domain="http://www.blogger.com/atom/ns#">Sandbox Solution</category><title>How to override the sandboxed current site execution limitation</title><description>When you publish a solution in SharePoint as a sandbox solution, we already talked about that the proxy API will block any access to other remote site collections.&lt;br /&gt;&lt;br /&gt;An easy override to this is simple - simply use the client API and you will be able to access any share point site you wish without going through the proxy API that a sandboxed solution uses.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-569001160879840973?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/how-to-override-sandboxed-current-site.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-5784925037535506978</guid><pubDate>Wed, 21 Oct 2009 01:19:00 +0000</pubDate><atom:updated>2009-10-20T18:22:13.177-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Client Code</category><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><title>Client API in SharePoint 2010</title><description>This is what I picked up in todays great session on client code;&lt;br /&gt;&lt;br /&gt;Basically, Microsoft.SharePoint.Client is a wrapper that you can use at the client side (silverlight or javascript) to add get and update information.&lt;br /&gt;Migration of code will require start using the Client API objects instead of the current API we all know in the server, but most objects are similar to help us update our code easily.&lt;br /&gt;So - SPWeb will be web, SPList will be list etc...&lt;br /&gt;Event SPContext exists as ClientContext!&lt;br /&gt;the only difference is, that you run all your code on the clientContext object in the client side, and once you have a set of operations you wish to submit to the server you can do that by calling "clientcontext.ExecuteQuery()" or "clientcontext.ExecuteQueryAsync()" if you want the UI not to wait for the result.&lt;br /&gt;If you wish to retrieve data form server to your client you can use the “Load” or “LoadQuery” methods. LoadQuery will return a result collection and will use method syntax or linq query syntax. It will build you XML query and will send them to the server next time you call “ExecuteQuery”.&lt;br /&gt;Using the "Execute" or "Load" methods actually help reduce the number of trips done from the client to the server to reduce server load, bandwidth and improve responsiveness.&lt;br /&gt;Nothing new, except you don't have to build your own wrapper and web services if you want to run some code on your SharePoint from the client. Basically this will communicate with client by dropping JSON code from the server to the client, the client will use the JSON to work with and send queries to the server in XML format.&lt;br /&gt;I guess this will help us do less post back, as this will not be supported in wiki pages (no post back support).&lt;br /&gt;A new cool thing is the SP.CamlQuery.CreateAllItemsQuery() method that renders a CAML that returns all items for a list. This will surly get you started with CAML query – the last stand of CAML in 2010 since views and forms are now defined by XSL.&lt;br /&gt;&lt;br /&gt;More news from the SPC2009 will follow!&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-5784925037535506978?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/client-api-in-sharepoint-2010_20.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-8830871292056881089</guid><pubDate>Tue, 20 Oct 2009 17:04:00 +0000</pubDate><atom:updated>2009-10-20T10:52:15.362-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><category domain="http://www.blogger.com/atom/ns#">SPC '09</category><category domain="http://www.blogger.com/atom/ns#">SLEF</category><title>Upgrading SLFE from 2007 to 2010</title><description>&lt;span style="font-family:trebuchet ms;"&gt;This morning KWizCom’s VP R&amp;amp;D, Shai Petel, hosted an extremely well received session at Microsoft’s SharePoint 2009 conference in Vegas.&lt;br /&gt;&lt;br /&gt;The session covered three topics: building a new solution, upgrading an existing solution and version management.  Rather than speak about theory, Shai’s presentation gave attendees a firsthand perspective, based on an actual migration he did himself. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.kwizcom.com/ContentPage.asp?PageId=1546"&gt;Read more and/or see the presentation Shai gave at SPC ‘09 here&lt;/a&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-8830871292056881089?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/upgrading-slfe-from-2007-to-2010.html</link><author>noreply@blogger.com (Forest Rain)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-4468870209128273353</guid><pubDate>Mon, 19 Oct 2009 23:39:00 +0000</pubDate><atom:updated>2009-10-19T17:13:08.145-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><title>News on SharePoint 2010 from SPC09</title><description>Here are some things i picked up at the SharePoint conference 09 (announcing SharePoint 2010):&lt;br /&gt;&lt;br /&gt;* No more SharePoint "hive" (12 folder)... from now on say SharePoint Root! VSeWSS2010 will redirect it to 12 folder or 14 folder or any other folder used based on your current running version of SharePoint.&lt;br /&gt;&lt;br /&gt;* VSeWSS (Visual Stuio extensions for WSS) 2001 supports 1 and only 1 package per project. But in each project you can have as many features as you like.&lt;br /&gt;The cool thing is that the features are &lt;strong&gt;shared between projects&lt;/strong&gt; in the same solution! So you can include a feature from 1 project in several other deployment packages with all of its resources.&lt;br /&gt;&lt;br /&gt;* Sandbox solutions&lt;br /&gt;  Now you can deploy solutions in a site collection, and not on the farm.&lt;br /&gt;This means that the solution will be deployed and installed on that specific site collection.&lt;br /&gt;  Code in sandboxed solution runs inside a seperate process - not on W3WP, and has no direct access to SharePoint API. Instead it uses another proxy process that provide it with limited access to the SharePoint API. You will be able to do almost anything within your site collection, while you will have no access to remote site collections and read only acccess on your current web application and farm.&lt;br /&gt;  Some customizations are not supported within a sandbox solution, like code based workflow, site definitions etc.&lt;br /&gt;  Installing a sandbox solution is very simple - i will publish a how to with images soon but for general idea, you just need to upload it to your site collection solutions gallery (library) and activate it!&lt;br /&gt;  Sandbox solutions do not deploy any files anywhere! On first access to the solution code the SharePoint will load its code and resources into memory and will run it from memory.&lt;br /&gt;&lt;br /&gt;* VSeWSS allows you to select if you want to allow the solution to be sandboxed. Choosing so will make visual studio validate that all my elements are supported within a sandbox solution - and promt me if I add something that is not supported.&lt;br /&gt;&lt;br /&gt;* Visual web part - or is it?&lt;br /&gt;  The good: This is a new VSeWSS 2010 project template that allows you to create a user control as a web part. Simple, easy and long overdue.&lt;br /&gt;  The bad: This is not really a visual web part, its just a good old web part that loads a user control as its only child. At least all files (web part, user control files) are created, grouped and deployed for you.&lt;br /&gt;  The ugly: our old web parts we designed without a UI editor... we did our best though :)&lt;br /&gt;&lt;br /&gt;I will post more as the SPC09 continues,&lt;br /&gt;Shai Petel.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-4468870209128273353?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/news-on-sharepoint-2010-from-spc09.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-298525769310343823</guid><pubDate>Mon, 19 Oct 2009 21:01:00 +0000</pubDate><atom:updated>2009-10-19T14:06:11.479-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint 2010</category><title>Client API in SharePoint 2010</title><description>With REST, ASP.NET Ajax, Microsoft.SharePoint.Client.dll new API - and of course silverlight all built into the new platform, our next generation of applications will have to have a major UI facelift.&lt;br /&gt;&lt;br /&gt;You can expect much less page refreshes, more responsiveness and easier development proceess for more complex UI scenarios.&lt;br /&gt;&lt;br /&gt;You have to keep in mind that SP2010 wiki pages do support web parts, but &lt;strong&gt;do not&lt;/strong&gt; support postbacks!&lt;br /&gt;&lt;br /&gt;So using these client-side calls will be almost mandatory if you wish to provide advanced controls and feature rich compoents in your pages.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-298525769310343823?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/client-api-in-sharepoint-2010.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-2502351037427162878</guid><pubDate>Sun, 18 Oct 2009 18:05:00 +0000</pubDate><atom:updated>2009-10-18T11:07:42.560-07:00</atom:updated><title>Mike Geyer wins KWizCom SPC '09 expo pass!</title><description>&lt;span style="font-family:trebuchet ms;"&gt;Congratulations! Mike Geyer, Senior Manager for &lt;/span&gt;&lt;a href="http://www.hitachiconsulting.com/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;Hitachi Consulting&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt; won KWizCom’s expo hall pass for Microsoft’s SharePoint Conference ’09 beginning today in Las Vegas! &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://http//www.kwizcom.com/ContentPage.asp?PageId=1492"&gt;&lt;span style="font-family:trebuchet ms;"&gt;KWizCom is exhibiting at booth 700 and giving a speaker session on the 20th at 10:30.&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Throughout the conference KWizCom will be giving away netbooks (and other neat stuff).&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Come on by… you might be a winner! &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-2502351037427162878?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/10/mike-geyer-wins-kwizcom-spc-09-expo.html</link><author>noreply@blogger.com (Forest Rain)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-7219148694869507671</guid><pubDate>Tue, 22 Sep 2009 17:30:00 +0000</pubDate><atom:updated>2009-09-22T13:33:00.967-07:00</atom:updated><title>Troubleshooting SharePoint 2010 Ribbon buttons</title><description>So,&lt;br /&gt;While I was preparing to my presentation on SharePoint 2010 in Las Vegas next month, I wanted to show how to add some new cool buttons to the new ribbon menu.&lt;br /&gt;&lt;br /&gt;I came across a lot of bloggers writing about this new feature (ribbon),&lt;br /&gt;here is a nice how-to published by Sandeep K Nahta back at July:&lt;br /&gt;http://snahta.blogspot.com/2009/07/add-button-to-ribbon.html&lt;br /&gt;&lt;br /&gt;But what it does not say and took me a while to understand is few things that makes this not work according to plan...&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;1.&lt;/h4&gt; Keep in mind your feature must be at a site collection level otherwise it will not work.&lt;br /&gt;Farm level will not load anything and site level will work in strange resutls like:&lt;br /&gt;Adding the buttons twice, or if you activate it on 2 sites in the same collection - adding the buttons permanently even after you deactivate the feature and uninstall it.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;2.&lt;/h4&gt; I wanted to name my actions SLFE.SomeAction (product code.actio name) for our SharePoint List Forms Extensions ( hence SLFE :) ), Now the buttons I added were disabled all the time. Took me a whilte to figure out that the action name must not containt special characters including ... so - keep that also in mind.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;3.&lt;/h4&gt; The easiest way I found for adding buttons or groups into the existing ribbon is:&lt;br /&gt;&lt;h5&gt;a&lt;/h5&gt; - find the location you want to add it in the existing ribbon definition file (C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\GLOBAL\XML\CMDUI.XML)&lt;br /&gt;&lt;h5&gt;b&lt;/h5&gt; - locate the XML node you wish to insert you XML addition, and keep it's ID value.&lt;br /&gt;&lt;h5&gt;c&lt;/h5&gt; - simply inject your XML in your feature elements file to that node's children collection like so (note the CommandUI. and ._children in the custom action's location):&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;br /&gt;&amp;lt;Elements xmlns="http://schemas.microsoft.com/sharepoint/"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;CustomAction Id="KWizCom.SLFE.Ribbon.Library.Groups.SLFE" Location="&lt;strong&gt;CommandUI.&lt;/strong&gt;Ribbon.Library.Groups&lt;strong&gt;._children&lt;/strong&gt;" Sequence="2000" Title="SLFE"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;CommandUIExtension&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;CommandUIDefinitions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;CommandUIDefinition&amp;gt;&lt;br /&gt;... XML as in the CUI schema ...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/CommandUIDefinition&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/CommandUIDefinitions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/CommandUIExtension&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/CustomAction&amp;gt;&lt;br /&gt;&amp;lt;/Elements&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;4.&lt;/h4&gt; If you don't see any buttons when you add a group - you must add "scaling" properties for that group!&lt;br /&gt;&lt;br /&gt;Also - make sure your chosen template (i.e. Ribbon.Templates.Flexible) support your control's TemplateAlias (i.e. o1). Don't you just hate these XML cross references?!&lt;br /&gt;&lt;br /&gt;I will post back here with more info on the ribbon as I find it, check back to update!&lt;br /&gt;&lt;br /&gt;Thanks, Shai.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-7219148694869507671?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/09/troubleshooting-sharepoint-2010-ribbon.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-6206747959969817542</guid><pubDate>Tue, 15 Sep 2009 22:02:00 +0000</pubDate><atom:updated>2009-09-15T15:15:22.576-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">wss</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">Undocumented</category><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">MOSS</category><category domain="http://www.blogger.com/atom/ns#">Developer</category><category domain="http://www.blogger.com/atom/ns#">MOSS 2007</category><category domain="http://www.blogger.com/atom/ns#">Code</category><title>Performance issue using SPUtility.GetFullNameFromLogin</title><description>Recently we had a strange support call regarding our rating solution.&lt;br /&gt;&lt;br /&gt;The customer experienced very bad performance using our rating field type, when opening the comments page for an item.&lt;br /&gt;&lt;br /&gt;everything else was working very fast, pages loaded within a blink of an eye, only opening the popup that displays the comments and ratings from other users took anywhere from 10 to 40 seconds...&lt;br /&gt;&lt;br /&gt;So, we created a debug version that prints out the time stamp of every stage of the page.&lt;br /&gt;What the page does is basically, load all comments and ratings into a list and binds them into a repeater control.&lt;br /&gt;&lt;br /&gt;So, we found out that while loading the comments we get the user login name, and since we want to show the user display name we use this SharePoint API method to get the display name from the login name:&lt;br /&gt;SPUtility.GetFullNameFromLogin(site, "domain\\user_login");&lt;br /&gt;&lt;br /&gt;well, to keep it simple, calling the method above to get the user display name took 8 seconds every time we called it, so for every comment on the item the page load time would take 8 more seconds!!!&lt;br /&gt;&lt;br /&gt;The customer opened a support call to microsoft while we were investigating other alternatives for getting the user display name.&lt;br /&gt;&lt;br /&gt;The answer the customer got from microsoft team was simple and did resolve the issue.&lt;br /&gt;Simply instead of using SPUtility.GetFullNameFromLogin, they recommend using:&lt;br /&gt;&lt;br /&gt;web.EnsureUser("domain\\user_login").Name;&lt;br /&gt;&lt;br /&gt;so, the web.EnsureUser method works much faster and the performance problem was resolved!&lt;br /&gt;&lt;br /&gt;Since I did not see any post about this on the web I thought I might as well write one myself - hope this helps some of you in the future.&lt;br /&gt;&lt;br /&gt;Shai Petel.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-6206747959969817542?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/09/performance-issue-using.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-1303582560858344351</guid><pubDate>Tue, 15 Sep 2009 09:21:00 +0000</pubDate><atom:updated>2009-09-15T02:23:42.765-07:00</atom:updated><title>Tell us about successful KWizCom product implementation and win!</title><description>&lt;span style="font-family:trebuchet ms;"&gt;Don't miss out!!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;strong&gt;This month you can receive:&lt;/strong&gt;&lt;br /&gt;1 FREE KWizCom product license of your choice&lt;br /&gt;AND&lt;br /&gt;Enter the Success Lottery and have the chance to win your very own iPhone!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://kwizcom.com/ContentPage.asp?PageId=1487"&gt;&lt;span style="font-family:trebuchet ms;"&gt;Here's how.&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;I can't wait to see who wins!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-1303582560858344351?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/09/tell-us-about-successful-kwizcom.html</link><author>noreply@blogger.com (Forest Rain)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-2857399354965010171</guid><pubDate>Tue, 08 Sep 2009 21:13:00 +0000</pubDate><atom:updated>2009-09-08T14:19:28.319-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">Code</category><title>Tired of "Obsolete" warnings on your project?</title><description>If you are like me, find yourself marking old code bits as "Obsolete" but have to keep them in your project for backward compatibility - you must be tired of all the visual studio warnings regarding using obsolete code - especially if it is your own code.&lt;br /&gt;&lt;br /&gt;In most cases I have an "Upgrade" method that identifies old version installations and upgrade them to newer version constructs, but in this upgrade code I have to use some of the old obsolete code generating these annoying warning.&lt;br /&gt;&lt;br /&gt;BUT - I do not wish to disable all Obsolete warnings - some are very important and I do wish VS to keep warning me about them.&lt;br /&gt;&lt;br /&gt;So, the proper way to go is to mark specific code bits not to throw any warnings about using obsolete code. Like: telling the VS that within a specific code block I am aware that I am using some obsolete code and I don't want it to show in my build results.&lt;br /&gt;&lt;br /&gt;I came accross the simple solution here that saved me a lot of time figuring out the correct pragma statement for this:&lt;br /&gt;http://stackoverflow.com/questions/344630/ignore-obsoleteattribute-compiler-error&lt;br /&gt;&lt;br /&gt;Here, Nick Bolton simple says:&lt;br /&gt;&lt;i&gt;"&lt;br /&gt;What about using #pragma to disable the warning around the specfic code?&lt;br /&gt;#pragma warning disable 0612&lt;br /&gt;// Call obsolete type/enum member here&lt;br /&gt;#pragma warning restore 0612&lt;br /&gt;"&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;And guess what? It did the trick for me!&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-2857399354965010171?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/09/tired-of-obsolete-warnings-on-your.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-4634657063336030985</guid><pubDate>Tue, 01 Sep 2009 20:12:00 +0000</pubDate><atom:updated>2009-09-01T13:23:10.930-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint Saturday</category><title>KWizCom is going to SharePoint Saturday New York City</title><description>&lt;a href="http://www.kwizcom.com/ContentPage.asp?PageId=1479"&gt;&lt;img style="MARGIN: 0px 10px 10px 0px; WIDTH: 400px; FLOAT: left; HEIGHT: 50px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5376596725035581298" border="0" alt="" src="http://2.bp.blogspot.com/_9lW_QwXIlIE/Sp2CPChGP3I/AAAAAAAAABc/CJaMnZUjIVI/s400/SharePointSatNYC_9-12_small.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;This September KWizCom will be at SharePoint Saturday New York and you are invited to come along!&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;See the details of this exciting event on &lt;/span&gt;&lt;a href="http://www.kwizcom.com/ContentPage.asp?PageId=1479"&gt;&lt;span style="font-family:trebuchet ms;"&gt;KWizCom’s SPS NYC event page&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-4634657063336030985?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/09/kwizcom-is-going-to-sharepoint-saturday.html</link><author>noreply@blogger.com (Forest Rain)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_9lW_QwXIlIE/Sp2CPChGP3I/AAAAAAAAABc/CJaMnZUjIVI/s72-c/SharePointSatNYC_9-12_small.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-1521524233485960484</guid><pubDate>Wed, 12 Aug 2009 12:05:00 +0000</pubDate><atom:updated>2009-08-12T05:19:01.673-07:00</atom:updated><title>How do I tell what the next list item ID is?</title><description>&lt;em&gt;&lt;span style="font-size:85%;"&gt;By Roi Kolbinger - SharePoint Consultant&lt;br /&gt;KWizCom Professional Services – &lt;/span&gt;&lt;/em&gt;&lt;a href="http://www.kwizcom.com/"&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;http://www.kwizcom.com/&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you have ever worked with Event Handlers on an item you probably came across the same problem that was bothering me…&lt;br /&gt;&lt;br /&gt;I created a ListItem and used the event handler ItemAdding (for a synchronic event). I tried to find out what my ID was but the value I got was zero.&lt;br /&gt;&lt;br /&gt;This problem will not occur on ItemAdded (of a non-synchronic event) because the item is created separately and it has its own ID.&lt;br /&gt;&lt;br /&gt;If you use the code below on ItemAdding,you will get a zero value on listItem ID.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SPList list = web.Lists[properties.ListId];&lt;br /&gt;SPListItem listItem = list.Items[properties.ListItem.UniqueId];&lt;br /&gt;int itemId = listItem.ID; // itemId  always zero on ItemAdding event&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;To discover the ID (and avoid getting the zero value) of my synchronic event I wrote this code:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;int itemId = list.Items[list.ItemCount - 1].ID + 1;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;This code will work well as long as you do not delete the last item and do not add more than one item simultaneously. If you do the sum you will get will be incorrect.&lt;br /&gt;&lt;br /&gt;I searched for a SharePoint API that would give me the next item ID but found none. It seemed no one had tackled this problem….&lt;br /&gt;&lt;br /&gt;After extensive searching I found a solution, brilliant in its simplicity. This is the code:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;/// &lt;summary&gt;&lt;br /&gt;/// Get the next available item id from a list&lt;br /&gt;/// &lt;/summary&gt;&lt;br /&gt;/// &lt; name="site"&gt;site&lt;/param&gt;&lt;br /&gt;/// &lt; name="listId"&gt;listId&lt;/param&gt;&lt;br /&gt;/// &lt;&gt;&lt;/returns&gt;&lt;br /&gt;public static int NextItemID(SPSite site, Guid listId(&lt;br /&gt;{&lt;br /&gt;   int id = -1;&lt;br /&gt;   Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(delegate()&lt;br /&gt; {&lt;br /&gt;      if (site.WebApplication.ContentDatabases.Count &gt; 0(&lt;br /&gt;     {&lt;br /&gt;         string DBConnString = site.WebApplication.ContentDatabases[0].DatabaseConnectionString;&lt;br /&gt;         SqlConnection con = new SqlConnection(DBConnString);&lt;br /&gt;         try&lt;br /&gt;         {&lt;br /&gt;            con.Open();&lt;br /&gt;            SqlCommand com = con.CreateCommand();&lt;br /&gt;            com.CommandText = String.Format("select tp_NextAvailableId from AllLists where tp_ID = '{0}'", listId.ToString());&lt;br /&gt;            id = (int)com.ExecuteScalar();&lt;br /&gt;         }&lt;br /&gt;         finally&lt;br /&gt;         {&lt;br /&gt;            con.Close();&lt;br /&gt;         }&lt;br /&gt;     }&lt;br /&gt;   });&lt;br /&gt;   return id;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;int itemId  = NextItemID(new SPSite(properties.SiteId), properties.ListId);&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;As you can see, the solution is to connect to the MOSS database and read the ID AllList table. All the information was right there, we simply had to access it.&lt;br /&gt;&lt;br /&gt;Now you know how to get the next ID of the ListItem and (hopefully!) Event Handlers will no longer give you any trouble!...&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Credits:&lt;br /&gt;The solution detailed in this article was found at: &lt;/em&gt;&lt;a href="http://suguk.org/forums/permalink/6226/13513/ShowThread.aspx"&gt;&lt;em&gt;http://suguk.org/forums/permalink/6226/13513/ShowThread.aspx&lt;/em&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-1521524233485960484?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/08/how-do-i-tell-what-next-list-item-id-is.html</link><author>noreply@blogger.com (Roi Kolbinger)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-2435534126297736225</guid><pubDate>Tue, 21 Jul 2009 15:20:00 +0000</pubDate><atom:updated>2009-07-21T08:34:21.820-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">Code</category><title>How to register safe control to web.config manually</title><description>Here is a little code example I found at MSDN that allows you to add a safe control to the web application web.config file throughout the SharePoint farm.&lt;br /&gt;&lt;br /&gt;It uses the SPWebConfigModification class to add the change and will, make sure your changes gets re-applied whenever a new web application is created in the farm!&lt;br /&gt;&lt;br /&gt;Note, you can add all sorts of modifications using this class - not only safe controls.&lt;br /&gt;As Daniel Larson wrote in the comments for the MSDN article, for web controls - if possible you should use other methods of deployment and update the safe control in the manifest xml file.&lt;br /&gt;&lt;br /&gt;taken from: &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebconfigmodification.aspx" target="_blank"&gt;msdn SPWebConfigModification&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="background-color:#003366;color:white;font-size:8pt;"&gt;SPWebService myService = SPWebService.ContentService;&lt;br /&gt;&lt;br /&gt;SPWebConfigModification myModification = new SPWebConfigModification();&lt;br /&gt;myModification.Path = "configuration/SharePoint/SafeControls";&lt;br /&gt;myModification.Name = "SafeControl[@Assembly='MyCustomAssembly'][@Namespace='MyCustomNamespace'][@TypeName='*'][@Safe='True']";&lt;br /&gt;myModification.Sequence = 0;&lt;br /&gt;myModification.Owner = WebConfigModificationFeatureReceiver.OwnerId;&lt;br /&gt;myModification.Type = SPWebConfigModification.SPWebConfigModificationType.EnsureChildNode;&lt;br /&gt;myModification.Value = "&lt;SafeControl Assembly='MyCustomAssembly' Namespace='MyCustomNamespace' TypeName='*' Safe='True' /&gt;";&lt;br /&gt;&lt;br /&gt;myService.WebConfigModifications.Add(myModification);&lt;br /&gt;myService.Update(); &lt;br /&gt;myService.ApplyWebConfigModifications();&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;I found that usefull when a customer of ours wanted to use a custom field inside a publishing page layout... the original installer did not add the safe control since you dont need it when you are inside list item form (create/edit/view), but inside a publishing page layout we got a message saying the control is not registered as safe.&lt;br /&gt;&lt;br /&gt;Hope you do to, Shai.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-2435534126297736225?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/07/how-to-register-safe-control-to.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-3528189399399922708</guid><pubDate>Mon, 20 Jul 2009 18:31:00 +0000</pubDate><atom:updated>2009-07-20T11:36:10.677-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">how to</category><category domain="http://www.blogger.com/atom/ns#">Code Free</category><category domain="http://www.blogger.com/atom/ns#">Developer</category><title>Helpful batch file command for installers</title><description>Hi,&lt;br /&gt;&lt;br /&gt;Just a short one this time,&lt;br /&gt;&lt;br /&gt;here is a nice script for looping through all MSI files in current folder / sub folders and running the installers one after the other.&lt;br /&gt;&lt;br /&gt;Just paste this into a install.bat file and place with your set of installers:&lt;br /&gt;for /f "delims=" %%a IN ('dir /s /b *.msi') do MSIEXEC /i "%%a"&lt;br /&gt;&lt;br /&gt;simple, 1 line of script made my life easier with WikiPlus.&lt;br /&gt;&lt;br /&gt;You see, installing it involves running installers for 5 different products so this way I just throw them into sub folders and this little script does the rest for me.&lt;br /&gt;&lt;br /&gt;:)&lt;br /&gt;&lt;br /&gt;Enjoy,&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-3528189399399922708?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/07/helpful-batch-file-command-for.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-1011215558198359784</guid><pubDate>Tue, 14 Jul 2009 07:10:00 +0000</pubDate><atom:updated>2009-07-19T01:25:55.883-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint Designer</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">Workflow</category><category domain="http://www.blogger.com/atom/ns#">MOSS</category><category domain="http://www.blogger.com/atom/ns#">WF</category><category domain="http://www.blogger.com/atom/ns#">MOSS 2007</category><title>How do I duplicate a list item without code?</title><description>&lt;em&gt;&lt;span style="font-size:85%;"&gt;By Roi Kolbinger - SharePoint Consultant &lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;KWizCom Professional Services – &lt;/span&gt;&lt;/em&gt;&lt;a href="http://www.kwizcom.com/"&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;http://www.kwizcom.com/&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Did you ever wish to copy an Item to the current list several times? What is the best way to duplicate a list item? Can it be done without code?&lt;br /&gt;&lt;br /&gt;There is an easy, effective way and no – you don't need code! Here's how:&lt;br /&gt;&lt;br /&gt;All you need to do is to create two new columns and SPD workflow.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Step 1: Create columns&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Name the first new column you create according to the number of copies you want to make. When defining the type of information that will be in the column, choose "number". This column is where you will define the number of copies you want to create.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_VWQqqyuXKsE/Slwxi1Z94zI/AAAAAAAADoI/-Gz4dVVW70g/s1600-h/createCoulmn1.JPG"&gt;&lt;img style="WIDTH: 233px; HEIGHT: 183px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358212131185353522" border="0" alt="" src="http://3.bp.blogspot.com/_VWQqqyuXKsE/Slwxi1Z94zI/AAAAAAAADoI/-Gz4dVVW70g/s400/createCoulmn1.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Name the second column according to the number of copies you want, minus one. Define the type of information that will appear in this new column as "Calculated" (this gives a number which is the result of a calculation based on a different column).&lt;br /&gt;The calculation we will use here will take the first column and subtract from it -1.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_VWQqqyuXKsE/SlwxjGe3c7I/AAAAAAAADoQ/M-ULVodXecg/s1600-h/createCoulmn2.JPG"&gt;&lt;img style="WIDTH: 270px; HEIGHT: 299px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358212135769306034" border="0" alt="" src="http://2.bp.blogspot.com/_VWQqqyuXKsE/SlwxjGe3c7I/AAAAAAAADoQ/M-ULVodXecg/s400/createCoulmn2.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;The formula to use for doing this is =[number of copies]-1 like so:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_VWQqqyuXKsE/SlwxjAK5YtI/AAAAAAAADoY/K4CMRVxW6NM/s1600-h/formula.JPG"&gt;&lt;img style="WIDTH: 246px; HEIGHT: 68px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358212134074933970" border="0" alt="" src="http://4.bp.blogspot.com/_VWQqqyuXKsE/SlwxjAK5YtI/AAAAAAAADoY/K4CMRVxW6NM/s400/formula.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;Step 2: Create a new workflow at the SPD&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Open the site at the SPD and then create a new workflow.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_VWQqqyuXKsE/SlwxjbCXjII/AAAAAAAADog/SwUfs6r4gbY/s1600-h/newWorkflow2.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 201px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358212141286919298" border="0" alt="" src="http://3.bp.blogspot.com/_VWQqqyuXKsE/SlwxjbCXjII/AAAAAAAADog/SwUfs6r4gbY/s400/newWorkflow2.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Give the workflow a name and select the list from which you desire to copy the Item. Then select your workflow start options. It is best to choose: "automatically starts the workflow whenever the item is been changed". This will renew your workflow each time the item has been updated and/or edited and insure that the calculated result is always accurate.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_VWQqqyuXKsE/SlwwqBKTUWI/AAAAAAAADn4/5rlxultCk9Q/s1600-h/capyitem.JPG"&gt;&lt;img style="WIDTH: 363px; HEIGHT: 235px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358211155088331106" border="0" alt="" src="http://2.bp.blogspot.com/_VWQqqyuXKsE/SlwwqBKTUWI/AAAAAAAADn4/5rlxultCk9Q/s400/capyitem.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Next, define the step of the workflow – select "Number of copies" greater the zero.&lt;br /&gt;&lt;br /&gt;And then, define two actions:&lt;br /&gt;1) Update your item: "Numbers of copies" is will be "Number of copies minus one".&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_VWQqqyuXKsE/Slwxji_CjwI/AAAAAAAADoo/W7N323Kt2Ok/s1600-h/saveitem.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 174px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358212143420444418" border="0" alt="" src="http://3.bp.blogspot.com/_VWQqqyuXKsE/Slwxji_CjwI/AAAAAAAADoo/W7N323Kt2Ok/s400/saveitem.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2) Create a new item in the list that duplicates the columns taken from the original item. Do not include the "Number of copies" column! If you do an infinite loop will be created. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_VWQqqyuXKsE/SlwwkZCUf3I/AAAAAAAADnw/GzvKEyr66UU/s1600-h/updatelist.JPG"&gt;&lt;img style="WIDTH: 386px; HEIGHT: 116px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5358211058418089842" border="0" alt="" src="http://4.bp.blogspot.com/_VWQqqyuXKsE/SlwwkZCUf3I/AAAAAAAADnw/GzvKEyr66UU/s400/updatelist.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now when you go to an item that you wish to duplicate, all you need to do is edit the item and write the numbers of copies that you want to make in the "Number of copies" column and your copies will be made! Easy and simple with no code necessary at all!&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-1011215558198359784?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/07/how-do-i-duplicate-list-item-without.html</link><author>noreply@blogger.com (Roi Kolbinger)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_VWQqqyuXKsE/Slwxi1Z94zI/AAAAAAAADoI/-Gz4dVVW70g/s72-c/createCoulmn1.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-2750447792611696426</guid><pubDate>Mon, 13 Jul 2009 05:36:00 +0000</pubDate><atom:updated>2009-07-13T08:54:41.305-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint Saturday</category><category domain="http://www.blogger.com/atom/ns#">delegate controls</category><category domain="http://www.blogger.com/atom/ns#">presentation</category><title>Delegate Controls: What, Where and How</title><description>See the presentation Shai gave during SharePoint Saturday:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="TEXT-ALIGN: left; WIDTH: 425px" id="__ss_1712996"&gt;&lt;a style="MARGIN: 12px 0px 3px; DISPLAY: block; FONT: 14px Helvetica,Arial,Sans-serif; TEXT-DECORATION: underline" title="Using Delegate Controls In SharePoint" href="http://www.slideshare.net/KWizCom/using-delegate-controls-in-share-point"&gt;Using Delegate Controls In SharePoint&lt;/a&gt;&lt;object style="MARGIN: 0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=usingdelegatecontrolsinsharepoint-090713000833-phpapp02&amp;amp;stripped_title=using-delegate-controls-in-share-point"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=usingdelegatecontrolsinsharepoint-090713000833-phpapp02&amp;stripped_title=using-delegate-controls-in-share-point" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="FONT-FAMILY: tahoma,arial; HEIGHT: 26px; FONT-SIZE: 11px; PADDING-TOP: 2px"&gt;View more &lt;a style="TEXT-DECORATION: underline" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="TEXT-DECORATION: underline" href="http://www.slideshare.net/KWizCom"&gt;Kwizcom Team&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.kwizcom.com/objects/Using_Delegate_Controls_in_SharePoint_PPT_and_code_sample.zip"&gt;Download this presentation and a code example here. &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-2750447792611696426?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/07/delegate-controls-what-where-and-how.html</link><author>noreply@blogger.com (Forest Rain)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-6040511002790359876</guid><pubDate>Mon, 06 Jul 2009 20:03:00 +0000</pubDate><atom:updated>2009-07-06T13:08:13.608-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><title>KWizCom is going to SharePoint Saturday Toronto!</title><description>&lt;a href="http://1.bp.blogspot.com/_9lW_QwXIlIE/SlJY-oL6eEI/AAAAAAAAABU/eOnIiS6Zt10/s1600-h/SharePointSat_ISPA_Toronto_png.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5355440739859462210" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 300px; CURSOR: hand; HEIGHT: 125px" alt="" src="http://1.bp.blogspot.com/_9lW_QwXIlIE/SlJY-oL6eEI/AAAAAAAAABU/eOnIiS6Zt10/s400/SharePointSat_ISPA_Toronto_png.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a title="SharePoint Saturday Toronto" href="http://www.sharepointsaturday.org/toronto/default.aspx" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:trebuchet ms;"&gt;This month KWizCom is going to the first-ever SharePoint Saturday Toronto and you are invited to come along!&lt;br /&gt;&lt;br /&gt;KWizCom is proud to participate in and sponsor this grass-roots event. SharePoint Saturday events are free, community-focused SharePoint events dedicated to educating and engaging members of the local technical community.&lt;br /&gt;&lt;br /&gt;SharePoint Saturday will be an educational, informative &amp;amp; lively day filled with sessions from respected SharePoint professionals &amp;amp; Microsoft MVPs, covering a wide variety of SharePoint-oriented topics. Amongst them will be KWizCom's own VP R&amp;amp;D Shai Petel, who will be presenting a session on &lt;/span&gt;&lt;a href="http://www.sharepointsaturday.org/toronto/meetings/15/DelegateControlsWhatWhereandHow.aspx"&gt;&lt;span style="font-family:trebuchet ms;"&gt;"Delegate Controls: What, Where and How"&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;br /&gt;KWizCom representatives will be amongst a select group of vendors with a booth at SharePoint Saturday. Come talk to us and learn about the many opportunities and benefits of working with KWizCom!&lt;br /&gt;We have prepared a special gift for everyone who visits our booth but you have to attend to benefit!&lt;br /&gt;&lt;br /&gt;SharePoint Saturday Toronto will take place:&lt;br /&gt;On: Saturday, July 11th, 2009&lt;br /&gt;At: Microsoft Canada Conference Centre&lt;br /&gt;1950 Meadowvale Blvd, Mississauga, Ontario, Canada.&lt;br /&gt;&lt;br /&gt;The day starts at 9:00 AM with a short introductory keynote and ends at 4:30 PM.&lt;br /&gt;Lunch will be provided and there will be numerous giveaways throughout the day.&lt;br /&gt;Come join us for a day of fun, learning, networking and – SharePoint!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="https://www.clicktoattend.com/invitation.aspx?code=139085"&gt;&lt;span style="font-family:trebuchet ms;"&gt;Register for the event&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;For more information, please visit &lt;/span&gt;&lt;a title="SharePoint Saturday Toronto" href="http://www.sharepointsaturday.org/toronto" target="_blank"&gt;&lt;span style="font-family:trebuchet ms;"&gt;www.sharepointsaturday.org/toronto&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;.&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-6040511002790359876?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/07/kwizcom-is-going-to-sharepoint-saturday.html</link><author>noreply@blogger.com (Forest Rain)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_9lW_QwXIlIE/SlJY-oL6eEI/AAAAAAAAABU/eOnIiS6Zt10/s72-c/SharePointSat_ISPA_Toronto_png.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-7463944009360191317</guid><pubDate>Wed, 24 Jun 2009 05:17:00 +0000</pubDate><atom:updated>2009-08-08T02:12:06.977-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">SharePoint Designer</category><category domain="http://www.blogger.com/atom/ns#">MOSS</category><category domain="http://www.blogger.com/atom/ns#">Developer</category><category domain="http://www.blogger.com/atom/ns#">MOSS 2007</category><title>Radio Button Custom Field Choice – Going from Vertical to Horizontal with Java Script</title><description>&lt;span style="font-size:85%;"&gt;&lt;em&gt;By Roi Kolbinger - SharePoint Consultant&lt;/em&gt; &lt;/span&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;KWizCom Professional Services – &lt;/span&gt;&lt;/em&gt;&lt;a href="http://www.kwizcom.com/"&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;http://www.kwizcom.com/&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Have you noticed that field choice only gives a vertical view?&lt;br /&gt;But what if I want a horizontal view?&lt;br /&gt;When you want to customize your view but don't know how it can be very frustrating but there is always a way, you just have to know how…&lt;br /&gt;&lt;br /&gt;For example:&lt;br /&gt;I want to use the field "Gender" with two choice options – male and female.&lt;br /&gt;This is how such a field would normally look in MOSS:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_VWQqqyuXKsE/SkG3_SCgTFI/AAAAAAAADnQ/eb3zbSS4XqU/s1600-h/Vertical.JPG"&gt;&lt;img style="WIDTH: 301px; HEIGHT: 65px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5350760130094845010" border="0" alt="" src="http://1.bp.blogspot.com/_VWQqqyuXKsE/SkG3_SCgTFI/AAAAAAAADnQ/eb3zbSS4XqU/s400/Vertical.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;But I don't want to waste so much screen space. It would be much better to have something like this:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_VWQqqyuXKsE/SkG4SQBvjFI/AAAAAAAADnY/nOvhhxXJR40/s1600-h/Horizontal.JPG"&gt;&lt;img style="WIDTH: 335px; HEIGHT: 36px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5350760455972293714" border="0" alt="" src="http://4.bp.blogspot.com/_VWQqqyuXKsE/SkG4SQBvjFI/AAAAAAAADnY/nOvhhxXJR40/s400/Horizontal.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;With a little Java script it's not so hard to go from vertical to horizontal. Here's how you do it:&lt;br /&gt;Simply add this code to the form (add it in the SPD to NewForm.aspx and EditForm.aspx for the list that includes the view you want to change):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_VWQqqyuXKsE/Sn1Ap-chwyI/AAAAAAAADpI/opfK0kmIA3M/s1600-h/radio.PNG"&gt;&lt;img style="WIDTH: 256px; HEIGHT: 400px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5367517420776964898" border="0" alt="" src="http://4.bp.blogspot.com/_VWQqqyuXKsE/Sn1Ap-chwyI/AAAAAAAADpI/opfK0kmIA3M/s400/radio.PNG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;That all – now we have our Male/Female options in the desired view layout!&lt;br /&gt;&lt;br /&gt;+++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;For more helpful tips and guidelines please visit: &lt;/span&gt;&lt;/em&gt;&lt;a href="http://kwizcom.blogspot.com/"&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;http://kwizcom.blogspot.com/&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;NEW – You can now follow KWizCom on Twitter: &lt;/span&gt;&lt;/em&gt;&lt;a href="https://twitter.com/KWizCom"&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;https://twitter.com/KWizCom&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt; &lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-7463944009360191317?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/06/radio-button-custom-field-choice-going.html</link><author>noreply@blogger.com (Roi Kolbinger)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_VWQqqyuXKsE/SkG3_SCgTFI/AAAAAAAADnQ/eb3zbSS4XqU/s72-c/Vertical.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-8571345797550631984</guid><pubDate>Fri, 15 May 2009 00:43:00 +0000</pubDate><atom:updated>2009-05-24T01:57:03.861-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">wss</category><category domain="http://www.blogger.com/atom/ns#">Undocumented</category><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">MOSS</category><category domain="http://www.blogger.com/atom/ns#">Developer</category><category domain="http://www.blogger.com/atom/ns#">Code</category><title>Creating a field in a List and getting the error: "Index was outside the bounds of the array"</title><description>Today, while I was code reviewing a new release of our rating field type I got a weird error message...&lt;br /&gt;&lt;br /&gt;We added a new feature that adds 2 read only fields with the total number of ratings and number of comments.&lt;br /&gt;&lt;br /&gt;Code example for addnig new fields was simple:&lt;br /&gt;&lt;div style="background-color:#003366; color: white; font-size:8pt;"&gt;if (!list.Fields.ContainsField(ratingField.FieldName_NumOfCommentsInternalName))&lt;br /&gt;{&lt;br /&gt;    list.Fields.Add(ratingField.FieldName_NumOfCommentsDecodedName, SPFieldType.Number, false);&lt;br /&gt;    //Some more logic here&lt;br /&gt;}&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Pretty simple, only when this code runs this time (3rd unit testing sessions before release to customer review) suddenly I get the error message above "Index was outside the bounds of the array".&lt;br /&gt;&lt;br /&gt;Well... I ran it in debug few time, scratching my head few times more, but nothing - same error every time!&lt;br /&gt;&lt;br /&gt;OK, time for drilling into SharePoint code I guess...&lt;br /&gt;The exception stack trace was as following:&lt;br /&gt;&lt;div style="background-color:#003366; color: white; font-size:8pt;"&gt;at Microsoft.SharePoint.Utilities.SPStringUtility.EscapedCodeToLower(String str)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.FixFieldV3Attrs(XmlDocument xd, XmlElement xe, Guid&amp;amp; fid, String&amp;amp; name)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.TranslateFieldSchema(String schemaXml, Guid&amp;amp; fid, String&amp;amp; strDisp, String&amp;amp; strStaticNew)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.AddFieldAsXmlInternal(String schemaXml, Boolean addToDefaultView, SPAddFieldOptions op)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.AddFieldAsXml(String schemaXml, Boolean addToDefaultView, SPAddFieldOptions op)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.AddFieldAsXml(String strXml)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.AddInternal(String strDisplayName, SPFieldType type, Boolean bRequired, Boolean bCompactName, Guid lookupListId, Guid lookupWebId, StringCollection choices)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.Add(String strDisplayName, SPFieldType type, Boolean bRequired, Boolean bCompactName, StringCollection choices)&lt;br /&gt;at Microsoft.SharePoint.SPFieldCollection.Add(String strDisplayName, SPFieldType type, Boolean bRequired)&lt;br /&gt;at KWizCom.SharePoint.Rating.ListRatingUtilities.CreateRatingCountFieldsInList(SPWeb web, SPList list, RatingField ratingField)&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Revealing that the exception was raised from a method called:&lt;br /&gt;&lt;div style="background-color:#003366; color: white; font-size:8pt;"&gt;Microsoft.SharePoint.Utilities.SPStringUtility.EscapedCodeToLower(String str)&lt;/div&gt; &lt;br /&gt;So far - makes sense... string parsing is always the number one cause for index bound exceptions, right?&lt;br /&gt;&lt;br /&gt;So, I wanted to check what was wrong with the field name I was trying to create...&lt;br /&gt;&lt;div style="background-color:#003366; color: white; font-size:8pt;"&gt;ratingField.FieldName_NumOfCommentsDecodedName "2Rating Site Column_x" string&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;See that my field name ends with "_x"...&lt;br /&gt;&lt;br /&gt;The code I extracted from "EscapedCodeToLower" had the following line in it:&lt;br /&gt;&lt;div style="background-color:#003366; color: white; font-size:8pt;"&gt;if (((str[i] == '_') &amp;amp;&amp;amp; (i &amp;lt; (str.Length - 1))) &amp;amp;&amp;amp; (str[i + 1] == 'x'))&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Well, now everything was clear to me.&lt;br /&gt;&lt;br /&gt;Microsoft uses "XmlConvert.EncodeName"  in order to encode fields internal names in SharePoint. This encoding method replaces illegal characters with "_x0020_" for example. Apparently this method looks up every "_" that was followed by "x" and assumes it is a token it needs to decode... But what happens if my text ends with "_x"?&lt;br /&gt;&lt;br /&gt;Aha! You get your "Index was outside the bounds of the array" exception!&lt;br /&gt;&lt;br /&gt;So, I guess now I have to add a check to my code. I Doubt anyone would notice it or bother to fix it.&lt;br /&gt;&lt;br /&gt;Well, I googled that error message regarding SPList.Fields.Add and got nothing - hopefully this will help someone in need in the future...&lt;br /&gt;&lt;br /&gt;Shai.&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-8571345797550631984?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/05/create-field-in-list-gives-error-index.html</link><author>noreply@blogger.com (Shai Petel)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-691739770978360344.post-7823982193993372495</guid><pubDate>Mon, 11 May 2009 13:55:00 +0000</pubDate><atom:updated>2009-05-11T07:06:34.186-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Variations</category><category domain="http://www.blogger.com/atom/ns#">back up</category><category domain="http://www.blogger.com/atom/ns#">restore</category><title>How to backup and restore a website with Variations</title><description>&lt;span style="font-family:trebuchet ms;"&gt;The article below was written by Armine Vardanyan, a SharePoint SharePoint Implementer for KWizCom Professional Services. Armine explains step by step how to backup and restore a website with Variations &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;************************************&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;When you backup a SharePoint site that uses the Variations feature, the variation jobs you created are not automatically backed up. Thus, before restoring your site to a new web application, you will need to create Variation labels and the needed hierarchy so that the variations jobs will be created automatically. Once this task is completed you will be able to restore your site safely, without losing any information.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Here's how to correctly backup and restore your site, with its Variation labels:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;1. You need to backup the web application by using stsadm(recommended):&lt;br /&gt;stsadm -o backup -url &lt;/span&gt;&lt;a href="http://portalname/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://portalname/&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt; -filename myBackup.bckSee &lt;/span&gt;&lt;a href="http://portal.kwizcom.com/sites/WikiPlus/Wiki%20Pages/Backup%20and%20Restore%20site%20collection.aspx"&gt;&lt;span style="font-family:trebuchet ms;"&gt;How to copy site collection from one server to anther (Backup and Restore)&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;.&lt;br /&gt;2. Create a new web application from the “SharePoint Central Administration” where you want to restore the backup and create the site collection. (/).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9lW_QwXIlIE/SggvN9fLIVI/AAAAAAAAAA8/V_PiPO1Ugzw/s1600-h/Application+Management.jpg"&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5334565675510473042" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 307px; CURSOR: hand; HEIGHT: 143px" alt="" src="http://1.bp.blogspot.com/_9lW_QwXIlIE/SggvN9fLIVI/AAAAAAAAAA8/V_PiPO1Ugzw/s400/Application+Management.jpg" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;3. Go to your created web-site.&lt;br /&gt;4. Go to “Site Settings” &gt; Site Settings &gt; Modify All Site Settings&lt;br /&gt;5. Under the “Site Collection Administration” section click on “Variation labels” &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_9lW_QwXIlIE/SggvZt6KdqI/AAAAAAAAABE/smLhIPWip1o/s1600-h/Variations.jpg"&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5334565877487138466" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 249px; CURSOR: hand; HEIGHT: 53px" alt="" src="http://3.bp.blogspot.com/_9lW_QwXIlIE/SggvZt6KdqI/AAAAAAAAABE/smLhIPWip1o/s400/Variations.jpg" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;6. Click on New Label and create your Variation labels (same as when you created them in the site you backed-up)&lt;br /&gt;7. Click on Create Hierarchies. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9lW_QwXIlIE/Sggvu7v75PI/AAAAAAAAABM/oxHzBxBpwxk/s1600-h/variation+labels.jpg"&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5334566241979589874" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 310px; CURSOR: hand; HEIGHT: 48px" alt="" src="http://1.bp.blogspot.com/_9lW_QwXIlIE/Sggvu7v75PI/AAAAAAAAABM/oxHzBxBpwxk/s400/variation+labels.jpg" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;8. After the hierarchies were created you can restore your backup and overwrite by:&lt;br /&gt;stsadm -o restore -url &lt;/span&gt;&lt;a href="http://newportalname/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://newportalname/&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt; -filename MyBackup.bck –overwrite&lt;br /&gt;&lt;br /&gt;Not so hard right? &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;a href="http://feeds.feedburner.com/KwizcomSharepointBlog"&gt;RSS&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/691739770978360344-7823982193993372495?l=kwizcom.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://kwizcom.blogspot.com/2009/05/how-to-backup-and-restore-website-with.html</link><author>noreply@blogger.com (Forest Rain)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_9lW_QwXIlIE/SggvN9fLIVI/AAAAAAAAAA8/V_PiPO1Ugzw/s72-c/Application+Management.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>
