<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Ishak On Dotnet [ .NET ]</title>
	<atom:link href="http://ondotnet.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://ondotnet.wordpress.com</link>
	<description>Notes about Sharepoint, Workflow, ASP.NET and anything else related to .NET</description>
	<lastBuildDate>Thu, 20 Nov 2008 15:10:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='ondotnet.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Ishak On Dotnet [ .NET ]</title>
		<link>http://ondotnet.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://ondotnet.wordpress.com/osd.xml" title="Ishak On Dotnet [ .NET ]" />
	<atom:link rel='hub' href='http://ondotnet.wordpress.com/?pushpress=hub'/>
		<item>
		<title>How to send email using C# ?</title>
		<link>http://ondotnet.wordpress.com/2008/11/20/how-to-send-email-using-c/</link>
		<comments>http://ondotnet.wordpress.com/2008/11/20/how-to-send-email-using-c/#comments</comments>
		<pubDate>Thu, 20 Nov 2008 14:58:59 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[.NET Mail]]></category>
		<category><![CDATA[Mail]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/11/20/how-to-send-email-using-c/</guid>
		<description><![CDATA[Pertanyaan ini biasanya akan muncul disaat – saat terakhir kita mengerjakan project. UI sudah kelihatan, input sudah berhasil, saat memberikan notifikasi kepada user tentang hal – hal yang berkaitan dengan mereka. Dan email selalu menjadi andalan utama. Ok, kita tidak akan bercerita, kenapa harus email. Sekarang yang akan kita bahas adalah bagaimana cara mengirimkan email [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=53&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Pertanyaan ini biasanya akan muncul disaat – saat terakhir kita mengerjakan project. UI sudah kelihatan, input sudah berhasil, saat memberikan notifikasi kepada user tentang hal – hal yang berkaitan dengan mereka. Dan email selalu menjadi andalan utama. Ok, kita tidak akan bercerita, kenapa harus email.</p>
<p>Sekarang yang akan kita bahas adalah bagaimana cara mengirimkan email dengan menggunakan C# dan .NET Framework 2.0. Pada awal kemunculannya, library mail ini berada dalam System.Web.Mail. Tapi seiring dengan perkembangannya, kemudian pindah ke System.Net.Mail. So, bagaimana menggunakannya? Berikut kodenya :</p>
<p style="margin-left:36pt;"><a href="http://ondotnet.files.wordpress.com/2008/11/croppercapture2.jpg"><img class="alignnone size-full wp-image-55" title="croppercapture2" src="http://ondotnet.files.wordpress.com/2008/11/croppercapture2.jpg?w=650&#038;h=207" alt="croppercapture2" width="650" height="207" /></a></p>
<p>Simple kan ? Cukup simple. Tapi ingat…. This code only work if there is smtp in your local machine. So, how to use SMTP server at another machine/pc. Or maybe we want to use our Google mail as SMTP server&#8230;..</p>
<p>Here is the code :</p>
<p style="margin-left:36pt;"><a href="http://ondotnet.files.wordpress.com/2008/11/smptmailnetwork.jpg"><img class="alignnone size-full wp-image-56" title="smptmailnetwork" src="http://ondotnet.files.wordpress.com/2008/11/smptmailnetwork.jpg?w=650&#038;h=290" alt="smptmailnetwork" width="650" height="290" /></a></p>
<p>So simple, is it ??. Happy send email using C#</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/53/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=53&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/11/20/how-to-send-email-using-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>

		<media:content url="http://ondotnet.files.wordpress.com/2008/11/croppercapture2.jpg" medium="image">
			<media:title type="html">croppercapture2</media:title>
		</media:content>

		<media:content url="http://ondotnet.files.wordpress.com/2008/11/smptmailnetwork.jpg" medium="image">
			<media:title type="html">smptmailnetwork</media:title>
		</media:content>
	</item>
		<item>
		<title>How to modify/update task property at sharepoint ?</title>
		<link>http://ondotnet.wordpress.com/2008/05/24/how-to-modifyupdate-task-property-at-sharepoint/</link>
		<comments>http://ondotnet.wordpress.com/2008/05/24/how-to-modifyupdate-task-property-at-sharepoint/#comments</comments>
		<pubDate>Fri, 23 May 2008 17:45:57 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Infopath]]></category>
		<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/05/24/how-to-modifyupdate-task-property-at-sharepoint/</guid>
		<description><![CDATA[How to modify task list property at sharepoint directly using code ? Pertanyaan ini pasti akan banyak ditanyakan oleh para pemula yang baru saja &#8220;nyemplung&#8221; ke dalam sharepoint development khususnya workflow. Seperti yang kita ketahui, bahwa kita dapat saja menambahkan field properties pada task list. Tapi kemudian yang menjadi masalahnya adalah bagaimana cara assign valuenya [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=50&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>How to modify task list property at sharepoint directly using code ? Pertanyaan ini pasti akan banyak ditanyakan oleh para pemula yang baru saja &#8220;nyemplung&#8221; ke dalam sharepoint development khususnya workflow. Seperti yang kita ketahui, bahwa kita dapat saja menambahkan field properties pada task list. Tapi kemudian yang menjadi masalahnya adalah bagaimana cara assign valuenya ke dalam field / property yang baru saja kita tambahkan tersebut saat workflow berjalan.</p>
<p>Ok, sebelum kita masuk kedalam, perlu kita samakan persepsi mengenai 2 hal, yaitu :</p>
<ol>
<li>WorlflowProperties, yaitu properties yang dimiliki oleh workflow terkait list / dokumen yang membuat workflow tersebut berjalan ( trigger to activate workflow ).</li>
<li>TaskProperties, yaitu properties yang dimiliki oleh workflow, dimana workflow di attach. Perubahan nilai / value pada taskproperties akan memicu workflow berjalan ( onTaskChanged -&gt; dst ).</li>
</ol>
<p>Ok, sekarang mari kita mulai. Biasanya saat kita develop sebuah workflow, workflow tersebut akan di attach pada sebuah dokumen di sharepoint. Jika sebuah dokumen di create, akan memicu workflow untuk create sebuah &#8220;task&#8221;. Nah, pada task yang dicreate oleh workflow ini, kita dapat menambahkan informasi sesuai dengan keinginan kita.</p>
<p>So, bagaimana caranya menambahkan informasi pada properties di task ? Ok, cara yang paling konvensional adalah dengan menggunakan extendedproperties.</p>
<div>
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> taskproperties.ExtendedProperties[<span style="color:#006080;">"myfield"</span>]=<span style="color:#006080;">"mynewvalue"</span>;</pre>
</div>
</div>
<p>Tapi apakah cara ini dapat berjalan ? Untuk properties yang ada pada taskform, assign properties seperti ini adalah benar. Tapi jika yang kita update adalah field dari task list, maka cara ini tidak akan berjalan. Buktikan deh&#8230; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>So, bagaimana cara seharusnya ? Hmm&#8230;. sebenarnya cara yang dipergunakan adalah sedikit tricky. Jika kita ketikkan taskproperties. , maka akan muncul beberapa properties yang bisa secara langsung di assign, seperti Assignee, Description, dll. Tapi tidak dengan field yang ditambahkan secara langsung pada sharepoint. Ah, kelamaan nih, caranya gimana ?????????. Sabar donk mas&#8230;. pelan &#8211; pelan&#8230;.</p>
<p>Ok, karena kita tidak dapat update field pada task list secara langsung, maka kita gunakan trick. Caranya, gunakan properties &#8220;Description&#8221; sebagai wadah untuk transfer. Caranya, perhatikan kode berikut :</p>
<div>
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> taskProperties.Description = <span style="color:#0000ff;">string</span>.Format(<span style="color:#006080;">"{0};{1};{2}"</span>,</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span>                 workflowProperties.ListId, workflowProperties.Item.UniqueId,<span style="color:#006080;">"Test Value"</span>);</pre>
</div>
</div>
<p>Kode diatas biasanya terdapat pada prosedur OnTaskCreated, kita gunakan untuk assign value ke properties Description pada task. Kemudian buatlah sebuah handler yang akan kita attach pada list. Perhatikan kode berikut :</p>
<div>
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> <span style="color:#0000ff;">using</span> System;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> <span style="color:#0000ff;">using</span> System.Collections.Generic;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span> <span style="color:#0000ff;">using</span> System.Text;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span> <span style="color:#0000ff;">using</span> System.Web;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   5:</span> <span style="color:#0000ff;">using</span> Microsoft.SharePoint;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   6:</span>&nbsp; </pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   7:</span> <span style="color:#0000ff;">namespace</span> Workflow.TaskHandler</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   8:</span> {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   9:</span>     <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> TaskEventHandler : SPItemEventReceiver</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  10:</span>     {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  11:</span>         <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">override</span> <span style="color:#0000ff;">void</span> ItemAdded(SPItemEventProperties properties)</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  12:</span>         {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  13:</span>             <span style="color:#0000ff;">base</span>.ItemAdded(properties);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  14:</span>&nbsp; </pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  15:</span>             <span style="color:#0000ff;">if</span> (properties.ListItem[<span style="color:#006080;">"Description"</span>] != <span style="color:#0000ff;">null</span> &amp;&amp;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  16:</span>                 !<span style="color:#0000ff;">string</span>.IsNullOrEmpty(properties.ListItem[<span style="color:#006080;">"Description"</span>].ToString()))</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  17:</span>             {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  18:</span>                 <span style="color:#0000ff;">string</span>[] descriptionItem = properties.ListItem[<span style="color:#006080;">"Description"</span>].ToString().Split(<span style="color:#0000ff;">new</span> <span style="color:#0000ff;">char</span>[] {<span style="color:#006080;">';'</span>});</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  19:</span>                 <span style="color:#0000ff;">if</span> (descriptionItem.Length &gt; 2)</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  20:</span>                 {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  21:</span>                     <span style="color:#0000ff;">using</span> (SPWeb web = properties.OpenWeb())</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  22:</span>                     {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  23:</span>                         <span style="color:#0000ff;">bool</span> webAllowUnsafeUpdates = web.AllowUnsafeUpdates;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  24:</span>                         web.AllowUnsafeUpdates = <span style="color:#0000ff;">true</span>;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  25:</span>&nbsp; </pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  26:</span>                         <span style="color:#0000ff;">if</span> (!descriptionItem[2].Equals(<span style="color:#0000ff;">string</span>.Empty))</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  27:</span>                         {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  28:</span>                             properties.ListItem[<span style="color:#006080;">"Custom Field"</span>] = descriptionItem[2];</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  29:</span>                             properties.ListItem.SystemUpdate();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  30:</span>                         }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  31:</span>                         web.AllowUnsafeUpdates = webAllowUnsafeUpdates;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  32:</span>                     }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  33:</span>                 }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  34:</span>             }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  35:</span>         }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  36:</span>     }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  37:</span> }</pre>
</div>
</div>
<p>Kode diatas adalah sebuah handler yang kita modifikasi dari handler asli dari sharepoint. Kegunaannya adalah untuk mengambil value dari field &#8220;Description&#8221;, dan assign ke field &#8220;Custom Field&#8221; yang sudah kita buat pada task. Apakah sudah selesai ? Hm&#8230; pada dasarnya sudah. Hanya butuh beberapa langkah kecil, yaitu assign handler yang sudah kita buat ke task, agar pada saat task di create/ add di list, handler ini secara otomatis akan berjalan. Tapi benarkah sudah selesai ??.</p>
<p>Tunggu dulu. hehehe. Ada hal yang harus dipahami, yaitu apabila kita mengupdate properties dari sebuah task di task list yang didalamnya attach sebuah workflow, secara otomatis workflow akan execute OnTaskChanged. Hal ini tidak bisa dibiarkan, karena pada dasarnya kita hanya ingin update properties dari task, tanpa ingin workflow jalan ( kecuali memang diinginkan demikian. Tapi dalam kasus yang saya hadapi, tidak ). So, bagaimana solusinya ??&nbsp; Ternyata cukup mudah. SPItemEventReceiver ternyata memiliki 2 fungsi yang bisa dipergunakan secara langsung, yaitu : DisabledEventFiring() dan EnableEventFiring(). So, setelah kita tambahkan, kode diatas seharusnya berubah menjadi berikut ini :</p>
<div>
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> <span style="color:#0000ff;">base</span>.DisableEventFiring();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> properties.ListItem[<span style="color:#006080;">"Default Approver"</span>] = <span style="color:#0000ff;">string</span>.Empty;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span> properties.ListItem.SystemUpdate();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span> <span style="color:#0000ff;">base</span>.EnableEventFiring();</pre>
</div>
</div>
<p>Dengan tambahan 2 baris perintah diatas, dijamin, perubahan pada task properties, selama masih dalam scope yang diinginkan oleh code kita, tidak akan membuat workflow berjalan. </p>
<p>Semoga berguna.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/50/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/50/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=50&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/05/24/how-to-modifyupdate-task-property-at-sharepoint/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>
	</item>
		<item>
		<title>All About Infopath Form Development</title>
		<link>http://ondotnet.wordpress.com/2008/05/23/all-about-infopath-form-development/</link>
		<comments>http://ondotnet.wordpress.com/2008/05/23/all-about-infopath-form-development/#comments</comments>
		<pubDate>Fri, 23 May 2008 16:16:21 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[Infopath]]></category>
		<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/05/23/all-about-infopath-form-development/</guid>
		<description><![CDATA[Hm, development form menggunakan infopath memang gampang-gampang susah. Gampang, karena semuanya tinggal drag and drop, tanpa perlu coding ( jika perlu ). Susah, karena beberapa dokumentasi, baik yang terkait dengan data binding maupun yang lainnya cukup susah untuk di temukan referensinya. Mengingat hal tersebut, maka saya tuliskan beberapa pengalaman yang pernah didapatkan saat development aplikasi [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=49&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hm, development form menggunakan infopath memang gampang-gampang susah. Gampang, karena semuanya tinggal drag and drop, tanpa perlu coding ( jika perlu ). Susah, karena beberapa dokumentasi, baik yang terkait dengan data binding maupun yang lainnya cukup susah untuk di temukan referensinya.</p>
<p>Mengingat hal tersebut, maka saya tuliskan beberapa pengalaman yang pernah didapatkan saat development aplikasi ( workflow ) di sharepoint yang menggunakan infopath form sebagai UInya.</p>
<ol>
<li>Binding kedatabase, terutama untuk value decimal, selalu gunakan nilai decimal pada initialisasi awalnya. Percaya atau tidak, hal ini sudah saya buktikan. Jika pada awal koneksi ke database kita set nilainya adalah nilai bulat ( bukan decimal ) maka nanti pada saat bind ke data decimal, nilai yang akan disimpan pada file xmlnya adalah nilai bulat ( pembulatan dari nilai decimal yang di assign ke field ) dan bukan nilai asli seperti yang kita inginkan.</li>
<li>Jika sebuah field pada infopath form di bind pada sebuah field didatabase, selalu gunakan nama field atau alias dari field, yang value-nya langsung diambil dari field pada table. Kasus ini sempat membuat saya bingung, kenapa field yang saya query dari database error waktu di execute di infopath. Usut punya usut, ternyata saat initialisasi awal, nilai yang saya assign adalah nilai absolut ( select &quot;test&quot; as myfield from tbl1 ). So, saat query kita modify menjadi ( select myfield from tbl1 ) akan raise error yang sangat tidak informatif alias susah untuk diketahui sebabnya pada infopath.</li>
</ol>
<p>Demikian dulu yang bisa saya sampaikan. Semoga berguna buat rekan-rekan yang sedang dalam development menggunakan infopath form. Happy programming.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/49/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/49/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=49&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/05/23/all-about-infopath-form-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>
	</item>
		<item>
		<title>Bagaimana deploy sharepoint workflow pada load balancing server</title>
		<link>http://ondotnet.wordpress.com/2008/05/10/bagaimana-deploy-sharepoint-workflow-pada-load-balancing-server/</link>
		<comments>http://ondotnet.wordpress.com/2008/05/10/bagaimana-deploy-sharepoint-workflow-pada-load-balancing-server/#comments</comments>
		<pubDate>Sat, 10 May 2008 12:24:36 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[Office App]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/05/10/bagaimana-deploy-sharepoint-workflow-pada-load-balancing-server/</guid>
		<description><![CDATA[Hemm&#8230; masalah ini ditemui waktu deploy workflow yang sudah dibuat ke server production client. Gampang-gampang susah ternyata. Topologi servernya seperti berikut ini : Ada 4 server yang berjalan, 3 server sebagai sharepoint server dan 1 lagi sebagai database server, berikut detailnya : -&#62; 1 Server , running form load balancer services, dan indexing services -&#62; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=48&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hemm&#8230; masalah ini ditemui waktu deploy workflow yang sudah dibuat ke server production client. Gampang-gampang susah ternyata. Topologi servernya seperti berikut ini :</p>
<p><a href="http://ondotnet.files.wordpress.com/2008/05/mystate.gif"><img style="border-width:0;" src="http://ondotnet.files.wordpress.com/2008/05/mystate-thumb.gif?w=351&#038;h=247" border="0" alt="myState" width="351" height="247" align="left" /></a> Ada 4 server yang berjalan, 3 server sebagai sharepoint server dan 1 lagi sebagai database server, berikut detailnya :</p>
<p>-&gt; 1 Server , running form load balancer services, dan indexing services</p>
<p>-&gt; 2 Server, running web server</p>
<p>So, awalnya sempat bingung, kemana workflow harus diupload ? Usut punya usut, ternyata 3 server web, punya 1 alamat yang sama di client, eg : <a href="http://myspserver">http://myspserver</a>. So, batch file yang di create cukup point ke nama server tersebut untuk activate workflow. tapi ternyata ada masalah lain, yaitu karena bisa saja request dari client dilayani oleh server yang lain ( yg running web server ), so dll file dari code harus di upload dan diregister ke masing-masing web server. Hmm.. cukup ribet ternyata.</p>
<p>Apakah sudah sukses ? Ternyata belum, masih ada yang belum jalan. Content type form yang di diupload ternyata statusnya masih uploading, dan tidak berubah meski udah ditungguin selama 1 malam. Hikhik. Setelah diusut, ternyata service yang execute untuk upload dan activate content type form belum dijalankan. Mungkin ini masalahnya. Sebab jika kita menggunakan 1 server all in one, service untuk update akan langsung di excute. Uh&#8230;. setelah ngejalanin servicesnya, semuanya siap untuk di coba. Alhamdulillah, selesai juga. Sekarang tinggal menunggu feedback dari user. Semoga semua lancar. Amin&#8230;</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/48/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/48/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/48/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=48&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/05/10/bagaimana-deploy-sharepoint-workflow-pada-load-balancing-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>

		<media:content url="http://ondotnet.files.wordpress.com/2008/05/mystate-thumb.gif" medium="image">
			<media:title type="html">myState</media:title>
		</media:content>
	</item>
		<item>
		<title>Sharepoint Series : How to Create Data Connection Library</title>
		<link>http://ondotnet.wordpress.com/2008/03/26/sharepoint-series-how-to-create-data-connection-library/</link>
		<comments>http://ondotnet.wordpress.com/2008/03/26/sharepoint-series-how-to-create-data-connection-library/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 07:25:10 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Infopath]]></category>
		<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/03/26/sharepoint-series-how-to-create-data-connection-library/</guid>
		<description><![CDATA[Artikel kali ini akan menjelaskan langkah &#8211; langkah membuat data connection library di sharepoint server. Diharapkan, setelah membaca artikel ini, dapat mempermudah dalam proses development form InfoPath, terutama yang banyak menggunakan koneksi kedatabase. Ok, mari kita mulai&#8230; Step 1 : Buatlah sebuah Library dari menu Site Action &#8211;&#62; Create &#8211;&#62; Data Connection Library. Isikan semua [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=41&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Artikel kali ini akan menjelaskan langkah &#8211; langkah membuat data connection library di sharepoint server. Diharapkan, setelah membaca artikel ini, dapat mempermudah dalam proses development form InfoPath, terutama yang banyak menggunakan koneksi kedatabase. Ok, mari kita mulai&#8230; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><span style="text-decoration:underline;">Step 1 :</span></p>
<p>Buatlah sebuah Library dari menu Site Action &#8211;&gt; Create &#8211;&gt; Data Connection Library. Isikan semua property yang dibutuhkan. [ Name and Description, Navigation -&gt; pilih No, Version History -&gt; Pilih No ]</p>
<p>Step 2 :</p>
<p>Buatlah sebuah Data Connection Definition dengan format XML, bisa menggunakan sample berikut :</p>
<div style="border-right:gray 1px solid;border-top:gray 1px solid;font-size:8pt;overflow:auto;border-left:gray 1px solid;width:97.5%;cursor:text;max-height:200px;line-height:12pt;border-bottom:gray 1px solid;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;margin:20px 0 10px;padding:4px;">
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> &lt;?xml version=<span style="color:#006080;">"1.0"</span> encoding=<span style="color:#006080;">"UTF-8"</span>?&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> &lt;?MicrosoftWindowsSharePointServices ContentTypeID=<span style="color:#006080;">"0x010100B4CBD48E029A4ad8B62CB0E41868F2B0"</span>?&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span> &lt;udc:DataSource MajorVersion=<span style="color:#006080;">"2"</span> MinorVersion=<span style="color:#006080;">"0"</span> xmlns:udc=<span style="color:#006080;">"http://schemas.microsoft.com/office/infopath/2006/udc"</span>&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span>     &lt;udc:Name&gt;MyDataDefinition&lt;/udc:Name&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   5:</span>     &lt;udc:Description&gt;Format: UDC V2; Connection Type: Database; Purpose: ReadOnly;&lt;/udc:Description&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   6:</span>     &lt;udc:Type MajorVersion=<span style="color:#006080;">"2"</span> MinorVersion=<span style="color:#006080;">"0"</span> Type=<span style="color:#006080;">"Database"</span>&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   7:</span>         &lt;udc:SubType MajorVersion=<span style="color:#006080;">"0"</span> MinorVersion=<span style="color:#006080;">"0"</span> Type=<span style="color:#006080;">""</span>/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   8:</span>     &lt;/udc:Type&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   9:</span>     &lt;udc:ConnectionInfo Purpose=<span style="color:#006080;">"ReadOnly"</span> AltDataSource=<span style="color:#006080;">""</span>&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  10:</span>         &lt;udc:WsdlUrl/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  11:</span>         &lt;udc:SelectCommand&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  12:</span>             &lt;udc:ListId/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  13:</span>             &lt;udc:WebUrl/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  14:</span>             &lt;udc:ConnectionString&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  15:</span>                 Provider=SQLOLEDB.1;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  16:</span>                 Initial Catalog=MyTestDB;Data Source=myserver;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  17:</span>                 User ID=myuser;Password=mypassword;Persist Security Info=True;Use Procedure <span style="color:#0000ff;">for</span> Prepare=1;Auto Translate=True;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  18:</span>                 Packet Size=4096;Workstation ID=mypc;Use Encryption <span style="color:#0000ff;">for</span> Data=False;Tag with column collation when possible=False&lt;/udc:ConnectionString&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  19:</span>             &lt;udc:ServiceUrl UseFormsServiceProxy=<span style="color:#006080;">"false"</span>/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  20:</span>             &lt;udc:SoapAction/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  21:</span>             &lt;udc:Query&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  22:</span>                 select * from mytable <span style="color:#0000ff;">where</span> id=<span style="color:#0000ff;">null</span></pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  23:</span>             &lt;/udc:Query&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  24:</span>         &lt;/udc:SelectCommand&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  25:</span>         &lt;udc:UpdateCommand&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  26:</span>             &lt;udc:ServiceUrl UseFormsServiceProxy=<span style="color:#006080;">"false"</span>/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  27:</span>             &lt;udc:SoapAction/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  28:</span>             &lt;udc:Submit/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  29:</span>             &lt;udc:FileName&gt;Specify a filename or formula&lt;/udc:FileName&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  30:</span>             &lt;udc:FolderName AllowOverwrite=<span style="color:#006080;">""</span>/&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  31:</span>         &lt;/udc:UpdateCommand&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  32:</span>         &lt;!--udc:Authentication&gt;&lt;udc:SSO AppId=<span style="color:#006080;">''</span> CredentialType=<span style="color:#006080;">''</span> /&gt;&lt;/udc:Authentication--&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  33:</span>     &lt;/udc:ConnectionInfo&gt;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  34:</span> &lt;/udc:DataSource&gt;</pre>
</div>
</div>
<p>Save menjadi file dengan extention <strong>udcx</strong>. Bagian mana saja yang harus anda modifikasi ?</p>
<ul>
<li>&lt;udc:Name&gt;&lt;/udc:Name&gt;, ini untuk mendefinisikan nama Connection Library kita. Buatlah berbeda dgn yang lainnya</li>
<li>&lt;udc:ConnectionString&gt;&lt;/udc:ConnectionString&gt;, ini bagian dimana kita mendeklarasikan kemana koneksi akan di lakukan. pastikan semua informasi yang dimasukkan benar ( username, password ) agar bisa konek dengan database yang diinginkan. Bagi yang biasa main-main dengan Connection String di .NET, bentuk ini adalah bentuk yang biasa.</li>
<li>&lt;udc:Query&gt;&lt;/udc:Query&gt;, pada bagian ini, dispesifikasikan data yang ingin di ambil. Ini adalah bentuk SQL statement biasa, yang lazim digunakan. Bagaimana jika kita ingin dinamik ? hehehe,, tunggu saja bagian berikutnya.</li>
</ul>
<p><span style="text-decoration:underline;">Step 3:</span></p>
<p>Langkah selanjutnya adalah upload file udcx yg telah kita buat tadi, ke library yang kita buat pada langkah 1.  Yang harus diperhatikan adalah, file yang kita upload tidak bisa langsung digunakan, karena statusnya masih pending. So, you must approved it first. Letakkan mouse pointer pada nama file yang baru saja di upload, klik edit -&gt; pilih approve/reject. Akan muncul form approval, pilih approve, kemudian pilih ok. Done. Connection Library kita sudah siap untuk digunakan. Congratulation&#8230;&#8230;</p>
<p>Ok, itu saja dulu. Pada bagian selanjutnya, akan dibahas bagaimana menggunakannya pada InfoPath Form. Selamat Belajar</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/41/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/41/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=41&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/03/26/sharepoint-series-how-to-create-data-connection-library/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>
	</item>
		<item>
		<title>There is an error in XML document (4, 2), What is it ?</title>
		<link>http://ondotnet.wordpress.com/2008/03/20/there-is-an-error-in-xml-document-4-2-what-is-it/</link>
		<comments>http://ondotnet.wordpress.com/2008/03/20/there-is-an-error-in-xml-document-4-2-what-is-it/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 07:17:35 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[Infopath]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/03/20/there-is-an-error-in-xml-document-4-2-what-is-it/</guid>
		<description><![CDATA[Pertama kali melihat error ini, jadi pusing. Wah, error apa lagi ini. Usut punya usut, ternyata ini adalah error yang ditimbulkan ketika kita mengambil nilai dari sebuah XML file yang di create menjadi object, tetapi tidak ditemukan. Salah satu cara yang saya gunakan ( dapat info nya dari net ), adalah sebagai berikut  ( step [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=40&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Pertama kali melihat error ini, jadi pusing. Wah, error apa lagi ini. Usut punya usut, ternyata ini adalah error yang ditimbulkan ketika kita mengambil nilai dari sebuah XML file yang di create menjadi object, tetapi tidak ditemukan. Salah satu cara yang saya gunakan ( dapat info nya dari net ), adalah sebagai berikut  ( step lengkap dari create object sampai ambil value ):</p>
<p>&#8211;&gt; Initialize Object :</p>
<div style="border-right:gray 1px solid;border-top:gray 1px solid;font-size:8pt;overflow:auto;border-left:gray 1px solid;width:97.5%;cursor:text;max-height:200px;line-height:12pt;border-bottom:gray 1px solid;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;margin:20px 0 10px;padding:4px;">
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">void</span> LoadInitialInfoItem()</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span>     <span style="color:#0000ff;">try</span></pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span>     {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   5:</span>         InitForm request = (InitForm)XmlDeserialize(<span style="color:#0000ff;">typeof</span>(InitForm), workflowProperties.Item.File);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   6:</span>         userName = request.username;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   7:</span>         total = request.expense;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   8:</span>         WriteLogFilesInfo(<span style="color:#006080;">"LoadInitialInfoItem"</span>, request.username);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   9:</span>         WriteLogFilesInfo(<span style="color:#006080;">"LoadInitialInfoItem"</span>, request.expense.ToString());</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  10:</span>     }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  11:</span>     <span style="color:#0000ff;">catch</span> (Exception ex)</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  12:</span>     {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  13:</span>         WriteLogFiles(<span style="color:#006080;">"LoadInitialInfoItem"</span>, ex.InnerException.ToString());</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  14:</span>         userName = <span style="color:#006080;">"none"</span>;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  15:</span>         total = 0;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  16:</span>     }</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  17:</span> }</pre>
</div>
</div>
<p>&#8211;&gt; Deserialize Object :</p>
<div style="border-right:gray 1px solid;border-top:gray 1px solid;font-size:8pt;overflow:auto;border-left:gray 1px solid;width:97.5%;cursor:text;max-height:200px;line-height:12pt;border-bottom:gray 1px solid;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;margin:20px 0 10px;padding:4px;">
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">object</span> XmlDeserialize(Type type, SPFile file)</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span>     XmlSerializer serializer = <span style="color:#0000ff;">new</span> XmlSerializer(type);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span>     Stream stream = file.OpenBinaryStream();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   5:</span>     XmlTextReader reader = <span style="color:#0000ff;">new</span> XmlTextReader(stream);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   6:</span>     <span style="color:#0000ff;">object</span> obj = serializer.Deserialize(reader);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   7:</span>     reader.Close();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   8:</span>     stream.Close();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   9:</span></pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  10:</span>     <span style="color:#0000ff;">return</span> obj;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  11:</span> }</pre>
</div>
</div>
<p>Ok, itu code awalnya&#8230; Tapi ketika dijalankan, muncul error ini : &#8220;<strong>There is an error in XML document (4, 2)&#8221;. </strong>Wah sempat pusing. setelah tanya sama om Google, akhirnya dapat informasi bahwa dengan menambahkan perintah position=0 pada stream object, akan solve. Yup.. akhirnya di coba :</p>
<div style="border-right:gray 1px solid;border-top:gray 1px solid;font-size:8pt;overflow:auto;border-left:gray 1px solid;width:97.5%;cursor:text;max-height:200px;line-height:12pt;border-bottom:gray 1px solid;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;margin:20px 0 10px;padding:4px;">
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">object</span> XmlDeserialize(Type type, SPFile file)</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span>     XmlSerializer serializer = <span style="color:#0000ff;">new</span> XmlSerializer(type);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span>     Stream stream = file.OpenBinaryStream();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   5:</span>     stream.Position = 0;    <span style="color:#008000;">// Ini Tambahannya</span></pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   6:</span>     XmlTextReader reader = <span style="color:#0000ff;">new</span> XmlTextReader(stream);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   7:</span>     <span style="color:#0000ff;">object</span> obj = serializer.Deserialize(reader);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   8:</span>     reader.Close();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   9:</span>     stream.Close();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  10:</span></pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  11:</span>     <span style="color:#0000ff;">return</span> obj;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">  12:</span> }</pre>
</div>
</div>
<p>Alhamdulillah, solve juga. Waktunya melaju ke modul selanjutnya. Hope usefull for reader <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/40/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/40/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/40/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=40&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/03/20/there-is-an-error-in-xml-document-4-2-what-is-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>
	</item>
		<item>
		<title>Bagaimana Loop pada repeating table di Infopath 2007 ?</title>
		<link>http://ondotnet.wordpress.com/2008/03/14/bagaimana-loop-pada-repeating-table-di-infopath-2007/</link>
		<comments>http://ondotnet.wordpress.com/2008/03/14/bagaimana-loop-pada-repeating-table-di-infopath-2007/#comments</comments>
		<pubDate>Fri, 14 Mar 2008 09:45:28 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Infopath]]></category>
		<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/03/14/bagaimana-loop-pada-repeating-table-di-infopath-2007/</guid>
		<description><![CDATA[Masalah ini biasanya ditemui oleh para rekan-rekan yang berkecimpung dalam dunia sharepoint, terutama yang menggunakan Infopath sebagai form inputannya. Berikut adalah cara untuk looping item pada repeating table di infopath : Misalkan kita punya sebuah struktur repeating table seperti berikut ini : maka yang harus dilakukan untuk looping ( untuk ambil semua value fieldnya ) [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=39&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div>Masalah ini biasanya ditemui oleh para rekan-rekan yang berkecimpung dalam dunia sharepoint, terutama yang menggunakan Infopath sebagai form inputannya.</div>
<div>Berikut adalah cara untuk looping item pada repeating table di infopath :</div>
<div>Misalkan kita punya sebuah struktur repeating table seperti berikut ini :</div>
<p><img src="http://enterprise-solutions.swits.net/infopath2007/articles/images/200710061657.png" border="0" alt="" width="168" height="106" /></p>
<p>maka yang harus dilakukan untuk looping ( untuk ambil semua value fieldnya ) cukup dengan code berikut ini :</p>
<div>
<div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;padding:0;">
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   1:</span> XPathNavigator domNav = MainDataSource.CreateNavigator();</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   2:</span> XPathNodeIterator rows = domNav.Select(<span style="color:#006080;">"/my:myFields/my:table/my:row"</span>, NamespaceManager);</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   3:</span></pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   4:</span> <span style="color:#0000ff;">while</span> (rows.MoveNext())</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   5:</span> {</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   6:</span>     <span style="color:#0000ff;">string</span> field1 = rows.Current.SelectSingleNode(<span style="color:#006080;">"my:field1"</span>, NamespaceManager).Value;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   7:</span>     <span style="color:#0000ff;">string</span> field2 = rows.Current.SelectSingleNode(<span style="color:#006080;">"my:field2"</span>, NamespaceManager).Value;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:#f4f4f4;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   8:</span>     <span style="color:#0000ff;">string</span> field3 = rows.Current.SelectSingleNode(<span style="color:#006080;">"my:field3"</span>, NamespaceManager).Value;</pre>
<pre style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:consolas, 'Courier New', courier, monospace;background-color:white;border-style:none;margin:0;padding:0;"><span style="color:#606060;">   9:</span> }</pre>
</div>
</div>
<p>semoga berguna&#8230;.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/39/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/39/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=39&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/03/14/bagaimana-loop-pada-repeating-table-di-infopath-2007/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>

		<media:content url="http://enterprise-solutions.swits.net/infopath2007/articles/images/200710061657.png" medium="image" />
	</item>
		<item>
		<title>This task is currently locked by a running workflow and cannot be edited. Apa ini ?</title>
		<link>http://ondotnet.wordpress.com/2008/03/12/this-task-is-currently-locked-by-a-running-workflow-and-cannot-be-edited-apa-ini/</link>
		<comments>http://ondotnet.wordpress.com/2008/03/12/this-task-is-currently-locked-by-a-running-workflow-and-cannot-be-edited-apa-ini/#comments</comments>
		<pubDate>Wed, 12 Mar 2008 11:13:21 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/03/12/this-task-is-currently-locked-by-a-running-workflow-and-cannot-be-edited-apa-ini/</guid>
		<description><![CDATA[Sudah 2 hari ini utak &#8211; atik workflow disharepoint. Kepingin buat sebuah workflow yang simple tapi configurable. setelah pikir sana pikir sini, akhirnya dibuat sebuah workflow seperti ini : Simple, cuma ada satu task. Workflow ini awalnya begini : Load konfigurasi dari Infoparh form saat workflow aktif, simpan di memori Create task berdasarkan konfigurasi yang [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=38&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sudah 2 hari ini utak &#8211; atik workflow disharepoint. Kepingin buat sebuah workflow yang simple tapi configurable. setelah pikir sana pikir sini, akhirnya dibuat sebuah workflow seperti ini :</p>
<p><a href="http://ondotnet.files.wordpress.com/2008/03/spseqworkflowupdate.gif"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" src="http://ondotnet.files.wordpress.com/2008/03/spseqworkflowupdate-thumb.gif?w=120&#038;h=260" border="0" alt="SPSeqWorkflowUpdate" width="120" height="260" align="right" /></a></p>
<p>Simple, cuma ada satu task. Workflow ini awalnya begini :</p>
<ul>
<li>Load konfigurasi dari Infoparh form saat workflow aktif, simpan di memori</li>
<li>Create task berdasarkan konfigurasi yang ada.</li>
<li>saat user approve, ganti property AssignedTo pada workflow task, agar task pindah ke user yang lain</li>
<li>Jika sudah tidak ada user yg harus approve, workflow selesai / finish.</li>
</ul>
<p>Tapi apa nyana&#8230; ternyata setelah dicoba, muncul error saat update property di task :</p>
<blockquote><p>This task is currently locked by a running workflow and cannot be edited.</p></blockquote>
<p>Upps.. apa yang harus dilakukan ? cari-cari solusi dengan om G, masih belum ada jalan keluar. Ada beberapa referensi yang bilang harus update Service Pack, sudah dilakukan tapi masih belum solve. Huh&#8230; nampaknya masih harus explore lebih jauh lagi nih..</p>
<p>Tunggu saja kabarnya, gimana cara solvenya&#8230; atau kalau ada masukan, please comment here&#8230;</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/38/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/38/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=38&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/03/12/this-task-is-currently-locked-by-a-running-workflow-and-cannot-be-edited-apa-ini/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>

		<media:content url="http://ondotnet.files.wordpress.com/2008/03/spseqworkflowupdate-thumb.gif" medium="image">
			<media:title type="html">SPSeqWorkflowUpdate</media:title>
		</media:content>
	</item>
		<item>
		<title>Checklist for Creating SharePoint Web Parts</title>
		<link>http://ondotnet.wordpress.com/2008/03/06/checklist-for-creating-sharepoint-web-parts/</link>
		<comments>http://ondotnet.wordpress.com/2008/03/06/checklist-for-creating-sharepoint-web-parts/#comments</comments>
		<pubDate>Thu, 06 Mar 2008 06:35:36 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[MOSS]]></category>
		<category><![CDATA[Sharepoint]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/03/06/checklist-for-creating-sharepoint-web-parts/</guid>
		<description><![CDATA[Development webpart di sharepoint merupakan suatu tantangan tersendiri. Hal utama dikarenakan yaitu&#160; tidak ada UI ( WYSIWYG ) yang dapat dilihat. Semua dalam bentuk code. Selain itu, kompatibilitas dengan browser dan beberapa aspek lain sebenarnya harus menjadi perhatian lebih bagi developer. Microsoft baru-baru ini merilis checklist, hal-hal yang harus dipaerhatikan dalam proses development webpart disharepoint. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=35&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Development webpart di sharepoint merupakan suatu tantangan tersendiri. Hal utama dikarenakan yaitu&nbsp; tidak ada UI ( WYSIWYG ) yang dapat dilihat. Semua dalam bentuk code. Selain itu, kompatibilitas dengan browser dan beberapa aspek lain sebenarnya harus menjadi perhatian lebih bagi developer.
<p>Microsoft baru-baru ini merilis checklist, hal-hal yang harus dipaerhatikan dalam proses development webpart disharepoint.
<p>hal-hal yang harus diperhatikan dalam ceklist ini adalah :</p>
<ol>
<li>Verifying Web Part Rendering </li>
<li>Verify that Web Part Renders Appropriately Based On User permissions. </li>
<li>Verify that Static Web Part Renders Appropriately and Does Not Cause Web Part Page to Fail. </li>
<li>Verify that Web Part Appears Appropriately in Search Results. </li>
<li>Verify that Web Part Previews Properly. </li>
<li>Verifying Web Part Functionality </li>
<li>Verify that Web Part Can Be Added to Web Part Zone. </li>
<li>Verify that Web Part Works Correctly Regardless of Web Part Page Location. </li>
<li>Verify that Web Part Caching Works Correctly. </li>
<li>Verify that Changes Made in Personal View Are Not Reflected in Shared View. </li>
<li>Verify that Web Part Can Handle Asynchronous Calls to Other HTTP Sites and Web Services. </li>
<li>Verify that Web Part Works Correctly With Different Combinations of Zone Settings. </li>
<li>Verify that Web Part Can Access Resources in Different Setup Configurations. </li>
<li>Verify that Web Part Can Be Imported and Exported Correctly. </li>
<li>Verifying Web Part Properties </li>
<li>Verify that Web Part Property Attributes Are Correctly Defined. </li>
<li>Verify that Web Part Properties Displayed in Tool Pane Are User-Friendly. </li>
<li>Verify that Web Part Properties Are Not Dependent On Each Other.</li>
<li>Verifying Web Part Error Handling </li>
<li>Verify that Every Public Property Can Handle Incorrect User Input. </li>
<li>Verify that Adding Several Instances of the Same Web Part to a web Part Page (or to the Same Web Part Zone) Works Correctly. </li>
<li>Verify that Web Part Handles All of its Exceptions. </li>
</ol>
<p>Penjelasan lebih lengkapnya dapat dilihat <a href="http://msdn2.microsoft.com/en-us/library/bb985502(printer).aspx">disini</a></p>
<p>Semoga berguna.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/35/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/35/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/35/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=35&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/03/06/checklist-for-creating-sharepoint-web-parts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>
	</item>
		<item>
		<title>10 Tip untuk aplikasi ASP.NET</title>
		<link>http://ondotnet.wordpress.com/2008/03/05/10-tip-untuk-aplikasi-aspnet/</link>
		<comments>http://ondotnet.wordpress.com/2008/03/05/10-tip-untuk-aplikasi-aspnet/#comments</comments>
		<pubDate>Wed, 05 Mar 2008 01:18:32 +0000</pubDate>
		<dc:creator>Ishak</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://ondotnet.wordpress.com/2008/03/05/10-tip-untuk-aplikasi-aspnet/</guid>
		<description><![CDATA[Bagi para developer ASP.NET, ada tip menarik yang dapat dijadikan referensi pada proses deploy aplikasi ke server production. Berikut cuplikannya : 1.&#160; Generate new encryption keys When moving an application to production for the first time it is a good idea to generate new encryption keys.&#160; This includes the machine validation key and decryption key [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=34&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Bagi para developer ASP.NET, ada tip menarik yang dapat dijadikan referensi pada proses deploy aplikasi ke server production. </p>
<p>Berikut cuplikannya :</p>
<h4>1.&nbsp; Generate new encryption keys</h4>
<p>When moving an application to production for the first time it is a good idea to generate new encryption keys.&nbsp; This includes the machine validation key and decryption key as well as any other custom keys your application may be using.&nbsp; There is <a href="http://www.codeproject.com/KB/aspnet/machineKey.aspx">an article on CodeProject</a> that talks about generating machineKeys specifically that should be helpful with this.<br />
<h4>2.&nbsp; Encrypt sensitive sections of your web.config</h4>
<p>This includes both the connection string and machine key sections.&nbsp; See <a href="http://weblogs.asp.net/scottgu/archive/2006/01/09/434893.aspx">Scott Guthrie&#8217;s post</a> for some good references.&nbsp; Note that if your application runs in a clustered environment you will need to share a custom key using the RSA provider as described in an <a href="http://msdn2.microsoft.com/en-us/library/68ze1hb2%28VS.80%29.aspx">MSDN article</a>.<br />
<h4>3.&nbsp; Use trusted SQL connections</h4>
<p>Both <a href="http://idunno.org/articles/276.aspx">Barry Dorrans</a> and <a href="http://weblogs.asp.net/achang/archive/2004/04/15/113866.aspx">Alex Chang</a> have articles which discuss this in detail.
<p>&nbsp;</p>
<p>Untuk lebih lengkapnya, cek <a href="http://daptivate.com/archive/2008/02/12/top-10-best-practices-for-production-asp-net-applications.aspx">disini</a></p>
<p>Semoga berguna <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ondotnet.wordpress.com/34/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ondotnet.wordpress.com/34/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ondotnet.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ondotnet.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ondotnet.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ondotnet.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ondotnet.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ondotnet.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ondotnet.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ondotnet.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ondotnet.wordpress.com&amp;blog=1571109&amp;post=34&amp;subd=ondotnet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ondotnet.wordpress.com/2008/03/05/10-tip-untuk-aplikasi-aspnet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/afad812dbef548a63a40c011e3a203b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">coki</media:title>
		</media:content>
	</item>
	</channel>
</rss>
