<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ideas For Free &#187; SharePoint 2010</title>
	<atom:link href="http://blog.libinuko.com/tag/sharepoint-2010/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.libinuko.com</link>
	<description>Only freedom will grow our ideas</description>
	<lastBuildDate>Sun, 18 Dec 2011 04:51:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>SharePoint 2010: RemoteStsAdm PowerShell Module is available via NuGet</title>
		<link>http://blog.libinuko.com/2011/12/18/sharepoint-2010-remotestsadm-powershell-module-is-available-via-nuget/</link>
		<comments>http://blog.libinuko.com/2011/12/18/sharepoint-2010-remotestsadm-powershell-module-is-available-via-nuget/#comments</comments>
		<pubDate>Sun, 18 Dec 2011 04:15:43 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[Community Content]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[NuGet]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/?p=716</guid>
		<description><![CDATA[English: Few month ago I have introduced RemoteStsAdm, a PowerShell module that enable you to execute StsAdm.exe remotely. StsAdm.exe is a command line administration tools for SharePoint. Unfortunately to run StsAdm, one must log-in to SharePoint server member &#8211; since the tool can not be executed remotely. RemoteStsAdm is to answer this problem, allowing admin to [...] <a href="http://blog.libinuko.com/2011/12/18/sharepoint-2010-remotestsadm-powershell-module-is-available-via-nuget/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English:</p>
<p>Few month ago I have introduced RemoteStsAdm, a PowerShell module that enable you to execute StsAdm.exe remotely. StsAdm.exe is a command line administration tools for SharePoint. Unfortunately to run StsAdm, one must log-in to SharePoint server member &ndash; since the tool can not be executed remotely. RemoteStsAdm is to answer this problem, allowing admin to execute StsAdm remotely. You can download the source code from <a href="http://code.msdn.microsoft.com/windowsdesktop/Remote-StsAdm-in-6fec24b8">MSDN Galery here</a> or read the <a href="http://blog.libinuko.com/2011/09/17/sharepoint-2010-remotestsadm-powershell-module/">original article in previous post here</a>.&nbsp;</p>
<p>Yesterday, I have <a href="http://blog.libinuko.com/2011/12/17/introducing-import-psmodule/">released ImportPSModule</a> that will easy PowerShell module distribution, allow update notification and configuration. The RemoteStsAdm PowerShell module is now available via NuGet, so that you don&rsquo;t need to download and extract manually. All will be done seamlessly, and whenever we got script update &ndash; you will get notified as soon as you open PowerShell session.</p>
<p>So what do you wait for, open PowerShell session and type following:</p>
<div class="wlWriterEditableSmartContent" id="scid:E8C2ABEC-2EDF-4263-8854-38F0AFB6C437:4bb12004-931d-431d-af21-4723eda453ef" style="margin: 0px; padding: 0px; float: none; display: inline;">
<pre class="brush: powershell; title: ; notranslate">Import-PSModule RemoteStsAdm </pre>
</div>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/12/18/sharepoint-2010-remotestsadm-powershell-module-is-available-via-nuget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharePoint 2010 : RemoteStsAdm PowerShell Module</title>
		<link>http://blog.libinuko.com/2011/09/17/sharepoint-2010-remotestsadm-powershell-module/</link>
		<comments>http://blog.libinuko.com/2011/09/17/sharepoint-2010-remotestsadm-powershell-module/#comments</comments>
		<pubDate>Sat, 17 Sep 2011 04:50:26 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[StsAdm]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/09/17/sharepoint-2010-remotestsadm-powershell-module/</guid>
		<description><![CDATA[English The STSADM.exe is command-line tool for administration of Office SharePoint Server (SharePoint 2007, SharePoint 2010). It is installed on the same location as SharePoint Products and Technologies location: %COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\12\bin (for SharePoint 2007) or %COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\14\bin (for SharePoint 2010). You must be Farm Administrator to be able to run the tool. By [...] <a href="http://blog.libinuko.com/2011/09/17/sharepoint-2010-remotestsadm-powershell-module/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English</p>
<p>The STSADM.exe is command-line tool for administration of Office SharePoint Server (SharePoint 2007, SharePoint 2010). It is installed on the same location as SharePoint Products and Technologies location: %COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\12\bin (for SharePoint 2007) or %COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\14\bin (for SharePoint 2010). You must be Farm Administrator to be able to run the tool.</p>
<p>By default, the STSADM.exe must be executed locally since it will access SharePoint Object Model. It is also necessary for the tools to connect to the SQL Database using credential of the user who executes it. Therefore, normally the Administrator must remote-login to the SharePoint server before he/she can run the tools.</p>
<p>Remote execution of STSADM.exe using PowerShell <em>Invoke-Command </em>cmdlet faces double-hop challenges. This occurs when SQL Database for the farms is installed on different machine than the SharePoint server. The credential in the<em>Invoke-Command </em>session can not pass through to the SQL Database without configuring delegation in the WinRM services.<strong>This module solve double-hop problem without configuring CredSSP</strong>.</p>
<p>Download the module here:   <br /><a title="http://code.msdn.microsoft.com/Remote-StsAdm-in-6fec24b8" href="http://code.msdn.microsoft.com/Remote-StsAdm-in-6fec24b8">http://code.msdn.microsoft.com/Remote-StsAdm-in-6fec24b8</a></p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/09/17/sharepoint-2010-remotestsadm-powershell-module/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SharePoint: Writing Custom Web Service for SharePoint in Supported Mode (part-1)</title>
		<link>http://blog.libinuko.com/2011/08/27/sharepoint-writing-custom-web-service-for-sharepoint-in-supported-mode-part-1/</link>
		<comments>http://blog.libinuko.com/2011/08/27/sharepoint-writing-custom-web-service-for-sharepoint-in-supported-mode-part-1/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 17:27:56 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[SharePoint]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/08/27/sharepoint-writing-custom-web-service-for-sharepoint-in-supported-mode-part-1/</guid>
		<description><![CDATA[English If you have read my comments on the Writing Custom Web Service for SharePont, Is it supported here (http://blog.libinuko.com/2011/02/16/sharepoint-writing-custom-web-service-for-sharepoint-is-it-supported/) ; you may have already created standard ASPNET web services. It is working, but with some limitation: You can not have path virtualization Virtualization is one of SharePoint’s technique provided by SPVirtualPath provider, that enable virtualization of your [...] <a href="http://blog.libinuko.com/2011/08/27/sharepoint-writing-custom-web-service-for-sharepoint-in-supported-mode-part-1/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English</p>
<p>If you have read my comments on the Writing Custom Web Service for SharePont, Is it supported here (<a title="http://blog.libinuko.com/2011/02/16/sharepoint-writing-custom-web-service-for-sharepoint-is-it-supported/" href="http://blog.libinuko.com/2011/02/16/sharepoint-writing-custom-web-service-for-sharepoint-is-it-supported/">http://blog.libinuko.com/2011/02/16/sharepoint-writing-custom-web-service-for-sharepoint-is-it-supported/</a>) ; you may have already created standard ASPNET web services. It is working, but with some limitation:</p>
<ol>
<li>You can not have path virtualization
<p>Virtualization is one of SharePoint’s technique provided by SPVirtualPath provider, that enable virtualization of your web service path. For example, list.asmx will be available for <a href="http://mysite.com/_vti_bin/lists.asmx">http://mysite.com<strong>/_vti_bin/lists.asmx</strong></a> , or <a href="http://mysite.com/sites/myothersitecollection/_vti_bin/lists.asmx">http://mysite.com/sites/myothersitecollection<strong>/_vti_bin/lists.asmx</strong></a>. The site collection has been virtualized by SharePoint.</p>
<p>Without virtualization any web service consumer will have to access to the same path, usually in the root; for example <a href="http://&lt;webapps&gt;/_services/mywebservice.asmx">/_services/mywebservice.asmx&quot;&gt;/_services/mywebservice.asmx&quot;&gt;http://&lt;webapps&gt;/_services/mywebservice.asmx</a></p>
</li>
<li>You can not have SPContext
<p>SPContext is very powerful object in SharePoint development. Using this context, we can retrieve current SharePoint context without having to instantiate it. For example, you can get current SPWeb by calling SPContext.Current.Web – and you don’t need to dispose it (in fact you’re not suppose to dispose it). Still using SPContext you can have direct access to list and everything under SharePoint.</p>
<p>Without having direct access to SPContext, you have to instantiate SPWeb or SPSite using normal constructor with URL as parameter. It means new SPSite/SPWeb thread in the server memory, and you have to dispose it once you’ve done working with it.</p>
</li>
</ol>
<p>So, how can we write custom web service for SharePoint in supported mode?</p>
<p>Before we start, we have to understand SharePoint architecture and how does the processing works for web services. I take following picture from <a href="http://msdn.microsoft.com/en-us/library/bb892189(v=office.12).aspx">SharePoint Architecture</a> in MSDN. It describe how SharePoint process our request. There is SPHttpApplication which has SPRequestModule and any additional ASP.NET Module; and before the request returned back to the user SPHttpHandler is doint the job.</p>
<p><a href="http://blog.libinuko.com/files/2011/08/image.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px" title="image" border="0" alt="image" src="http://blog.libinuko.com/files/2011/08/image_thumb.png" width="670" height="299" /></a></p>
<p><strong>How SharePoint process web services?</strong></p>
<p>If we dig into into the process on how SharePoint process request to web services in _vti_bin.</p>
<p><a href="http://blog.libinuko.com/files/2011/08/image2.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blog.libinuko.com/files/2011/08/image_thumb2.png" width="809" height="282" /></a></p>
<p>There are 3 scenarios of http request to the web services,</p>
<ol>
<li>Disco request, identified by suffix ?DISCO in the web service address. For example, */_vti_bin/list.asmx?Disco </li>
<li>WSDL request, identified by suffix ?WSDL in the web service address. For example, */_vti_bin/list.asmx?Wsdl </li>
<li>Web service post request. For example, */_vti_bin/list.asmx?op=GetListItems </li>
</ol>
<p>Every request will be processed by SPHttpHandler (SharePoint) and ScriptHandlerFactory (system.web.extension), but the SPHttpHandler will be selective only for Disco and Wsdl request.</p>
<p>On disco/wsdl request, SPHttpHandler will transfer the request to wsdisco.aspx or wswsdl.aspx using <strong>Server.Execute</strong> operation. This operation ensure that wsdisco.aspx/wswsdl.aspx is receiving same request object. wsDISCO.aspx or wsWSDL.aspx will then instantiate SharePoint Context object. Any *.aspx will be successfully instantiate SharePoint context object because they are managed by SPHttpApplication and hence it also impacted by SPVirtualPath provider from SharePoint which will activate path virtualization.</p>
<p>Next, wsDISCO.aspx will transfer the request to the &lt;service&gt;DISCO.aspx and wsWSDL.aspx will transfer to the &lt;service&gt;WSDL.aspx – using Server.Execute operation. So here we have seen 2 transfer operation. At the end, the result is correct WSDL/DISCO request. The correct WSDL/DISCO will point to the correct virtual path of the request. <em>(Remember how do you create &lt;service&gt;disco.aspx / &lt;service&gt;wsdl.aspx) </em></p>
<p>When a consumer use the contract and tries to consume it. The SPHttpHandler will no longer intercept the request, but the normal ScriptHandlerFactory from System.Web.Extensions. However with the correct path in disco/wsdl, now the asmx now have the ability to look into current context from SharePoint. And hence you will be able to use SPContext.Current.Web in custom web services.</p>
<p>Part-2 is how to start create custom web services. I will need help from my buddy <a href="http://codebender.denniland.com">Denni</a> , he will code for me. –<img class="wlEmoticon wlEmoticon-openmouthedsmile" alt="Open-mouthed smile" src="http://blog.libinuko.com/files/2011/08/wlEmoticon-openmouthedsmile.png" /></p>
<p>&#160;</p>
<p>References</p>
<p>1. Writing Custom Web Services for SharePoint Products and Technology (<a title="http://msdn.microsoft.com/en-us/library/dd583131(v=office.11).aspx" href="http://msdn.microsoft.com/en-us/library/dd583131(v=office.11).aspx">http://msdn.microsoft.com/en-us/library/dd583131(v=office.11).aspx</a>)</p>
<p>2. SharePoint Architecture (<a title="http://msdn.microsoft.com/en-us/library/bb892189(v=office.12).aspx" href="http://msdn.microsoft.com/en-us/library/bb892189(v=office.12).aspx">http://msdn.microsoft.com/en-us/library/bb892189(v=office.12).aspx</a> )</p>
<p>3. Architectural Overview of Windows SharePoint Services (<a title="http://msdn.microsoft.com/en-us/library/dd583133(v=office.11).aspx" href="http://msdn.microsoft.com/en-us/library/dd583133(v=office.11).aspx">http://msdn.microsoft.com/en-us/library/dd583133(v=office.11).aspx</a>)</p>
<p>4. Modifying Built-In SharePoint Files (<a title="http://msdn.microsoft.com/en-us/library/bb803457(v=office.12).aspx" href="http://msdn.microsoft.com/en-us/library/bb803457(v=office.12).aspx">http://msdn.microsoft.com/en-us/library/bb803457(v=office.12).aspx</a>)</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/08/27/sharepoint-writing-custom-web-service-for-sharepoint-in-supported-mode-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to configure SharePoint List for Visio Diagram data source</title>
		<link>http://blog.libinuko.com/2011/08/20/how-to-configure-sharepoint-list-for-visio-diagram-data-source-2/</link>
		<comments>http://blog.libinuko.com/2011/08/20/how-to-configure-sharepoint-list-for-visio-diagram-data-source-2/#comments</comments>
		<pubDate>Sat, 20 Aug 2011 03:33:00 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[Office]]></category>
		<category><![CDATA[Office 2010]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/08/20/how-to-configure-sharepoint-list-for-visio-diagram-data-source-2/</guid>
		<description><![CDATA[English: Some of you may be not aware that we can use SharePoint List for Visio Diagram data source. So how can we configure SharePoint List for Visio Diagram data source? Following steps demonstrate how to do it using SharePoint 2010 and Visio 2010, however it also applies to SharePoint 2007 or Visio 2007. Step-by-step Open Visio (.vsd) [...] <a href="http://blog.libinuko.com/2011/08/20/how-to-configure-sharepoint-list-for-visio-diagram-data-source-2/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English:</p>
<p>Some of you may be not aware that we can use SharePoint List for Visio Diagram data source. So how can we configure SharePoint List for Visio Diagram data source? </p>
<p>Following steps demonstrate how to do it using SharePoint 2010 and Visio 2010, however it also applies to SharePoint 2007 or Visio 2007.</p>
<p><strong>Step-by-step</strong></p>
<ol>
<li>Open Visio (.vsd) file. </li>
<li>On <strong>Data</strong> tab, and&#160; <b>Link Data to Shapes</b>.
<p><a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/3731.SharePoint_5F00_Visio_5F00_Step1.png"><img alt=" " src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/3731.SharePoint_5F00_Visio_5F00_Step1.png" /></a>       </li>
<li>On&#160; <strong>Data Selector</strong> window, choose <b>Microsoft SharePoint Foundation list</b>.
<p><a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/8306.SharePoint_5F00_Visio_5F00_Step2.png"><img alt=" " src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/8306.SharePoint_5F00_Visio_5F00_Step2.png" width="514" height="412" /></a>       </li>
<li>Type SharePoint website URL
<p><a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/3108.SharePoint_5F00_Visio_5F00_Step3.png"><img alt=" " src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/3108.SharePoint_5F00_Visio_5F00_Step3.png" width="508" height="405" /></a>       </p>
<p><strong>Note</strong>: Enter username and password combination if necessary.       </p>
<p><a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/6404.SharePoint_5F00_Visio_5F00_Step4.png"><img alt=" " src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/6404.SharePoint_5F00_Visio_5F00_Step4.png" width="497" height="413" /></a>       </li>
<li>Choose SharePoint list that you want to use, then click <strong>Next</strong> and <strong>Finish</strong>.<b>        <br /></b>      <br /><a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/5444.SharePoint_5F00_Visio_5F00_Step7.png"><img alt=" " src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/5444.SharePoint_5F00_Visio_5F00_Step7.png" width="496" height="402" /></a>       </li>
<li>You will return to the main Visio diagram with data table from SharePoint list. Then you can use the table (linked-to-SharePoint List) as data source for your diagram.
<p><a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/8203.SharePoint_5F00_Visio_5F00_Step6.png"><img alt=" " src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/8203.SharePoint_5F00_Visio_5F00_Step6.png" /></a> </li>
</ol>
<p><strong>Source: </strong><a title="http://social.technet.microsoft.com/wiki/contents/articles/4225.aspx" href="http://social.technet.microsoft.com/wiki/contents/articles/4225.aspx"><strong>http://social.technet.microsoft.com/wiki/contents/articles/4225.aspx</strong></a></p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/08/20/how-to-configure-sharepoint-list-for-visio-diagram-data-source-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Webcast : Microsoft Project 2010 Solution Starters series</title>
		<link>http://blog.libinuko.com/2011/07/29/webcast-microsoft-project-2010-solution-starters-series/</link>
		<comments>http://blog.libinuko.com/2011/07/29/webcast-microsoft-project-2010-solution-starters-series/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 09:28:00 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Project Server]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/07/29/webcast-microsoft-project-2010-solution-starters-series/</guid>
		<description><![CDATA[English There are some webcast about Microsoft Project 2010 Solution Starters. It demonstrate the power and extensibility of SharePoint 2010 and Project 2010. Find out yourself on user experience series and code walkthrough here: User experience series: 1. Microsoft Project 2010 Solution Starters &#8211; User Experience #1 2. Microsoft Project 2010 Solution Starters &#8211; User [...] <a href="http://blog.libinuko.com/2011/07/29/webcast-microsoft-project-2010-solution-starters-series/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English</p>
<p>There are some webcast about Microsoft Project 2010 Solution Starters. It demonstrate the power and extensibility of SharePoint 2010 and Project 2010. Find out yourself on user experience series and code walkthrough here:</p>
<p>User experience series:</p>
<p>1. Microsoft Project 2010 Solution Starters &#8211; <a title="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13339" href="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13339">User Experience #1</a>    <br />2. Microsoft Project 2010 Solution Starters &#8211; <a href="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13340">User Experience #2</a></p>
<p>Code walkthrough:</p>
<p>1. <a href="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13341">Microsoft Project 2010 Solution Starters Drilldown &amp; Code Walkthrough</a> #1    <br />2. <a href="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13342">Microsoft Project 2010 Solution Starters Drilldown &amp; Code Walkthrough #2</a>    <br />3. <a href="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13342">Microsoft Project 2010 Solution Starters Drilldown &amp; Code Walkthrough #3</a>    <br />4. <a href="http://www.microsoft.com/events/series/epm.aspx?tab=Webcasts&amp;seriesid=51&amp;webcastid=13343">Microsoft Project 2010 Solution Starters Drilldown &amp; Code Walkthrough #4</a></p>
<p>So , are you dare to take the challenge and move to the new platform?</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/07/29/webcast-microsoft-project-2010-solution-starters-series/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharePoint 2010 Service Packs 1</title>
		<link>http://blog.libinuko.com/2011/07/01/sharepoint-2010-service-packs-1/</link>
		<comments>http://blog.libinuko.com/2011/07/01/sharepoint-2010-service-packs-1/#comments</comments>
		<pubDate>Fri, 01 Jul 2011 08:34:00 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[Office]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Service Packs]]></category>
		<category><![CDATA[SharePoint]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/07/01/sharepoint-2010-service-packs-1/</guid>
		<description><![CDATA[English A few days ago, Microsoft has released Service Packs 1 for SharePoint 2010. As usual, the installation must follow general rules of installation order: 1. SharePoint Foundation 2. SharePoint Foundation Language Packs 3. SharePoint Server 2010 4. SharePoint Server 2010 Language Packs And if you have SharePoint Server 2010, [...] <a href="http://blog.libinuko.com/2011/07/01/sharepoint-2010-service-packs-1/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English</p>
<p>A few days ago, Microsoft has released Service Packs 1 for SharePoint 2010. As usual, the installation must follow general rules of installation order:</p>
<p>1. SharePoint Foundation   <br />2. SharePoint Foundation Language Packs    <br />3. SharePoint Server 2010    <br />4. SharePoint Server 2010 Language Packs</p>
<p>And if you have SharePoint Server 2010, you can run SharePoint Configuration Wizard after completing installation of all service packs. You can skip SharePoint Configuration Wizard on installation order 1-3.</p>
<p>If you have multiple servers in a farm, make sure that you have perform the installation in all servers before kicking-in SharePoint Configuration Wizard in the server. </p>
<p>More information from the team blog : <a title="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=984" href="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=984">http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=984</a></p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/07/01/sharepoint-2010-service-packs-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharePoint Designer: Visual Touch Using Using Conditional Formatting</title>
		<link>http://blog.libinuko.com/2011/05/04/sharepoint-designer-visual-touch-using-using-conditional-formatting/</link>
		<comments>http://blog.libinuko.com/2011/05/04/sharepoint-designer-visual-touch-using-using-conditional-formatting/#comments</comments>
		<pubDate>Wed, 04 May 2011 15:26:27 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[Office]]></category>
		<category><![CDATA[Office 2010]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint Designer 2010]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[SharePoint Designer]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/?p=641</guid>
		<description><![CDATA[English: Conditional formatting now becomes easier using SharePoint Designer 2010. We can create intelligent view which able to highlight some important pointer in the display. There are 3 types of conditional formatting: 1. Show content , show content based on the pre-specified conditions 2. Hide content , hide content based on the pre-specified [...] <a href="http://blog.libinuko.com/2011/05/04/sharepoint-designer-visual-touch-using-using-conditional-formatting/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English:</p>
<p>Conditional formatting now becomes easier using SharePoint Designer 2010. We can create <strong>intelligent view which able to highlight some important pointer</strong> in the display. There are 3 types of conditional formatting:</p>
<p>1. <strong>Show content</strong> , show content based on the pre-specified conditions     <br />2. <strong>Hide content</strong> , hide content based on the pre-specified conditions     <br />3. <strong>Apply formatting</strong> , apply formatting based on the pre-specified conditions.</p>
<p>&#160;</p>
<p><strong>Visual Touch for Easy Reading</strong></p>
<p>Imagine, that you have developed a workflow that uses task list to assign task to the users. The standard task list, may look like this:</p>
<p><a href="http://blog.libinuko.com/files/2011/05/NormalTask.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="NormalTask" border="0" alt="NormalTask" src="http://blog.libinuko.com/files/2011/05/NormalTask_thumb.jpg" width="881" height="505" /></a></p>
<p>Actually there is nothing wrong with the task list web-part. However, since there <strong>isn’t any pointer on important information </strong>in the task list – then <strong>the message may not be conveyed efficiently</strong> to the reader. </p>
<p>Using conditional formatting, we will be able highlight overdue tasks, so that the task will get more attention from the user. In the picture below, we add <strong>red hand</strong> icon, if the <strong>task is overdue</strong>.</p>
<p><a href="http://blog.libinuko.com/files/2011/05/ConditionalFormattingTask.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="ConditionalFormattingTask" border="0" alt="ConditionalFormattingTask" src="http://blog.libinuko.com/files/2011/05/ConditionalFormattingTask_thumb.jpg" width="751" height="509" /></a></p>
<p>&#160;</p>
<p><strong>So, how would we do that?</strong></p>
<p>Following step-by-step will show how to create conditional formatting using SharePoint Designer 2010. I will demonstrate how to add red-hand icon to the overdue task.</p>
<p>&#160;</p>
<p>1. Open original task list view in SharePoint Designer 2010.</p>
<p><a href="http://blog.libinuko.com/files/2011/05/TaskListView.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="TaskListView" border="0" alt="TaskListView" src="http://blog.libinuko.com/files/2011/05/TaskListView_thumb.jpg" width="835" height="472" /></a></p>
<p>&#160;</p>
<p>2. Select Title column tag and then create conditional formatting by selecting <strong>Apply formatting…</strong>.</p>
<p><a href="http://blog.libinuko.com/files/2011/05/TaskListView2.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="TaskListView2" border="0" alt="TaskListView2" src="http://blog.libinuko.com/files/2011/05/TaskListView2_thumb.jpg" width="837" height="456" /></a></p>
<p>&#160;</p>
<p>3. Define formatting condition as follows:</p>
<blockquote><p>Due Date&#160; &lt;&#160; [Current Date]&#160;&#160;&#160;&#160; And</p>
<p>Status&#160;&#160;&#160;&#160;&#160; &lt;&gt;&#160; ‘Completed’</p>
</blockquote>
<p>&#160;</p>
<p><a href="http://blog.libinuko.com/files/2011/05/TaskListView3.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="TaskListView3" border="0" alt="TaskListView3" src="http://blog.libinuko.com/files/2011/05/TaskListView3_thumb.jpg" width="745" height="480" /></a></p>
<p>and then click <strong>Set Style</strong>.</p>
<p>&#160;</p>
<p>4. I have uploaded the icon in Site Assets gallery, so that I can use it as background-image.</p>
<p><a href="http://blog.libinuko.com/files/2011/05/TaskListView4.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="TaskListView4" border="0" alt="TaskListView4" src="http://blog.libinuko.com/files/2011/05/TaskListView4_thumb.jpg" width="846" height="544" /></a></p>
<p>And finally I have configure my style to:</p>
<blockquote><p>background-image: url(&#8216;../../SiteAssets/Pointer_red_22x17.gif&#8217;); background-repeat: no-repeat; background-position: left bottom; text-indent: 20px</p>
</blockquote>
<p>5. Save the changes, and you’ve done with the conditional formatting.</p>
<p>&#160;</p>
<p>Finally, adding visual touch using conditional formatting is also adding more value to the user. It will make the information more knowledgeable than plain presentation.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/05/04/sharepoint-designer-visual-touch-using-using-conditional-formatting/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SharePoint 2010: Largest Number in SharePoint Numeric Column</title>
		<link>http://blog.libinuko.com/2011/05/01/sharepoint-2010-largest-number-in-sharepoint-numeric-column/</link>
		<comments>http://blog.libinuko.com/2011/05/01/sharepoint-2010-largest-number-in-sharepoint-numeric-column/#comments</comments>
		<pubDate>Sun, 01 May 2011 15:36:02 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Boundaries]]></category>
		<category><![CDATA[Numeric column]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/05/01/sharepoint-2010-largest-number-in-sharepoint-numeric-column/</guid>
		<description><![CDATA[English: So what is the largest number in SharePoint numeric column? Before we can answer this question, let take a look how SharePoint store the data in SQL table. By design, SharePoint will map specific column type in SharePoint into SQL data type; they are nvarchar, ntext, sqlvariant, int, float and bit. For example, true/false column will [...] <a href="http://blog.libinuko.com/2011/05/01/sharepoint-2010-largest-number-in-sharepoint-numeric-column/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English:</p>
<p><u>So what is the largest number in SharePoint numeric column?</u></p>
<p>Before we can answer this question, let take a look how SharePoint store the data in SQL table. By design, SharePoint will map specific column type in SharePoint into SQL data type; they are nvarchar, ntext, sqlvariant, int, float and bit. For example, true/false column will be mapped to bit and numeric column will be mapped to float.</p>
<p>There are two types of float data type in SQL, 7 digits or 15 digits precisions (<a title="http://msdn.microsoft.com/en-us/library/ms173773.aspx" href="http://msdn.microsoft.com/en-us/library/ms173773.aspx">http://msdn.microsoft.com/en-us/library/ms173773.aspx</a>). And of course, Microsoft’s engineer will choose the larger precision 15 digits – using 8 bytes storage. (See table below)</p>
<table border="0" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td valign="top" width="133"><strong><em>n</em>value</strong></td>
<td valign="top" width="133"><strong>Precision</strong></td>
<td valign="top" width="133"><strong>Storage size</strong></td>
</tr>
<tr>
<td valign="top" width="133">1-24</td>
<td valign="top" width="133">7 digits</td>
<td valign="top" width="133">4 bytes</td>
</tr>
<tr>
<td valign="top" width="133">25-53</td>
<td valign="top" width="133">15 digits</td>
<td valign="top" width="133">8 bytes</td>
</tr>
</tbody>
</table>
<p><em>n is the number of bits that are used to store the mantissa of the float number in scientific notation.</em> </p>
<p>The <em>n</em>value represent the number of bits that are used to store the mantissa of the float number. Therefore the maximum value of the float number is 2^53 =&#160; <strong>9.00719925 × 10<sup>15</sup></strong> . </p>
<p>Precision represent the length of significant digit to which a number can be represented. When a number contains digits more than max precision digits, then it will be rounded up/down to the precision digits. For example, 12345 will be seen as 1.2345 x 10<sup>4</sup> in 5 digits precisions or 1.235 x 10<sup>4</sup> in 4 digits precisions. Hence bigger precision is desirable to represent the exact number, otherwise it will only represents approximation value.</p>
<p>Since SQL Server specifies 15 digits precision for its floating point, then you must be-careful for any number with more than 15 digits. For example, the <strong>999,999,999,999,999</strong> is maximum exact value based on 15 digits precision. Any number above that, even with different as small as 0.1 will be an approximate value; for example 999,999,999,999,999<strong>.1</strong> is same as 999,999,999,999,999 . And if you do arithmetic operation – then you may end-up with big floating error. </p>
<p>So what is the impact?</p>
<ol>
<li>Storage Boundaries (2^53)      <br />This boundaries limits the maximum value which can be stored in a numeric column. You can’t save 9.00719925<strong><u>6</u></strong> x 10<sup>15</sup> without rounding. And everything beyond this storage boundaries will be ignored and saved as 2^53 value. </li>
<li>Precision Boundaries (15 digits)      <br />This boundaries limit the number of digits before SQL starts to round-up/round-down. <strong>Remember floating data is approximate , and therefore not all value can be represented as is</strong>.&#160; As you may guess, if you try to save 999,999,999,999,999<strong>.5</strong> – you will end-up with <strong>1,000,000,000,000,000</strong> value. </li>
</ol>
<p>The good news is, we have used SQL floating data type without any problem; so we put the same faith to SharePoint numeric column. However, if you want to use SharePoint or SQL table, please ensure that you have enough precision for your data.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/05/01/sharepoint-2010-largest-number-in-sharepoint-numeric-column/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharePoint 2010: How to create Cascading Lookup Field using Client Object Model</title>
		<link>http://blog.libinuko.com/2011/01/29/sharepoint-2010-how-to-create-cascading-lookup-field-using-client-object-model/</link>
		<comments>http://blog.libinuko.com/2011/01/29/sharepoint-2010-how-to-create-cascading-lookup-field-using-client-object-model/#comments</comments>
		<pubDate>Sat, 29 Jan 2011 15:49:50 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Client Object Model]]></category>
		<category><![CDATA[SharePoint Designer]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/2011/01/29/sharepoint-2010-how-to-create-cascading-lookup-field-using-client-object-model/</guid>
		<description><![CDATA[English In previous post I have demonstrated “How to create cascading lookup field” in SharePoint 2010 using InfoPath. I will extend the possibility by utilizing Client Object Model and SharePoint Designer; therefore we don’t need InfoPath to have the cascading lookup field. Using same scenario where City is cascading lookup field from the selected Country, we’ll see [...] <a href="http://blog.libinuko.com/2011/01/29/sharepoint-2010-how-to-create-cascading-lookup-field-using-client-object-model/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English</p>
<p>In previous post I have demonstrated “<a href="http://blog.libinuko.com/2010/07/21/sharepoint-2010-how-to-create-cascading-lookup-field/" target="_blank">How to create cascading lookup field</a>” in SharePoint 2010 using InfoPath. I will extend the possibility by utilizing Client Object Model and SharePoint Designer; therefore we don’t need InfoPath to have the cascading lookup field.</p>
<p>Using same scenario where City is cascading lookup field from the selected Country, we’ll see together how Client Object Model solve the problem. In this solution we need to create JS referral to SP.js for Client Object Model and JQuery to help us working with DOM.</p>
<br /><img src="http://i.ytimg.com/vi/sFiPtoGpjFI/0.jpg" alt="media" /><br />
[See post to watch Flash video]
<p>Some key points in the video:</p>
<p>1. Put JQuery distribution in 14hive\Layouts.</p>
<p>2. Add Javascript link referral in the AdditionalPageHead place holder.</p>
<div id="codeSnippetWrapper" style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; width: 97.5%; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; cursor: text; border: silver 1px solid; padding: 4px;">
<div id="codeSnippet" style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;">
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum1" style="color: #606060;">   1:</span> <span style="color: #0000ff;">&lt;</span><span style="color: #800000;">SharePoint:ScriptLink</span> <span style="color: #ff0000;">Language</span><span style="color: #0000ff;">="Javascript"</span> <span style="color: #ff0000;">Localizable</span><span style="color: #0000ff;">="False"</span> <span style="color: #ff0000;">runat</span><span style="color: #0000ff;">="server"</span> <span style="color: #ff0000;">Name</span><span style="color: #0000ff;">="jquery-1.4.4.min.js"</span><span style="color: #0000ff;">/&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum2" style="color: #606060;">   2:</span> <span style="color: #0000ff;">&lt;</span><span style="color: #800000;">SharePoint:ScriptLink</span> <span style="color: #ff0000;">Name</span><span style="color: #0000ff;">="SP.js"</span> <span style="color: #ff0000;">runat</span><span style="color: #0000ff;">="server"</span> <span style="color: #ff0000;">OnDemand</span><span style="color: #0000ff;">="true"</span> <span style="color: #ff0000;">Localizable</span><span style="color: #0000ff;">="false"</span><span style="color: #0000ff;">/&gt;</span></pre>
<p><!--CRLF--></p>
</div>
</div>
<p>3. Add Javascript code to modify cascading selector and create Client Object Model call to retrieve cascaded value in Main conten place holder.</p>
<div id="codeSnippetWrapper" style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; width: 97.5%; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; cursor: text; border: silver 1px solid; padding: 4px;">
<div id="codeSnippet" style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;">
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum1" style="color: #606060;">   1:</span> &lt;script type=<span style="color: #006080;">"text/javascript"</span>&gt;</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum2" style="color: #606060;">   2:</span> <span style="color: #008000;">// JQuery_Script</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum3" style="color: #606060;">   3:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum4" style="color: #606060;">   4:</span> <span style="color: #0000ff;">var</span> spListItems;</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum5" style="color: #606060;">   5:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100.07%; font-family: 'Courier New', courier, monospace; direction: ltr; height: 20px; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum6" style="color: #606060;">   6:</span> <span style="color: #008000;">// Cascading lookup main function</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum7" style="color: #606060;">   7:</span> <span style="color: #0000ff;">function</span> FilterLookup(filterSource,lookupList)</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum8" style="color: #606060;">   8:</span> {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum9" style="color: #606060;">   9:</span>    <span style="color: #0000ff;">var</span> filterElement = $(<span style="color: #006080;">"select[title='"</span> + filterSource + <span style="color: #006080;">"'] option:selected"</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum10" style="color: #606060;">  10:</span>    <span style="color: #0000ff;">if</span>(filterElement.length == 0) <span style="color: #0000ff;">return</span>;</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum11" style="color: #606060;">  11:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum12" style="color: #606060;">  12:</span>    <span style="color: #0000ff;">var</span> selectedFilterText =  filterElement.text();</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum13" style="color: #606060;">  13:</span>    <span style="color: #0000ff;">var</span> selectedFilterValue = filterElement.value;</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum14" style="color: #606060;">  14:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum15" style="color: #606060;">  15:</span>    <span style="color: #0000ff;">var</span> clientCtx = <span style="color: #0000ff;">new</span> SP.ClientContext.get_current();</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum16" style="color: #606060;">  16:</span>    <span style="color: #0000ff;">var</span> spList = clientCtx.get_web().get_lists().getByTitle(lookupList);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum17" style="color: #606060;">  17:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum18" style="color: #606060;">  18:</span>    <span style="color: #0000ff;">var</span> camlQuery = <span style="color: #0000ff;">new</span> SP.CamlQuery();</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum19" style="color: #606060;">  19:</span>    camlQuery.set_viewXml(<span style="color: #006080;">'&lt;View&gt;&lt;Query&gt;&lt;Where&gt;&lt;Eq&gt;&lt;FieldRef Name=\''</span>+ filterSource +<span style="color: #006080;">'\'/&gt;'</span> +</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum20" style="color: #606060;">  20:</span>         <span style="color: #006080;">'&lt;Value Type=\'Text\'&gt;'</span>+ selectedFilterText +<span style="color: #006080;">'&lt;/Value&gt;&lt;/Eq&gt;&lt;/Where&gt;&lt;/Query&gt;&lt;/View&gt;'</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum21" style="color: #606060;">  21:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum22" style="color: #606060;">  22:</span>    <span style="color: #0000ff;">this</span>.spListItems = spList.getItems(camlQuery);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum23" style="color: #606060;">  23:</span>    clientCtx.load(spListItems);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum24" style="color: #606060;">  24:</span>    clientCtx.executeQueryAsync(Function.createDelegate(<span style="color: #0000ff;">this</span>, <span style="color: #0000ff;">this</span>.onQuerySucceeded), Function.createDelegate(<span style="color: #0000ff;">this</span>, <span style="color: #0000ff;">this</span>.onQueryFailed) );</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum25" style="color: #606060;">  25:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum26" style="color: #606060;">  26:</span> } <span style="color: #008000;">// </span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum27" style="color: #606060;">  27:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum28" style="color: #606060;">  28:</span> <span style="color: #0000ff;">function</span> onQuerySucceeded(sender, args) {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum29" style="color: #606060;">  29:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum30" style="color: #606060;">  30:</span>    alert(<span style="color: #0000ff;">this</span>.selectedFilterText);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum31" style="color: #606060;">  31:</span>    <span style="color: #008000;">// Get CityElement Select or Input</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum32" style="color: #606060;">  32:</span>    <span style="color: #0000ff;">var</span> cityElement = $(<span style="color: #006080;">"select[title='City']"</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum33" style="color: #606060;">  33:</span>    <span style="color: #0000ff;">if</span>(cityElement.length == 0) { alert(<span style="color: #006080;">'Unknown'</span>); }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum34" style="color: #606060;">  34:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum35" style="color: #606060;">  35:</span>     <span style="color: #0000ff;">var</span> options = <span style="color: #006080;">''</span>;</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum36" style="color: #606060;">  36:</span>     <span style="color: #0000ff;">var</span> listItemEnumerator = spListItems.getEnumerator();</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum37" style="color: #606060;">  37:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum38" style="color: #606060;">  38:</span>     <span style="color: #0000ff;">while</span> (listItemEnumerator.moveNext()) {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum39" style="color: #606060;">  39:</span>         <span style="color: #0000ff;">var</span> oListItem = listItemEnumerator.get_current();</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum40" style="color: #606060;">  40:</span>         options += <span style="color: #006080;">'&lt;option value="'</span> + oListItem.get_id() + <span style="color: #006080;">'"&gt;'</span> + oListItem.get_item(<span style="color: #006080;">'Title'</span>) +<span style="color: #006080;">'&lt;/option&gt;'</span>;</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum41" style="color: #606060;">  41:</span>     }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum42" style="color: #606060;">  42:</span>    cityElement.html(options);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum43" style="color: #606060;">  43:</span> }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum44" style="color: #606060;">  44:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum45" style="color: #606060;">  45:</span> <span style="color: #0000ff;">function</span> onQueryFailed(sender, args) {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum46" style="color: #606060;">  46:</span>     alert(<span style="color: #006080;">'Request failed. '</span> + args.get_message() + <span style="color: #006080;">'\n'</span> + args.get_stackTrace());</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum47" style="color: #606060;">  47:</span> }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum48" style="color: #606060;">  48:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum49" style="color: #606060;">  49:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum50" style="color: #606060;">  50:</span> <span style="color: #008000;">// Attach function on document ready</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum51" style="color: #606060;">  51:</span> $(document).ready(</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum52" style="color: #606060;">  52:</span>    <span style="color: #0000ff;">function</span>() {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum53" style="color: #606060;">  53:</span>       ExecuteOrDelayUntilScriptLoaded(FilterLookup,<span style="color: #006080;">"sp.js"</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum54" style="color: #606060;">  54:</span>       <span style="color: #008000;">//FilterLookup("Country","City");</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum55" style="color: #606060;">  55:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum56" style="color: #606060;">  56:</span>        <span style="color: #008000;">// Get CountryElement Select or Input</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum57" style="color: #606060;">  57:</span>       <span style="color: #0000ff;">var</span> countryElement = $(<span style="color: #006080;">"select[title='Country']"</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum58" style="color: #606060;">  58:</span>       <span style="color: #0000ff;">if</span>(countryElement.length == 0)</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum59" style="color: #606060;">  59:</span>       {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum60" style="color: #606060;">  60:</span>            countryElement = $(<span style="color: #006080;">"input[title='Country']"</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum61" style="color: #606060;">  61:</span>       }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum62" style="color: #606060;">  62:</span>       <span style="color: #0000ff;">if</span>(countryElement.length != 0) {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum63" style="color: #606060;">  63:</span>        <span style="color: #0000ff;">if</span>(countryElement[0].optHid) {</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum64" style="color: #606060;">  64:</span>           $(<span style="color: #006080;">"input[id='"</span> + countryElement[0].optHid + <span style="color: #006080;">"']"</span>).bind(<span style="color: #006080;">"propertychange"</span>, <span style="color: #0000ff;">function</span>() { FilterCity(); });</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum65" style="color: #606060;">  65:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum66" style="color: #606060;">  66:</span>        } <span style="color: #0000ff;">else</span>{</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum67" style="color: #606060;">  67:</span>           $(<span style="color: #006080;">"select[title='Country']"</span>).change(<span style="color: #0000ff;">function</span>() { FilterLookup(<span style="color: #006080;">"Country"</span>,<span style="color: #006080;">"City"</span>); });</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum68" style="color: #606060;">  68:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum69" style="color: #606060;">  69:</span>        }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum70" style="color: #606060;">  70:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum71" style="color: #606060;">  71:</span>    }</pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum72" style="color: #606060;">  72:</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum73" style="color: #606060;">  73:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum74" style="color: #606060;">  74:</span>    }); <span style="color: #008000;">// Document ready</span></pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum75" style="color: #606060;">  75:</span> </pre>
<p><!--CRLF--></p>
<pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"><span id="lnum76" style="color: #606060;">  76:</span> &lt;/script&gt;</pre>
<p><!--CRLF--></p>
</div>
</div>
<p>4. Finally save and set the new form as default form.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/01/29/sharepoint-2010-how-to-create-cascading-lookup-field-using-client-object-model/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>SharePoint 2010 : Enhanced CAML Intellisense in VS2010</title>
		<link>http://blog.libinuko.com/2011/01/05/sharepoint-2010-enhanced-caml-intellisense-in-vs2010/</link>
		<comments>http://blog.libinuko.com/2011/01/05/sharepoint-2010-enhanced-caml-intellisense-in-vs2010/#comments</comments>
		<pubDate>Wed, 05 Jan 2011 07:24:09 +0000</pubDate>
		<dc:creator>cakriwut</dc:creator>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[CAML]]></category>
		<category><![CDATA[Intellisense]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://blog.libinuko.com/?p=629</guid>
		<description><![CDATA[English Either you&#8217;re SharePoint geeks or newbie, intellisense is always helpfull to provide inline guidance. Previously we need to configure Visual Studio environment manually to get very basic information about CAML schema. After all, we always need better and better tools for the job.  Thanks to John F. Holliday , that provides free Visual Studio 2010 add-ins [...] <a href="http://blog.libinuko.com/2011/01/05/sharepoint-2010-enhanced-caml-intellisense-in-vs2010/">[read more...]</a>]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>English</p>
<p>Either you&#8217;re SharePoint geeks or newbie, intellisense is always helpfull to provide inline guidance. Previously we need to configure Visual Studio environment manually to get very basic information about CAML schema.</p>
<p>After all, we always need better and better tools for the job.  Thanks to John F. Holliday , that provides free Visual Studio 2010 add-ins for more sophisticated CAML intellisense - the CAML.Net.Intellisense. You can <a href="http://visualstudiogallery.msdn.microsoft.com/en-us/15055544-fda0-42db-a603-6dc32ed26fde">download the bits in Visual Studio Gallery ( Gallery &gt; Tools &gt; caml.net.intellisense)</a>. Nice job John.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://blog.libinuko.com/2011/01/05/sharepoint-2010-enhanced-caml-intellisense-in-vs2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

