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

<channel>
	<title>The Open Source U &#187; Design Tip</title>
	<atom:link href="http://blog.theopensourceu.com/category/tips/design-tip/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.theopensourceu.com</link>
	<description>An Open-Source Discovery/Education Blog</description>
	<lastBuildDate>Fri, 07 May 2010 18:39:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Violet UML Editor</title>
		<link>http://blog.theopensourceu.com/2010/03/violet-uml-editor/</link>
		<comments>http://blog.theopensourceu.com/2010/03/violet-uml-editor/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 22:17:52 +0000</pubDate>
		<dc:creator>Frank</dc:creator>
				<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Design Tip]]></category>
		<category><![CDATA[Graduate School]]></category>
		<category><![CDATA[Open Source Project]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Grad-School]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[SourceForge]]></category>
		<category><![CDATA[UML]]></category>

		<guid isPermaLink="false">http://theopensourceu.com/?p=570</guid>
		<description><![CDATA[I use UML to do quick brain storming and when exploring software. While I&#8217;ve not posted many write ups here (grad-school!),  I generally don&#8217;t want to invest a lot of time in my UML diagrams and only sometimes do I even want to save them. Often times, especially lately, I&#8217;ve been drawing on a whiteboard [...]]]></description>
			<content:encoded><![CDATA[<p>I use UML to do quick brain storming and when exploring software. While I&#8217;ve not posted many write ups here (grad-school!),  I generally don&#8217;t want to invest a lot of time in my UML diagrams and only sometimes do I even want to save them.</p>
<p>Often times, especially lately, I&#8217;ve been drawing on a whiteboard that I keep in my office.  I find this to be efficient (even over paper because I&#8217;d end up throwing it away).</p>
<p><a href="http://www.horstmann.com/design_and_patterns.html"><img class="alignright" title="OO Design &amp; Patterns, 2nd Ed Book Cover" src="http://www.horstmann.com/oodp2/oodp2.jpg" alt="OO Design &amp; Patterns, 2nd Ed Book Cover" width="270" height="333" /></a>In one of my current grad-school classes, we are using &#8220;<a title="Object-Oriented Design &amp; Patterns" href="http://www.horstmann.com/design_and_patterns.html">Object-Oriented Design &amp; Patterns</a>&#8221; by <a href="http://www.horstmann.com/">Cay S. Horstmann</a> as the class text book. I&#8217;ve enjoyed the book and it provides some decent examples. I bring the book up because apparently the author of the book created a UML package called <a title="Violet UML Software" href="http://violet.sourceforge.net/">Violet UML</a>. I&#8217;ve found this to be the best software based UML brain-storming software I&#8217;ve ever found. Here are my reasons:</p>
<ul>
<li>It loads quickly</li>
<li>I can efficiently draw diagrams without warnings or complex menus to navigate though.</li>
<li>The lack of UML rules enforcement means that I can draw partial diagrams; diagrams that mean nothing out of context.</li>
<li>It&#8217;s open source</li>
<li>So far, its more stable / reliable to <a title="ArgoUML at Tigris.org" href="http://argouml.tigris.org/">ArgoUML</a></li>
</ul>
<p>If you are looking for a UML package, I must recommend this. I searched and searched for a UML package a while back and I never came up with this. I looked at everything, no matter what and still never found it. So, if you like it, please spread the word (via your own blog, twitter, facebook, etc). I think it is well done software and worth some attention.</p>
<p><a title="Violet UML Software" href="http://violet.sourceforge.net/">http://violet.sourceforge.net/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.theopensourceu.com/2010/03/violet-uml-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ORM patterns which are &#8216;Invisible to the eye&#8217;</title>
		<link>http://blog.theopensourceu.com/2010/02/orm-patterns-which-are-invisible-to-the-eye/</link>
		<comments>http://blog.theopensourceu.com/2010/02/orm-patterns-which-are-invisible-to-the-eye/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 21:44:48 +0000</pubDate>
		<dc:creator>Frank</dc:creator>
				<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Design Tip]]></category>
		<category><![CDATA[Graduate School]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Books]]></category>
		<category><![CDATA[DVCS]]></category>
		<category><![CDATA[Grad-School]]></category>
		<category><![CDATA[ORM]]></category>

		<guid isPermaLink="false">http://theopensourceu.com/?p=559</guid>
		<description><![CDATA[The more I work with design patterns*, the more I come to respect them as a design tool. For grad-school, I&#8217;m writing a DVCS and I needed some information on ORM patterns. While I&#8217;m not sure if this is a real term, I Googled it and found a great article on Invisible to the eye. [...]]]></description>
			<content:encoded><![CDATA[<p>The more I work with design patterns*, the more I come to respect them as a design tool. For grad-school, I&#8217;m writing a DVCS and I needed some information on ORM patterns. While I&#8217;m not sure if this is a real term, I Googled it and found a great article on <a title="Invisible to the Eye (blogspot)" href="http://giorgiosironi.blogspot.com/">Invisible to the eye</a>.</p>
<p>The article can be found at: <a title="10 orm patterns: components of a object-relational mapper @ Invisible to the eye" href="http://giorgiosironi.blogspot.com/2009/08/10-orm-patterns-components-of-object.html">http://giorgiosironi.blogspot.com/2009/08/10-orm-patterns-components-of-object.html</a></p>
<p>For my project, I&#8217;m mainly interested in the <a title="P of EAA: DataMapper" href="http://martinfowler.com/eaaCatalog/dataMapper.html">Data Mapper</a> and the <a title="P of EAA: Table Data Gateway" href="http://martinfowler.com/eaaCatalog/tableDataGateway.html">Table Data Gateway</a>. Both are patterns from <a title="Martin Fowler's Web Site" href="http://martinfowler.com/">Martin Folwer&#8217;s</a> book <a title="Patterns of Enterprise Application Architecture" href="http://martinfowler.com/books.html#eaa">Patterns of Enterprise Application Architecture</a>.</p>
<p>While I&#8217;ve not read the book yet, I think I might&#8230; After classes&#8230;. Anyway, I mostly wanted to share on the 10 ROM patterns listed at Invisible to the eye.</p>
<p>*If  you&#8217;d like a good intro to design patterns, I love <a title="Prev. reference to Head First Design Patterns on tOSU" href="http://theopensourceu.com/2009/01/plans-for-the-open-source-u/">Head First Design Patterns</a></p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;">
<h1 class="title">Invisible to the eye</h1>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.theopensourceu.com/2010/02/orm-patterns-which-are-invisible-to-the-eye/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Object Relational Mapping &gt; A &#8216;Design Pattern&#8217; Solution</title>
		<link>http://blog.theopensourceu.com/2009/04/object-relational-mapping-a-design-pattern-solution/</link>
		<comments>http://blog.theopensourceu.com/2009/04/object-relational-mapping-a-design-pattern-solution/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 20:44:27 +0000</pubDate>
		<dc:creator>Frank</dc:creator>
				<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Design Tip]]></category>
		<category><![CDATA[Data Model]]></category>
		<category><![CDATA[Decorator Pattern]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[ORM]]></category>
		<category><![CDATA[Strategy Pattern]]></category>

		<guid isPermaLink="false">http://theopensourceu.com/?p=193</guid>
		<description><![CDATA[There has been a lot written about Object Relational Mapping &#8212; or ORM but I came up with a design that I intend to apply to my own projects and wanted to publish and share the idea. This idea was my own; when I wrote this I hadn&#8217;t seen this idea published elsewhere. However, the [...]]]></description>
			<content:encoded><![CDATA[<p>There has been a lot written about Object Relational Mapping &#8212; or ORM but I came up with a design that I intend to apply to my own projects and wanted to publish and share the idea.</p>
<p>This idea was my own; when I wrote this I hadn&#8217;t seen this idea published elsewhere. However, the idea is derived from a set of very common design patterns. It would not surprise me in the least if another designer/developer already implemented a similar idea. However, I digress&#8230;</p>
<h2>Preliminary Information</h2>
<p>The ORM is a method to take data stored in a relational database-type structure and represent the same data as object orientated classes.</p>
<p>I feel that the ten thousand foot level the idea is straight-forward. Assume that we are using the MVC (Model-View-Controller) design pattern for your application.  Furthermore, lets assume that we&#8217;ve got a simple object to which will represent our Model (part of the MVC).</p>
<p>Lets assume our model object is the following:</p>
<div id="attachment_228" class="wp-caption aligncenter" style="width: 245px"><a rel="attachment wp-att-228" href="http://theopensourceu.com/2009/04/object-relational-mapping-a-design-pattern-solution/classdiagram1/"><img class="size-full wp-image-228" title="Data Model Example" src="http://theopensourceu.com/wp-content/uploads/2009/04/classdiagram1.png" alt="Data Model Example" width="235" height="322" /></a><p class="wp-caption-text">Data Model Example</p></div>
<p>The idea is to take a mix of the strategy and the decorator pattern. The strategy pattern is a design pattern that allows you to define the interface for an algorithm which can be different depending on the implementation.</p>
<p>The idea of the decorator pattern is to simply add responsibility to a class (through inheritance). My ORM is a combination of the two patterns.</p>
<h2>The Design &#8211; a Class Diagram</h2>
<p>The pattern is simple.</p>
<div id="attachment_233" class="wp-caption alignleft" style="width: 413px"><a rel="attachment wp-att-233" href="http://theopensourceu.com/2009/04/object-relational-mapping-a-design-pattern-solution/objectdiagramwithpattern/"><img class="size-full wp-image-233" title="Diagram with OR Design" src="http://theopensourceu.com/wp-content/uploads/2009/04/objectdiagramwithpattern.png" alt="Diagram with OR Design" width="403" height="540" /></a><p class="wp-caption-text">Diagram with OR Design</p></div>
<p>We use the interface to represent the ability to write out or read in with the Encoder. You&#8217;d implement the interface on to a derived class of the target class.</p>
<p>Why do we implement this interface on a derived class? Strictly speaking, we don&#8217;t have to. Though, this is intentional and part of the pattern that I&#8217;m trying to describe. This is the part of the strategy pattern working for us. This would allow us to implement different encoders for different types of storage mediums.</p>
<p>This means that we could create a set for SQL server, XML and perhaps a web service if so inclined.</p>
<h2>Usage</h2>
<p>The usage, I imagine, to be simple. Setup your basic interface and then derive a target class and apply the interface. Implement your interface to write the object and read the object to/from your storage medium.</p>
<p>One point of doing this, is that if a model object contains a collection  or an instances of another model object, you can use this interface to write and retrieve that object.</p>
<h2>An Example</h2>
<p>In all honesty, I had hoped to put together a simple but working example of this. I&#8217;ve not had the time and I&#8217;ve been sitting on this post for a while. I wanted to get this post out. I still hope to get together a simple example but for the time being the description is all I&#8217;m posting.</p>
<p>If you have specific interest in an actual implemention of my concept here, please leave a message below. The interest will help modivate me to take the time to get something together.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.theopensourceu.com/2009/04/object-relational-mapping-a-design-pattern-solution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Windows OOP&#8221; vs. &#8220;Cocoa MVC&#8221;</title>
		<link>http://blog.theopensourceu.com/2009/03/windows-oop-vs-cocoa-mvc/</link>
		<comments>http://blog.theopensourceu.com/2009/03/windows-oop-vs-cocoa-mvc/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 06:16:59 +0000</pubDate>
		<dc:creator>Frank</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Design Tip]]></category>
		<category><![CDATA[iPhone Development]]></category>

		<guid isPermaLink="false">http://theopensourceu.com/?p=182</guid>
		<description><![CDATA[While I don't agree with the following article that windows developers (the author is looking at .NET, I believe) can't implement the MVC design pattern, I do agree with the article that MVC is probably a better way to implement one's interface. I want to direct your attention to the following article.]]></description>
			<content:encoded><![CDATA[<p>While I don&#8217;t agree with the following article that windows developers (the author is looking at .NET, I believe) can&#8217;t implement the MVC design pattern, I do agree with the article that MVC is <em>probably</em> a better way to implement one&#8217;s interface. I want to direct your attention to the following article.</p>
<p><a title=" Cocoa Is My Girlfriend » Cocoa Tutorial: Windows OOP vs Cocoa MVC" href="http://www.cimgf.com/2008/07/29/cocoa-tutorial-windows-oop-vs-cocoa-mvc/">http://www.cimgf.com/2008/07/29/cocoa-tutorial-windows-oop-vs-cocoa-mvc/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.theopensourceu.com/2009/03/windows-oop-vs-cocoa-mvc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>9 Examples » Fast and Responsive UI (Link)</title>
		<link>http://blog.theopensourceu.com/2009/02/9-examples-%c2%bb-fast-and-responsive-ui-link/</link>
		<comments>http://blog.theopensourceu.com/2009/02/9-examples-%c2%bb-fast-and-responsive-ui-link/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 21:02:49 +0000</pubDate>
		<dc:creator>Frank</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Design Tip]]></category>
		<category><![CDATA[Multi-Threading]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://theopensourceu.com/?p=159</guid>
		<description><![CDATA[One thing I&#8217;ve yet to really learn is how to make a well designed responsive user interface in .NET (or any other language). I came across this article and I thought I&#8217;d share it (and save it here for myself). I&#8217;ve yet to delve in to Graham&#8217;s example but I trust it will be valuable [...]]]></description>
			<content:encoded><![CDATA[<p>One thing I&#8217;ve yet to really learn is how to make a well designed responsive user interface in .NET (or any other language).</p>
<p>I came across this article and I thought I&#8217;d share it (and save it here for myself). I&#8217;ve yet to delve in to Graham&#8217;s example but I trust it will be valuable and hence I&#8217;m posting it here.</p>
<p><a title=" 9 Examples of creating a fast and responsive UI with multi-threading" href="http://goneale.wordpress.com/2009/01/27/9-examples-of-creating-a-fast-and-responsive-ui-with-multi-threading/">9 Examples of creating a fast and responsive UI with multi-threading</a> &#8211; <a title=" 9 Examples of creating a fast and responsive UI with multi-threading" href="http://goneale.wordpress.com/2009/01/27/9-examples-of-creating-a-fast-and-responsive-ui-with-multi-threading/">http://goneale.wordpress.com/2009/01/27/9-examples-of-creating-a-fast-and-responsive-ui-with-multi-threading/</a></p>
<p>Graham&#8217;s article also points us to another interesting article; an article he recommends: <a title="Give Your .NET-based Application a Fast and Responsive UI with Multiple Threads" href="http://msdn.microsoft.com/en-us/magazine/cc300429.aspx">Give Your .NET-based Application a Fast and Responsive UI with Multiple Threads</a> &#8211; <a title="Give Your .NET-based Application a Fast and Responsive UI with Multiple Threads" href="http://msdn.microsoft.com/en-us/magazine/cc300429.aspx">http://msdn.microsoft.com/en-us/magazine/cc300429.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.theopensourceu.com/2009/02/9-examples-%c2%bb-fast-and-responsive-ui-link/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>@@SERVERNAME</title>
		<link>http://blog.theopensourceu.com/2009/01/servername/</link>
		<comments>http://blog.theopensourceu.com/2009/01/servername/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 00:46:11 +0000</pubDate>
		<dc:creator>Frank</dc:creator>
				<category><![CDATA[Coding Tip]]></category>
		<category><![CDATA[Design Tip]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Code Example]]></category>
		<category><![CDATA[logical statements]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[SQL Server 2000]]></category>
		<category><![CDATA[SS200]]></category>
		<category><![CDATA[T-SQL]]></category>

		<guid isPermaLink="false">http://theopensourceu.com/?p=83</guid>
		<description><![CDATA[I was working on a SQL Server project and came across a piece of code that I wanted to only execute if the code was running in production. This is a fairly common problem &#8212; code that should only execute if on a specific environment. Most of the time in my career, I&#8217;ve seen people [...]]]></description>
			<content:encoded><![CDATA[<p>I was working on a SQL Server project and came across a piece of code that I wanted to <strong>only</strong> execute if the code was running in production. This is a fairly common problem &#8212; code that should only execute if on a specific environment.</p>
<p>Most of the time in my career, I&#8217;ve seen people just comment out the code in a given environment. [<em>And yes, I've seen bad mistakes with this method.</em>] While this has obvious potential side effects I didn&#8217;t have time to give it much thought&#8230; Until recently.</p>
<p>I realized that SQL Server 2000 has a system variable called @@ServerName that will always give you the server name for the active connection.</p>
<p>Using this system variable, you can write some very simple code that will only execute other code in a given environment.</p>
<h2>How can you use the variable?</h2>
<p>Usage of the system variable (and any system variable) is easy. You can use either Select, Print or  any logical statements (such as If or While loops).</p>
<p>All of the following are validate:</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #993333; font-weight: bold;">SELECT</span> @@ServerName<br />
PRINT @@ServerName<br />
<br />
<span style="color: #993333; font-weight: bold;">IF</span> @@Servername <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'Me'</span> BEGIN<br />
END</div></td></tr></tbody></table></div>
<h2>How to Implement It</h2>
<p>How I implemented it was a bit unique; I will first start with a very simple example.</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br /></div></td><td><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Exec ValidateData<br />
<br />
<span style="color: #993333; font-weight: bold;">IF</span> @@ServerName <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'ProductionSrvr'</span> BEGIN<br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">UPDATE</span> Users<br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">SET</span> Processed <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">1</span><br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">WHERE</span> UserID <span style="color: #66cc66;">=</span> @UserID<br />
END</div></td></tr></tbody></table></div>
<p>To quickly walk though this code, it is executeing a stored procedure call ValidateData and then we check the @@ServerName variable to find if it matches &#8220;ProductionSrvr&#8221;. If @@ServerName does, it will execute the update; otherwise the code would go right over the if. This would be great if you didn&#8217;t want to update the Users table in the staging or development environments but you did in production.</p>
<h2>My twist on implementation</h2>
<p>My primary employer does a thing where they lease their servers (and desktop stations) from a provider. The leases expire every 4 years. This means that every four years we migrate databases and web servers to new machines (or virtual machines, as of recent). To my knowledge, we have hundreds of Servers, serving all sorts of software and information (Web sites, databases, Cubes, etc)</p>
<p>Since our SQL Servers are no exception, I wanted to be prepared for such a switch but I still wanted to implement this because of it&#8217;s obvious benefits.</p>
<p>I obviously didn&#8217;t want to do a find and replace on all of my Stored Procedures and DTS packages (don&#8217;t ask) and so I used a function to check the @@ServerName variable against. The function was simple and an example definition follows:</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">FUNCTION</span> dbo<span style="color: #66cc66;">.</span>fn_ExampleServer <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
RETURNS VARCHAR<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">100</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #993333; font-weight: bold;">AS</span><br />
BEGIN<br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">RETURN</span> <span style="color: #ff0000;">'ExampleServer'</span> <span style="color: #808080; font-style: italic;">--Simply return a constant with the server's name</span><br />
END</div></td></tr></tbody></table></div>
<p>My @@ServerName example above would simply become:</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br /></div></td><td><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">EXEC ValidateData<br />
<br />
<span style="color: #993333; font-weight: bold;">IF</span> @@ServerName <span style="color: #66cc66;">=</span> dbo<span style="color: #66cc66;">.</span>fn_ExampleServer<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> BEGIN<br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">UPDATE</span> Users<br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">SET</span> Processed <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">1</span><br />
&nbsp; &nbsp; <span style="color: #993333; font-weight: bold;">WHERE</span> UserID <span style="color: #66cc66;">=</span> @UserID<br />
END</div></td></tr></tbody></table></div>
<p>That&#8217;s it! I hope others will find this useful.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.theopensourceu.com/2009/01/servername/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
