<?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>Paul's random musings...</title>
	<atom:link href="http://noazdad.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://noazdad.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Tue, 17 Jan 2012 22:07:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='noazdad.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Paul's random musings...</title>
		<link>http://noazdad.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://noazdad.wordpress.com/osd.xml" title="Paul&#039;s random musings..." />
	<atom:link rel='hub' href='http://noazdad.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Blog has moved&#8230;</title>
		<link>http://noazdad.wordpress.com/2010/04/19/blog-has-moved/</link>
		<comments>http://noazdad.wordpress.com/2010/04/19/blog-has-moved/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 16:38:13 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/2010/04/19/blog-has-moved/</guid>
		<description><![CDATA[Try blogs.sybase.com/phoran for all PowerBuilder-related content. Thanks! -Paul-<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=207&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Try blogs.sybase.com/phoran for all PowerBuilder-related content.</p>
<p>Thanks!<br />
-Paul-</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/207/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=207&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2010/04/19/blog-has-moved/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>
	</item>
		<item>
		<title>2009 Napa Valley Marathon!</title>
		<link>http://noazdad.wordpress.com/2009/03/04/2009-napa-valley-marathon/</link>
		<comments>http://noazdad.wordpress.com/2009/03/04/2009-napa-valley-marathon/#comments</comments>
		<pubDate>Wed, 04 Mar 2009 23:40:20 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[Running]]></category>
		<category><![CDATA[Wine]]></category>
		<category><![CDATA[Chateau Boswell]]></category>
		<category><![CDATA[Chateau Montelena]]></category>
		<category><![CDATA[Del Dotto vineyards]]></category>
		<category><![CDATA[Napa Valley marathon]]></category>
		<category><![CDATA[Realm Cellars]]></category>
		<category><![CDATA[Reynolds Family winery]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=199</guid>
		<description><![CDATA[The Napa Valley Marathon was run on Sunday, March 1st, 2009.  26.2 miles of the most gorgeous countryside in the world.  It&#8217;s my favorite race because A) it runs the length of the Silverado Trail from Calistoga to Napa, and B) the male and female winners of the race (neither of which was me) win their [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=199&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The Napa Valley Marathon was run on Sunday, March 1st, 2009.  26.2 miles of the most gorgeous countryside in the world.  It&#8217;s my favorite race because A) it runs the length of the <a href="http://www.mapmyrun.com/run/united-states/ca/napa/865290788">Silverado Trail from Calistoga to Napa</a>, and B) the male and female winners of the race (neither of which was me) win their weight in Napa Valley wine.</p>
<div id="attachment_202" class="wp-caption alignleft" style="width: 207px"><img class="size-medium wp-image-202" title="Finished!" src="http://noazdad.files.wordpress.com/2009/03/proof.png?w=197&#038;h=300" alt="2009 Napa Valley marathon" width="197" height="300" /><p class="wp-caption-text">2009 Napa Valley marathon</p></div>
<p>This is my third consecutive Napa marathon, and after two years of absolutely gorgeous conditions, we fell victim to the odds and it POURED the entire race.  I was completely soaked thru and thru by the first mile marker, and that contributed to a miserable finishing time of 4:43.  I stopped to wring out my socks on several occasions&#8230;  I have to keep telling myself that finishing a full marathon is still an accomplishment, and I&#8217;ll do better in the next one.</p>
<p> </p>
<p>The highlight of the weekend was, of course, the wine tasting!  We had three separate private barrel tastings set up:</p>
<p><a href="http://www.deldottovineyards.com/">Del Dotto</a> was first up on Saturday, and their new tasting room and caves out in St. Helena are just spectacular.  The entire experience was first-rate.  The 2006 Sangiovese was the star of the show for me.  It&#8217;s just sublime, with silky tannins and bright red fruits coming through.  Love their Pinot Noir as well, but it&#8217;s definitely not for lovers of a more &#8220;traditional&#8221; Pinot.  Darker ruby color, almost opaque, and very fruit-forward.  Felt more like a Syrah than a Pinot, but still delicious.</p>
<p>We also visited Bennett Lane, Clos Pegase, and Chateau Montelena (featured in the movie &#8220;Bottle Shock&#8221;) on Saturday. </p>
<p>Sunday (for me) started at 4:45 am.  The starting gun went off in Calistoga at 7am, and I crossed the finish line just before 11:45, wet and tired, but satisfied that I&#8217;d given it all I had.  Proving that I bounce back like a man half my age, I had a glass of wine in my hand by 1pm!  </p>
<p> </p>
<p>The Sunday wine-related festivities began with a barrel tasting at <a href="http://www.reynoldsfamilywinery.com/">Reynolds Family</a> winery in Oakville.  Their &#8217;06 Russian River Pinot is gorgeous &#8211; Bing cherries and raspberries all day with a silky mouthfeel.  They have hand-labelled bottles that contain dried pressings from the wild mustard plants that fill the Valley.  Beautiful wines and a great experience.</p>
<p> </p>
<p>The real highlight of the weekend came at our final private cave tour/barrel tasting at <a href="http://www.chateauboswellwinery.com/">Chateau Boswell</a> in St. Helena.  Boswell owns the property, and rents space in the caves to a relatively new label - <a href="http://www.realmcellars.com/">Realm Cellars</a>.  Boswell&#8217;s tasting room is not open to the public, so you have to call ahead for an appointment.    This session lasted nearly 4 hours, and we tasted just about everything that Realm and Chateau Boswell had to offer.  Everything was just spectacular, each one better than the next&#8230;  Scott from Realm took us first, and we started with their &#8217;05 Beckstoffer/ToKalon Cab.  Wow.  It was absolutely perfect.  Realm is definitely one to keep on the radar.  We must have tasted from 8 or 9 different barrels, and everything just shone &#8211; drinkable now, but definitely with a backbone to age and develop.</p>
<p>Joshua Peeples from Chateau Boswell then led our group to their section of the caves, and we started with some of the whites in their Jacqueline label.  The Jacqueline Cuvee Blanc is a &#8220;Bordeaux Blanc&#8221;-style blend of Sauvignon Blanc and Semillon, and I absolutely loved it.  The Semillon gives this wine some real depth and a nice long finish.  The CB Chardonnay is a lush Burgundian-style chard.  It&#8217;s from the Wente clone, and is fermented for a full year on the lees with weekly battonnage.  This gives it great tropical fruit flavors, but a hazelnut/vanilla undertone that was fantastic without being overoaked.  I grabbed a half case of each.   Then we moved onto the Cabs, and they were equally as wonderful.  </p>
<p>We couldn&#8217;t have been treated better, and the wines were glorious.</p>
<p> </p>
<p>Unfortunately, the rainy weather out in Napa kept us from enjoying the Valley to its fullest.  We&#8217;d wanted to take a side trip up into Healdsburg and Geyserville for some Pinot tastings, but we never made it.   The Healdsburg marathon is October 11th &#8211; maybe I&#8217;ll make it then!!</p>
<p>Salud!</p>
<p>-Paul-</p>
<br /> Tagged: Chateau Boswell, Chateau Montelena, Del Dotto vineyards, Napa Valley marathon, Realm Cellars, Reynolds Family winery <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/199/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=199&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2009/03/04/2009-napa-valley-marathon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2009/03/proof.png?w=197" medium="image">
			<media:title type="html">Finished!</media:title>
		</media:content>
	</item>
		<item>
		<title>Techwave Goes Global</title>
		<link>http://noazdad.wordpress.com/2009/02/24/techwave-goes-global/</link>
		<comments>http://noazdad.wordpress.com/2009/02/24/techwave-goes-global/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 14:33:27 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[PowerDesigner]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=193</guid>
		<description><![CDATA[The annual Sybase International User Conference known affectionately as &#8220;Techwave&#8221; is no more, at least as we know it&#8230;.   The new plan is to hold several regional events around the world, so instead of a single 5-day conference somewhere in the US, there will be 5 shorter events held at international locations. Some questions [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=193&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The annual Sybase International User Conference known affectionately as &#8220;Techwave&#8221; is no more, at least as we know it&#8230;.   The new plan is to hold several regional events around the world, so instead of a single 5-day conference somewhere in the US, there will be 5 shorter events held at international locations.</p>
<p>Some questions I know you&#8217;re going to ask:</p>
<p><em><span style="font-style:normal;"><strong>Is this a cost cutting measure?  Is Sybase in financial trouble?</strong></span><br />
<span style="font-style:normal;">No.  In fact, Sybase just posted it&#8217;s best financial results ever, for both a year and a quarter.  The cost of holding multiple events will actually exceed that of holding one single event, so this is more about (re-) establishing customer relationships and educating the market on Sybase initiatives.</span></em></p>
<p><em><span style="font-style:normal;"><br />
</span></em></p>
<p><em><span style="font-style:normal;"><strong>What will the new events look like?  How will the programming change now that the event isn&#8217;t centralized?<br />
</strong></span><span style="font-style:normal;">Sybase will be hosting a series of 2-day regional events in global markets during the second half of 2009.  There will be both business and technical content.  In certain locations, there may also be vertical content, and certain sessions may even be conducted in the local language.</span></em></p>
<p><em><span style="font-style:normal;"> </span> </em></p>
<p><em><span style="font-style:normal;"><strong>What are the dates and locations of these events?<br />
</strong></span><span style="font-style:normal;">To be determined.  As soon as these are decided, look for a public announcement here, or at www.sybase.com.</span></em></p>
<p> </p>
<p><em><span style="font-style:normal;"><strong>Was TechWave losing its popularity with attendees over the years?<br />
</strong></span><span style="font-style:normal;">Just the opposite &#8211; TechWave has always been a popular event for Sybase customers, and the 2008 conference was voted &#8220;best ever&#8221; by the attendees.  This is about increasing Sybase&#8217;s flexibility in corporate activities.  A significant percentage of TechWave attendees came from countries outside North America, and this new model will help Sybase reach out to an ever-growing global customer base.</span></em></p>
<p> </p>
<p><em><span style="font-style:normal;"><strong>What will the new sessions cost?  Will there be cancellation fees for people that have already registered for  TechWave?<br />
</strong></span><span style="font-style:normal;">Sybase will be announcing the registration process and costs over the coming weeks and months.  It is anticipated that the registration cost will be somewhere in the US$200 range.  Since registration for TechWave 2009 had not yet opened, there will be no cancellation fees.</span></em></p>
<p> </p>
<p><em><span style="font-style:normal;"><strong>Will Sybase Senior Management be attending these conference sessions?<br />
</strong></span><span style="font-style:normal;">Sybase&#8217;s executive management team has a strong commitment to make these conferences, and the customer, a priority.  There will be Executive keynotes at each session to describe the corporate vision and technology roadmap, but the actual agenda for the conferences is still under development.</span></em></p>
<p> </p>
<p><em><span style="font-style:normal;"><strong>How will sponsors who have participated in the past, or committed to sponsor in 2009 be affected?<br />
</strong></span><span style="font-style:normal;">Sybase is working to develop a conference sponsorship package that will work for the various sponsors.  The thought now is to have global sponsorships, as well as local sponsorships in specific markets.</span></em></p>
<p><em><span style="font-style:normal;"> </span> <span style="font-style:normal;"> </span></em></p>
<p>That having been said, I&#8217;ll miss the old TechWave.   I&#8217;ve been to nearly every one &#8211; even back to the days of the PowerSoft User Conferences.  I missed the first one in Dallas, &#8217;97 in Nashville and &#8217;98 in Los Angeles, but have been a fixture at all the years they were held in Orlando, San Diego, or Las Vegas.  I even quit a job once because my Director told me I couldn&#8217;t attend&#8230;  I found another one while at the conference.  :)</p>
<p> </p>
<p>Thoughts on this announcement?  Favorite TechWave memories from years past?  Leave me some comments&#8230;</p>
<p>-Paul-</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=193&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2009/02/24/techwave-goes-global/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>
	</item>
		<item>
		<title>There&#8217;s a new Sheriff in town&#8230;</title>
		<link>http://noazdad.wordpress.com/2009/02/19/theres-a-new-sheriff-in-town/</link>
		<comments>http://noazdad.wordpress.com/2009/02/19/theres-a-new-sheriff-in-town/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 21:12:57 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[11.x]]></category>
		<category><![CDATA[licensing]]></category>
		<category><![CDATA[SySAM]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=182</guid>
		<description><![CDATA[&#8230;and its name is SySAM.   Sybase Software Asset Management 2.0, to be more precise.  This is the new software licensing mechanism, based on FlexNET, that now governs a good portion of the Sybase product catalog.  It has been in use with ASE and PowerDesigner for some time, and will eventually cover IQ and SUP [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=182&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>&#8230;and its name is SySAM.</p>
<p> </p>
<p><strong>Sy</strong>base <strong>S</strong>oftware <strong>A</strong>sset <strong>M</strong>anagement 2.0, to be more precise.  This is the new software licensing mechanism, based on FlexNET, that now governs a good portion of the Sybase product catalog.  It has been in use with ASE and PowerDesigner for some time, and will eventually cover IQ and SUP as well.  SySAM support was introduced into PowerBuilder as of 11.0, and it now governs all installed copies of PowerBuilder and InfoMaker.   Prior releases of PowerBuilder and PowerDesigner relied on the &#8220;honor system&#8221; of license enforcement.  To paraphrase a famous movie quote, &#8220;it&#8217;s not cheating unless you get caught, and if you&#8217;re not cheating, you&#8217;re not trying&#8221;.  Software companies that don&#8217;t enforce their licensing terms won&#8217;t be in business for long.  </p>
<p>So like it or not, SySAM is here to stay&#8230;   </p>
<p> </p>
<p>Anyone that is considering an upgrade to 11.x from 10.x release or earlier will have to understand the ramifications of SySAM license management.  The good news is, it&#8217;s fairly simple once you understand the basics.  The Help file and <a title="SySAM Product Documentation" href="http://tinyurl.com/bmx8ap" target="_blank">product documentation</a> cover the ins and outs of SySAM in exhaustive detail.   This post is just going to cover the basics.</p>
<p> </p>
<p><strong>Decide on a license model</strong></p>
<p>There are two basic license models available with PowerBuilder&#8217;s implementation of SySAM.  These are &#8220;served&#8221; and &#8220;unserved&#8221;.   Let&#8217;s start by describing the unserved model first, since it&#8217;s easier to understand.</p>
<p>With an unserved model, each workstation receives an .LIC file that is generated specifically for that machine.  The Sybase <a title="Software Product Download Center" href="http://sybase.subscribenet.com" target="_blank">Software Product Download Center</a> website is where you go to create these files.  An .LIC file can be generated based on the MAC address of the network card or the serial number of the harddrive, so collect this information before you logon to the SPDC website.   When you install PowerBuilder, it will ask whether you&#8217;re using a Served or Unserved license, and if you answer &#8220;unserved&#8221;, it will prompt you for this .LIC file.   You can also apply the .LIC file after installation by going to Tools &gt; Update License&#8230;</p>
<p>A served model means that a SySAM server process has been installed and is running somewhere on the network.  This process hosts the actual licenses and serves them up whenever a development workstation connects.   When using the SPDC for a served model, you are not prompted for individual MAC addresses or hard drive serial numbers &#8211; just the number of authorized licenses that you&#8217;ve purchased.  The SPDC generates a single .LIC file that gets loaded into the SySAM server.  When you install PB on the workstation and say &#8220;Served license&#8221;, you&#8217;re prompted for the IP address (or DNS name) of the server running SySAM.  As each workstation connects, they decrement the available license count until it is exhausted.  </p>
<p>Now, one might infer that if you&#8217;re running a served model, and don&#8217;t have access to the SySAM server when starting PB, you&#8217;d be denied access&#8230;  Well, yes and no!  SySAM allows a &#8220;grace period&#8221; for each workstation, which allows you to run disconnected from SySAM for up to 30 days before PB won&#8217;t start.  Once you re-authenticate to the SySAM server, PB gets unlocked again.</p>
<p>It&#8217;s pretty clear that a served license model would benefit larger installations, because it saves someone the hassle of collecting all the MAC addresses of the development workstations.  Smaller shops will probably lean toward standalone &#8220;unserved&#8221; models, so that nobody has to tend to the SySAM server process.</p>
<p> </p>
<p><strong>Other random things to consider</strong></p>
<p><em>Alternate Use licenses</em>  <br />
SySAM allows you to generate a second, &#8220;alternate use&#8221; license for each purchased license of PB.  This can be used for a home workstation or a dedicated &#8220;build machine&#8221;.  The theory here is that a user should be allowed to work from home (or any other second machine) without requiring a second license to be purchased &#8211; you can&#8217;t be in two places at once!  And if you&#8217;ve dedicated a single machine for nothing but the deployment process (i.e., no active development work is being done on it), that&#8217;s perfectly acceptable for an alternate use license.</p>
<p> </p>
<p><em>Citrix MetaFrame or Remote Desktop development</em><br />
In this architecture, PB is installed on one single machine, and the developers connect to it and run Virtual sessions.  Development shops that use this architecture MUST use the served model.  The standalone unserved license model is not supported for Citrix or RDP users.  Now, this statement only applies to running the PowerBuilder IDE.  Deployed PB applications can still be run via Citrix or RDP without licensing implications.</p>
<p> </p>
<p><em>Can I change from Served to Unserved (or vice-versa)??<br />
<span style="font-style:normal;">Yes.  This is done at the SPDC website.  All you do is &#8220;check in&#8221; the existing license file</span><span style="font-style:normal;"> and generate new ones with the new parameters.  However, if you&#8217;re doing a lot of checkins and generations, expect a call from your Sales Rep to find out the reasons why.  PowerBuilder does not support a &#8220;floating&#8221; license model, and a big volume of checkin/regenerate activity is a clear indication of someone trying to get away with something fishy&#8230;</span></em></p>
<p> </p>
<p><em><span style="font-style:normal;">The bottom line is this:  Sybase has a right, and in fact a duty, to enforce its licensing terms.  SySAM is an effective tool to do just that.  It may be a bit of a headache initially, but once it&#8217;s set up, you usually don&#8217;t have to bother with it again.  It really is in everyone&#8217;s best interests.</span></em></p>
<p> </p>
<p><em><span style="font-style:normal;">Enjoy!<br />
-Paul- </span></em></p>
<br /> Tagged: 11.x, licensing, PowerBuilder, SySAM <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/182/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=182&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2009/02/19/theres-a-new-sheriff-in-town/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>
	</item>
		<item>
		<title>Calling .NET Web Services from PB11.5</title>
		<link>http://noazdad.wordpress.com/2009/01/19/calling-net-web-services-from-pb115/</link>
		<comments>http://noazdad.wordpress.com/2009/01/19/calling-net-web-services-from-pb115/#comments</comments>
		<pubDate>Mon, 19 Jan 2009 23:33:06 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[11.5]]></category>
		<category><![CDATA[barack obama]]></category>
		<category><![CDATA[george bush]]></category>
		<category><![CDATA[web services]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=163</guid>
		<description><![CDATA[On the eve of this historic event &#8211; the Inauguration of Barack Obama as our 44th President &#8211; I thought it only fitting to provide a post that combined PowerBuilder with Politics&#8230; The web service in question serves up a random quote from our incomparable, (and soon to be unemployed) 43rd President, George W. Bush. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=163&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>On the eve of this historic event &#8211; the Inauguration of <a href="http://www.barackobama.com/index.php">Barack Obama</a> as our 44th President &#8211; I thought it only fitting to provide a post that combined PowerBuilder with Politics&#8230;  The web service in question serves up a random quote from our incomparable, (and soon to be unemployed) 43rd President, <a href="http://en.wikipedia.org/wiki/George_W._Bush">George W. Bush</a>.</p>
<p>This entry will show you how easy it is to consume a web service using the .NET web services engine within PB11.5.</p>
<p><strong>Step 1. Get yourself some WSDL</strong><br />
The language of SOAP-based web services is WSDL, or <a href="http://www.w3.org/TR/wsdl">Web Services Descriptor Language</a>.  This highly arcane XML syntax contains the entire description of a web service, from the methods it exposes to the datatypes of the parameters it accepts and returns.  Most web service engines will serve up the WSDL for their service by simply adding ?WSDL to the end of the URL.  For example, we&#8217;ll be using the service at http://greg.froh.ca/fun/random_bushism/.<br />
To see the WSDL, use this link: http://greg.froh.ca/fun/random-bushism/soap/?wsdl<br />
(Save that last URL to your clipboard, you&#8217;ll need it in step 2 below&#8230;)</p>
<p><strong>Step 2.  Build a Web Services Proxy</strong><br />
PB11.5 ships with a sample Web Services application.  I&#8217;ll add the Random Bushisms web service to that application, since it already has most of the app infrastructure in place.  That workspace can be found in <code>C:\Documents and Settings\All Users\Documents\Sybase\PowerBuilder 11.5\Code Examples\Web Services</code>.</p>
<p>To create a web services proxy, select File * New.  In the Project tab, select Web Service Proxy, as shown in image #1.</p>
<p><img class="alignnone size-full wp-image-164" title="File - New dialog" src="http://noazdad.files.wordpress.com/2009/01/wsp.png?w=600" alt="File - New dialog"   /></p>
<p> </p>
<p>The Web Services Proxy project object consists of two tabs &#8211; General and Web Service.</p>
<p>Let&#8217;s start with the General tab.<br />
<em>Deployment PBL: </em>This is where PB will generate the Proxy class, so you&#8217;re selecting a PBL.  The best practice (and the standard followed in the example workspace) is to create a PBL specifically for Proxy classes.<br />
<em>Proxy Name Prefix: </em> This allows you to set your naming conventions for the proxy classes and their associated artifacts.  I prefer &#8220;s&#8221; (for service) followed by a sequential number and an underscore.  For the Bushism service, I used the prefix <strong>s21_</strong></p>
<p> </p>
<p><img class="alignnone size-full wp-image-166" title="Proxy Object Web Services tab" src="http://noazdad.files.wordpress.com/2009/01/wsp_project1.png?w=600" alt="Proxy Object Web Services tab"   /></p>
<p>Now on to the Web Service tab (image 2 above).</p>
<p>The top field is the WSDL location, and you have two choices.  You can either paste in a URL to web services WSDL somewhere out on the internet, or you can click the button with the elipses to select a file on your local file system that has a .WSDL extension.  In our case, we&#8217;re using a public service, so paste in http://greg.froh.ca/fun/random_bushism/soap/?WSDL.  (I told you that you&#8217;d need it&#8230;)</p>
<p><em>Note:  If this URL is unreachable or returns an error, I&#8217;ve included the .WSDL file in the <a href="http://blogs.sybase.com/phoran/wp-content/uploads/2009/03/pb115_webservices.zip" target="_blank">PB115_webservices.zip file</a></em><em>, which can be downloaded from http://blogs.sybase.com/phoran/wp-content/uploads/2009/03/pb115_webservices.zip.  PH</em></p>
<p>The next step is to click the <strong>Services&#8230;</strong> button.  This causes PB to introspect the WSDL file, and bring back this nice graphical treeview dialog containing the methods and structures contained in the WSDL.  Here&#8217;s what that dialog looks like:</p>
<p><img class="alignnone size-full wp-image-167" title="Web Service structures and methods" src="http://noazdad.files.wordpress.com/2009/01/wsp_services.png?w=600" alt="Web Service structures and methods"   /></p>
<p>Trust me &#8211; be thankful for this dialog.  You don&#8217;t want to have to read that WSDL syntax yourself&#8230;  What you&#8217;re doing in this dialog is selecting the service&#8217;s methods that you want to expose through the proxy.  And, if those services return structures instead of simple datatypes as parameters, you&#8217;ll select the corresponding structures as well.  This service is fairly simple &#8211; there&#8217;s one method:  RandomBushismService, and one structure: RandomBushism.</p>
<p>Finally, in the WSDL Engine box, select the .NET engine, and provide a name for the .NET assembly DLL that will be generated.  Click Save to save the project definition, and click Deploy to create the proxy.  You should see two new entries in the Proxies PBL.</p>
<p>s21_randombushismservice:  This is the proxy itself.  You can open it and see the exposed method &#8220;getRandomBushism()&#8221;.</p>
<p>s21_randombushism:  This is an NVO with two public instance variables &#8211; Bushism and Context, which represents the structure returned from the web service call.</p>
<p><strong>Step 3.  Create a visual interface to display the results.</strong><br />
In the tabpages.pbl file, the ancestor class <em>uo_ancestor</em> contains all the plumbing to instantiate the service proxy.  All you need to do is provide the invocation code, and then process the output.  Since the service returns two strings &#8211; the quote itself, and the corresponding context in which it was said, I created a simple layout with two statictext controls.</p>
<p> </p>
<p><img class="alignnone size-medium wp-image-177" title="Bushisms user object" src="http://noazdad.files.wordpress.com/2009/01/wsp_uo1.png?w=300&#038;h=170" alt="Bushisms user object" width="300" height="170" /></p>
<p> </p>
<p> </p>
<p>In the clicked event of the Invoke button, add the following code:<br />
<code><br />
s21_randombushismservice   px_Service<br />
s21_randombushism  lstr_bushism</code></p>
<p><code>if instantiateService(px_Service, "s21_randombushismservice") then</code></p>
<p><code>TRY<br />
   lstr_bushism		=	px_Service.getRandomBushism( )</code></p>
<p><code>   st_bushism.text	=	lstr_bushism.bushism<br />
   st_context.text		=	lstr_bushism.context</p>
<p>CATCH (Throwable t)<br />
   MessageBox("Invocation Error", t.GetMessage(), StopSign!)<br />
END TRY</p>
<p></code></p>
<p> </p>
<p> </p>
<p><code>end if<br />
</code></p>
<p>It couldn&#8217;t be simpler.  Instantiate the proxy class, invoke the method, use the results&#8230;<br />
Save the object into the tabpages.PBL as uo_bushisms.  The instantiateService() method is defined in the ancestor class uo_ancestor, so browse that at your discretion.</p>
<p><strong>Step 4.  Add the new service definition to the Service treeview.</strong><br />
The final step hooks this all together and allows the application to run with our changes.  This isn&#8217;t really a requirement to get Web Services working from PB, it&#8217;s just to get them callable from this particular application.  The main treeview is driven from a datawindow whose resultset is hard-coded into the .data attribute.</p>
<p>In the ws.pbl file, open the datawindow d_svclist.</p>
<p>If the Data pane is not visible, select View * Data, then go to the Data tab.</p>
<p>Insert a new row, and add the following column values (these can be copied and pasted from here):</p>
<p>svctype:     RPC<br />
svcname:   Random Bushism<br />
svcdesc:    Retrieve a random George Bush quotation<br />
svcwsdl:    http://greg.froh.ca/fun/random-bushism/soap/?wsdl<br />
svcsrc:       http://www.xmethods.com/ve2/ViewListing.po?key=uuid:83F65DE6-6676-676A-C8F3-213660CD696E</p>
<p>svcimpl:    Microsoft .NET<br />
svcuo:        uo_bushisms<br />
svcstatus:  Y</p>
<p>Save the datawindow, then try running it!</p>
<p><img class="alignnone size-medium wp-image-171" title="Web Services sample application" src="http://noazdad.files.wordpress.com/2009/01/ws_app.png?w=300&#038;h=174" alt="Web Services sample application" width="300" height="174" /></p>
<p>I&#8217;ve uploaded the workspace with all these revisions intact into the <a href="http://blogs.sybase.com/phoran/wp-content/uploads/2009/03/pb115_webservices.zip" target="_blank">PB115_webservices.zip file</a>.</p>
<p>Enjoy!<br />
-Paul-</p>
<br /> Tagged: 11.5, barack obama, george bush, web services <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/163/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=163&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2009/01/19/calling-net-web-services-from-pb115/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2009/01/wsp.png" medium="image">
			<media:title type="html">File - New dialog</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2009/01/wsp_project1.png" medium="image">
			<media:title type="html">Proxy Object Web Services tab</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2009/01/wsp_services.png" medium="image">
			<media:title type="html">Web Service structures and methods</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2009/01/wsp_uo1.png?w=300" medium="image">
			<media:title type="html">Bushisms user object</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2009/01/ws_app.png?w=300" medium="image">
			<media:title type="html">Web Services sample application</media:title>
		</media:content>
	</item>
		<item>
		<title>Do you miss ObjectCycle?</title>
		<link>http://noazdad.wordpress.com/2009/01/14/do-you-miss-objectcycle/</link>
		<comments>http://noazdad.wordpress.com/2009/01/14/do-you-miss-objectcycle/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 22:12:27 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[E. Crane Computing]]></category>
		<category><![CDATA[ObjectCycle]]></category>
		<category><![CDATA[powergen]]></category>
		<category><![CDATA[source code control]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=153</guid>
		<description><![CDATA[Ah, the good old days of PowerBuilder 6.5&#8230; It was a rock solid release, every consultant that could drop two commandbuttons on a window was making crazy money, and PowerBuilder shipped with it&#8217;s own Source Control package named ObjectCycle. It wasn&#8217;t a fancy integrated behemoth like Borland StarTeam or Rational ClearCase, but it was tightly [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=153&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ah, the good old days of PowerBuilder 6.5&#8230;</p>
<p>It was a rock solid release, every consultant that could drop two commandbuttons on a window was making crazy money, and PowerBuilder shipped with it&#8217;s own Source Control package named ObjectCycle.  It wasn&#8217;t a fancy integrated behemoth like <a href="http://www.borland.com/us/products/starteam/index.html">Borland StarTeam</a> or <a href="http://www-01.ibm.com/software/awdtools/clearcase/">Rational ClearCase</a>, but it was tightly integrated with PowerBuilder and its PBLs, which every other SCC package on the planet had trouble with&#8230;  It did the job of basic version control for PowerBuilder, and the price was right.</p>
<p>ObjectCycle was <a href="http://www.sybase.com/detail?id=20479">EOL&#8217;d</a> in 1999, but was still heavily used by companies that had frozen on PB 6.5 or 7.x.  Then came PB8, and in that release Sybase completely revamped the SCC interface, utilizing the Microsoft SCC API.  A new, basic SCC package called PBNative was developed for PB8, and is still shipping today.  PBNative is extremely limited in scope, offering only Checkout/Checkin control and &#8220;Get Latest Version&#8221; operations.  It stores only the most recent revision in its &#8220;repository&#8221; (which is just a folder on a shared LAN drive), and does <em>not</em> manage the version history of an object.  A robust SCC package should store its repository in a full-featured DBMS, not the Windows filesystem&#8230;  In my opinion, every development shop that is currently using PBNative (or doing nothing!) should be actively pursuing a real SCC provider&#8230;</p>
<p>There&#8217;s clearly a niche here.  The PB world desperately needs a basic Version Management package with more functionality than PBNative, at an attractive price point, that is well-integrated with PowerBuilder.</p>
<p>As they say in the Bible &#8211; ask and ye shall receive.</p>
<p>Our good friends at <a href="http://www.ecrane.com/">E. Crane Computing</a>, the creators of the now-legendary <a href="http://www.ecrane.com/PowerGen1.cfm">PowerGen</a> product, are releasing a new SCC tool called PowerVCS.  I spoke with E. Crane&#8217;s CEO, Phil Wallingford, and he gave me some general information about the new product, which is tentatively scheduled for limited beta here in Q1.</p>
<ul>
<li>PowerVCS will have a pure &#8220;web&#8221; architecture, with a mySQL repository on the backend and a browser-based administration console on the front-end.</li>
<li>It will be offered in two modes:  Private &#8211; where the PowerVCS server is installed and running inside your data center; and Hosted &#8211; where E. Crane will host the server-side components.</li>
<li>There will be a commandline interface, so batch-scripted build procedures can be developed.</li>
<li>Pricing is still being determined, but E. Crane is considering a monthly subscription model in the US$10 to $20 per month range.</li>
</ul>
<p>I consider this to be a HUGE announcement, one that a lot of PB shops will absolutely benefit from.  If you&#8217;ve ever used the PowerGen tool for automating your PB build process, you know that E. Crane puts out quality software, and is intimately familiar with the ins and outs of PowerBuilder development.  (And if you haven&#8217;t used PowerGen, what are you waiting for???)</p>
<p>For more information on PowerVCS or E. Crane, drop them an e-mail at info@ecrane.com</p>
<p>Enjoy!<br />
-Paul-</p>
<br /> Tagged: E. Crane Computing, ObjectCycle, powergen, source code control <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/153/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=153&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2009/01/14/do-you-miss-objectcycle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>
	</item>
		<item>
		<title>More fun with PB&#8217;s new datawindow gradients &#8211; animated progress bars!</title>
		<link>http://noazdad.wordpress.com/2008/12/27/more-fun-with-pbs-new-datawindow-gradients-animated-progress-bars/</link>
		<comments>http://noazdad.wordpress.com/2008/12/27/more-fun-with-pbs-new-datawindow-gradients-animated-progress-bars/#comments</comments>
		<pubDate>Sat, 27 Dec 2008 07:31:17 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[datawindow]]></category>
		<category><![CDATA[gradients]]></category>
		<category><![CDATA[progress bar]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=141</guid>
		<description><![CDATA[We all know that PB has the HProgressBar and VProgressBar controls, and they work exactly as advertised. You set the min/max position properties, the starting position, and the step increment, and then just call the StepIt() method to kick the progress bar into action. You get two basic styles &#8211; a &#8220;blocky&#8221; style and a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=141&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We all know that PB has the HProgressBar and VProgressBar controls, and they work exactly as advertised.  You set the min/max position properties, the starting position, and the step increment, and then just call the StepIt() method to kick the progress bar into action.  You get two basic styles &#8211; a &#8220;blocky&#8221; style and a &#8220;smooth&#8221; style.  That&#8217;s it&#8230;</p>
<p>Well, I was goofing around on iTunes today, and was quite enamored with their nice animated progress bar.  If you haven&#8217;t seen it, it&#8217;s got a nice angled gradient that moves along the bar from left to right, as the bar creeps forward.  It looks like this:<br />
<img src="http://noazdad.files.wordpress.com/2008/12/itunes.png?w=600" alt="iTunes progress bar" title="iTunes progress bar"   class="alignnone size-full wp-image-146" /></p>
<p>It&#8217;s just a nice GUI effect, and I wondered if I could implement that same effect in PowerBuilder&#8230;  And I got pretty close!  Here&#8217;s a screen shot showing the application in action.</p>
<p><img src="http://noazdad.files.wordpress.com/2008/12/progress_bar_app.png?w=600" alt="TipsnTricks Progress Bar" title="TipsnTricks Progress Bar"   class="alignnone size-full wp-image-147" /></p>
<p>There were a couple of challenges I had to overcome in this project: a) how to get the &#8220;progress bar&#8221; column to increment like an HProgressBar, and how to animate it with a sliding gradient image.  Let&#8217;s tackle these one at a time.</p>
<p>First &#8211; what would I use to simulate a progress bar?  I decided to create an external freeform datawindow, with two columns in the result set.  The first column is the actual bar itself, which I called &#8220;progress_bar&#8221; (because I&#8217;m clever like that&#8230;).  I placed this column into the detail band, and gave it an angled gradient from Silver to Gray.  The first image below is the Design pane of the datawindow painter, showing the column itself (ignore that computed column for now, we&#8217;ll discuss that in a moment), and the second image is of the Background properties pane.</p>
<p><img src="http://noazdad.files.wordpress.com/2008/12/progress_bar_design.png?w=600" alt="Progress Bar Design pane" title="Progress Bar Design pane"   class="alignnone size-full wp-image-142" /></p>
<p><img src="http://noazdad.files.wordpress.com/2008/12/progress_bar_properties.png?w=600" alt="Progress Bar Properties pane" title="Progress Bar Properties pane"   class="alignnone size-full wp-image-143" /></p>
<p>I decided I would make the progress_bar column &#8220;grow&#8221; by dynamically changing its <strong>.Width</strong> property, starting at 0 and growing to it&#8217;s fully defined length 1% at a time in 100 increments.  I also decided to do this with a datawindow expression, rather than coding Modify() calls from the PowerScript.<br />
Which leads us to the second column in the result set &#8211; a hidden numeric value named &#8220;col_width&#8221;.  In each iteration of the Timer event, I do a SetItem() of the value 1 to 100 into this column. By placing an expression that used that value as the &#8220;current percentage&#8221; of the original width, the datawindow rendering engine does all the heavy lifting!  Now I just had to come up with the correct expression for the width property.</p>
<p>Since I was going to trigger 100 Timer events, and increment the progress_bar.width property by 1% of its &#8220;painted&#8221; length, my expression needed to determine what the original &#8220;painted&#8221; length of the column was. However, I can&#8217;t just use <code>Describe( 'progress_bar.width')</code>, because there&#8217;s an expression in there, separated from the original width value by the &#8220;~t&#8221; (tab) character.  I had to monkey around with it to extract out the initial width value.  That tricky part of the expression was placed into the aforementioned computed column &#8211; just for legibility.<br />
<code>long( mid( describe( 'progress_bar.width'), 2, (pos( describe( 'progress_bar.width'), '~t') - 1)))</code><br />
That says, strip out the characters in the Width property between position 2 and the first ~t, and cast those into a Long value.  The actual expression in the .Width property is then simply <code>compute_1 * (col_width / 100.0)</code>, or &#8220;the original width of the column times the current iteration percentage.  That gets our &#8220;progress_bar&#8221; incrementing right in step with the HProgressBar control!  </p>
<p>Now let&#8217;s look at how I accomplished the gradient animation trick&#8230;<br />
The first step is creating the angled gradient itself, and understanding how the new properties affect that gradient&#8217;s appearance.  The Focus property of a background gradient changes the &#8220;center&#8221; of the gradient &#8211; in other words, the point at which there is 100% of the primary color. By choosing an gradient angled to about 45 degrees, and sliding the Focus property from 0 to 100, you can achieve that animated &#8220;sliding&#8221; effect that we&#8217;re after.  The trick is to do it quickly, so it doesn&#8217;t appear jumpy.  This relies on a little-used characteristic of the datawindow:  it has it&#8217;s own internal Timer mechanism!  By setting the &#8220;Timer interval&#8221; property on the General tab of the datawindow, any expression that uses the Now() function automatically gets recalculated at that interval. </p>
<p>I set the Timer Interval property to 10 milliseconds (1/100th of a second), and then wrote the following expression into the Focus property of the &#8220;progress_bar&#8221; background gradient:  <code>integer( string( Now(), 'ff'))</code>.  That takes the current time, gets the current 100th of a second from it, and makes an integer out of that.  This causes the Focus of the gradient to move smoothly from the left side of the column, and then start over when it reaches the end.</p>
<p>As I said at the start, this doesn&#8217;t exactly duplicate the iTunes effect, but it does get close.  The iTunes progress bar has more than one Focus point, i.e., it&#8217;s more heavily striped, whereas the datawindow only gets one Focus point, but it&#8217;s still a neat effect!</p>
<p>Download the TipsnTricks.zip file to see the code for this.  It&#8217;s the uo_gradient_progressbar object.  Let me know your thoughts on it.</p>
<p>Enjoy!<br />
-Paul-</p>
<br /> Tagged: datawindow, gradients, PowerBuilder, progress bar <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/141/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=141&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2008/12/27/more-fun-with-pbs-new-datawindow-gradients-animated-progress-bars/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/itunes.png" medium="image">
			<media:title type="html">iTunes progress bar</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/progress_bar_app.png" medium="image">
			<media:title type="html">TipsnTricks Progress Bar</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/progress_bar_design.png" medium="image">
			<media:title type="html">Progress Bar Design pane</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/progress_bar_properties.png" medium="image">
			<media:title type="html">Progress Bar Properties pane</media:title>
		</media:content>
	</item>
		<item>
		<title>Datawindows:  They&#8217;re not just for DATA anymore!!!</title>
		<link>http://noazdad.wordpress.com/2008/12/20/datawindows-theyre-not-just-for-data-anymore/</link>
		<comments>http://noazdad.wordpress.com/2008/12/20/datawindows-theyre-not-just-for-data-anymore/#comments</comments>
		<pubDate>Sat, 20 Dec 2008 23:59:51 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[11.5]]></category>
		<category><![CDATA[datawindow]]></category>
		<category><![CDATA[Sybase]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=127</guid>
		<description><![CDATA[OK, we all know that the &#8220;selling point&#8221; for PowerBuilder&#8217;s datawindow object is the ease with which it can retrieve data from a relational database, abstract out the complexities of binding that data to visual controls in the UI layer, and handle all the tedium of data validation and transaction management. YAWN!!!   Been there, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=127&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>OK, we all know that the &#8220;selling point&#8221; for PowerBuilder&#8217;s datawindow object is the ease with which it can retrieve data from a relational database, abstract out the complexities of binding that data to visual controls in the UI layer, and handle all the tedium of data validation and transaction management.  </p>
<p>YAWN!!!  <br />
Been there, done that, got the t-shirt! (Trust me, I have a LOT of PowerBuilder t-shirts&#8230;)     </p>
<p>In this posting, let&#8217;s take a look at a new feature of PB 11.5 that will let you use datawindows in ways you probably never thought of.  And they have NOTHING whatsoever to do with data!  </p>
<p>I&#8217;m sure your users would love to have a nice, subtle gradient (or even an image of your company logo?) in the background of your application&#8217;s windows and tabpages.  You&#8217;ve been stuck with a solid background forever.  Well, with PB 11.5, Sybase introduced support for gradients and transparency!<br />
Problem solved, right?!?  Not so fast, cowboy&#8230;  </p>
<p>The new gradient capabilities are limited to one object &#8211; the datawindow.  You can&#8217;t set a gradient in the background of a window or custom visual user objects (yet).  This posting is going to show you how to accomplish that same effect using a datawindow!</p>
<p><strong>Step 1.  Create a freeform, external datawindow.</strong><br />
Since the data doesn&#8217;t matter, create this as an external dw with a single string column.  You won&#8217;t have to bother with an InsertRow() or SetItemXXX(), so even the name of the column is immaterial.  In the TipsnTrick sample app (which can be downloaded from the <a href="http://www.box.net">Box.net</a> widget on the front page of this blog.) I called this datawindow &#8220;d_gradient_only&#8221;.</p>
<p><strong>Step 2.  Set the gradient properties in the datawindow background</strong><br />
I chose a subtle angled gradient that transitions from Teal in the upper left-hand corner, to Silver in the lower right.  The figure below shows the Background properties panel for that datawindow. Mine are just examples &#8211; choose your own color schemes and brush types.   </p>
<p><img class="alignnone size-full wp-image-130" title="Background properties panel" src="http://noazdad.files.wordpress.com/2008/12/gradient_only1.png?w=600" alt="Background properties panel"   /> </p>
<p>The Angle property setting only pertains to the AngleGradient brush mode, and it controls the direction of the transition from color #1 to color #2.  I have that set at about 20, which causes the transition to go from top-left to bottom-right.  Experiment with the various gradient settings to get the exact look that you want.</p>
<p><strong>Step 3:  Drop a datawindow control on your window or user object.</strong><br />
This is easy PowerBuilder 101 stuff.  You place a datawindow control on the surface of whatever you&#8217;re using, and move it to the top left corner.  You don&#8217;t need to stretch it to fill the entire parent, since we&#8217;ll be adding resize logic in step 4.  (For you OOP noobs, making these changes to an ancestor class for the window or user_object would be a good design choice here).<br />
In the sample app, I created a user object named uo_gradient_background, and the dw control is named &#8220;dw_grad&#8221;.  </p>
<p><strong>Step 4:  Add resize logic so that the datawindow always fills the parent.</strong><br />
Programming note:  Window objects come with a &#8220;resize&#8221; event already defined, but User Objects do not, so if you&#8217;re using a custom visual user object, you have to define a prototype for the resize event. If you open the uo_gradient_background object, you&#8217;ll see that I have the &#8220;resize&#8221; event mapped to the <code>pbm_size</code> system event.  </p>
<p>Place this code in that event:<br />
<code>setRedraw( FALSE )<br />
dw_grad.resize( newWidth, newHeight )<br />
setRedraw( TRUE ) </code> </p>
<p>I also placed one line of code in the window Resize event which resizes the Tab control.<br />
<code>tab_1.resize( newWidth, newHeight )</code></p>
<p>Now you have a datawindow as the background of the user object (or window, if you went that way), and whenever the parent container is resized, the datawindow always fills the available space.  Consider this the actual background of the parent, and drop whatever actual UI controls your users will see right on top of the datawindow.  The figure below shows the effect it creates:  </p>
<p><img class="alignnone size-full wp-image-131" title="gradient" src="http://noazdad.files.wordpress.com/2008/12/gradient.png?w=600" alt="gradient"   /> </p>
<p>Enjoy!   And Happy Holidays!<br />
-Paul-</p>
<br /> Tagged: 11.5, datawindow, PowerBuilder, Sybase <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/127/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=127&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2008/12/20/datawindows-theyre-not-just-for-data-anymore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/gradient_only1.png" medium="image">
			<media:title type="html">Background properties panel</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/gradient.png" medium="image">
			<media:title type="html">gradient</media:title>
		</media:content>
	</item>
		<item>
		<title>3rd-party PB Tools (episode 2)</title>
		<link>http://noazdad.wordpress.com/2008/12/15/3rd-party-pb-tools-episode-2/</link>
		<comments>http://noazdad.wordpress.com/2008/12/15/3rd-party-pb-tools-episode-2/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 21:33:32 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[PowerBuilder]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[pbdebug]]></category>
		<category><![CDATA[PBLPeeper]]></category>
		<category><![CDATA[Sybase]]></category>
		<category><![CDATA[Terry Voth]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=120</guid>
		<description><![CDATA[This is the second post in the &#8220;Tools that all PB developers should be familiar with&#8221; thread. We&#8217;re going to stick with PBLPeeper for now, but we&#8217;ll be looking at a the PBDEBUG file viewer. This is quite possibly, the coolest feature I&#8217;ve ever seen, and one I&#8217;m sure you&#8217;ll use again and again. Before [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=120&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is the second post in the <a href="http://noazdad.wordpress.com/2008/12/13/tools-that-all-powerbuilder-developers-should-be-familiar-with/">&#8220;Tools that all PB developers should be familiar with&#8221;</a> thread. We&#8217;re going to stick with <a href="http://www.techno-kitten.com/PBL_Peeper/pbl_peeper.html">PBLPeeper</a> for now, but we&#8217;ll be looking at a the <strong>PBDEBUG</strong> file viewer. This is quite possibly, the coolest feature I&#8217;ve ever seen, and one I&#8217;m sure you&#8217;ll use again and again. Before I begin, let&#8217;s review PB application debugging techniques in general.</p>
<p>I’m sure every PowerBuilder developer is familiar with the integrated Debugger. It allows you to step through the code of an application or component, and see exactly what’s happening at runtime. You can inspect and change variable contents to see how your program reacts, you can change the flow of the program and step over or around troublesome code&#8230; An integrated step debugger is a critical feature of any programming IDE, and while PowerBuilder&#8217;s has taken a beating in public opinion over the years, it&#8217;s still the #1 debugging tool we&#8217;ve got.</p>
<p>There&#8217;s another debugging technique that probably has slipped under the radar for most of you – I&#8217;m referring to the <code>/PBDEBUG</code> switch and the resulting .DBG file output. The .DBG file is a line-by-line trace of literally, every line of PowerScript that is executed while running an application.</p>
<p>There are two methods for creating a .DBG file.</p>
<p><span style="text-decoration:underline;">1.  When running your application from within the IDE:<br />
</span><br />
<img class="alignnone size-full wp-image-121" title="PB System Options dialog" src="http://noazdad.files.wordpress.com/2008/12/sys_options.png?w=600" alt="PB System Options dialog"   /></p>
<p>In the System Options dialog of the IDE, turn ON the checkbox labelled &#8220;Enable PBDebug Tracing&#8221;. Specify a path/filename in the &#8220;PBDebug output path&#8221; field, and check whether you want the .DBG file automatically overwritten or not. As long as these options are set, you&#8217;ll get a .DBG file for your application whenever you execute it from within the IDE. It&#8217;s important to note that this option slows down execution of your app <em>dramatically</em>, so you do NOT want these on all the time. Typically, I set these options ON, run my app to get the .DBG file, then immediately turn them OFF.</p>
<p><span style="text-decoration:underline;">2.  When running your application as a compiled executable</span></p>
<p>There may be a point where you need your users to create this file for you, and they won&#8217;t have the PB IDE installed. Simply create a shortcut for your app&#8217;s .EXE file, and add the switch <code>/PBDEBUG </code>to the commandline. This will create the file in the same folder as the .EXE, and it will be named <code>yourApp.dbg</code>.</p>
<p>With either approach, you now have a (probably HUGE) text file containing a line-by-line trace of all the code that got executed during the test. The lines shown below are an excerpt from a typical .DBG file.</p>
<p><code><br />
Executing event +OPEN for class PFC_W_SPLASH, lib entry PFC_W_SPLASH<br />
  Executing instruction at line 1<br />
  Executing object function +OPEN for class W_POPUP, lib entry W_POPUP<br />
    Executing instruction at line 43<br />
    Executing object function +PFC_PREOPEN for class W_SPLASH, lib entry W_SPLASH<br />
      Executing instruction at line 1<br />
      Executing object function +PFC_PREOPEN for class PFC_W_SPLASH, lib entry PFC_W_SPLASH<br />
      End object function +PFC_PREOPEN for class PFC_W_SPLASH, lib entry PFC_W_SPLASH<br />
      Executing object function OF_SETBASE for class W_SPLASH, lib entry W_SPLASH<br />
        Executing instruction at line 52<br />
        Executing instruction at line 56<br />
        Executing instruction at line 57<br />
        Executing instruction at line 58<br />
        Executing object function +CREATE for class N_CST_WINSRV, lib entry N_CST_WINSRV<br />
          Executing instruction at line 2<br />
          Executing object function TRIGGEREVENT for class N_CST_WINSRV, lib entry N_CST_WINSRV<br />
            Executing system dll function<br />
          End class function TRIGGEREVENT for class N_CST_WINSRV, lib entry N_CST_WINSRV<br />
          Executing instruction at line 3<br />
        End class function +CREATE for class N_CST_WINSRV, lib entry N_CST_WINSRV<br />
        Executing instruction at line 58<br />
        Executing instruction at line 59<br />
        Executing object function OF_SETREQUESTOR for class N_CST_WINSRV, lib entry N_CST_WINSRV<br />
          Executing instruction at line 46<br />
          Executing instruction at line 50<br />
          Executing instruction at line 51<br />
          Executing instruction at line 52<br />
        End class function OF_SETREQUESTOR for class N_CST_WINSRV, lib entry N_CST_WINSRV<br />
</code></p>
<p>The call stack is visualized by indenting each level, so you can see when a method or event is entered and exited. It&#8217;s a lot of data to wade through, and basic text editors like Notepad and Wordpad aren&#8217;t going to help you mine for any nuggets of truth in there.</p>
<p>PBLPeeper to the rescue!!</p>
<p><img class="alignnone size-full wp-image-123" title="PBLPeeper's DEBUG file viewer" src="http://noazdad.files.wordpress.com/2008/12/debug_viewer.png?w=600" alt="PBLPeeper's DEBUG file viewer"   /></p>
<p>In the figure above, I&#8217;ve loaded PBLPeeper with the PB 11.5 workspace and target that were used to generate the .DBG file, then went to the Trace tab. This prompts me to load the .DBG file. As the illustration shows, you get a two-paned presentation. The contents of the .DBG file are loaded into the left-hand pane (with handy collapse/expand capabilities). When you click on any line in the .DBG file, the Powerscript for that specific event or function is automatically loaded into the right-hand pane. With this technique, you get to see the actual line of code, in context with its entire script. PBLPeeper handles overridden functions/events as well.</p>
<p>One of the benefits that the /PBDEBUG technique has over the step debugger is handling POSTed events/functions. Since a posted call is simply placed on the Windows message queue, it gets processed the very next time the application yields. If you place a debugger STOP after a call has been posted, but before it has a chance to execute, it will fire &#8220;out of place&#8221;, and your application will not behave as you intended. The /PBDEBUG approach does not interfere with the Windows event flow, so even posted events/functions can be debugged.</p>
<p>Enjoy!<br />
-Paul-</p>
<br /> Tagged: pbdebug, PBLPeeper, PowerBuilder, Sybase, Terry Voth <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/120/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=120&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2008/12/15/3rd-party-pb-tools-episode-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/sys_options.png" medium="image">
			<media:title type="html">PB System Options dialog</media:title>
		</media:content>

		<media:content url="http://noazdad.files.wordpress.com/2008/12/debug_viewer.png" medium="image">
			<media:title type="html">PBLPeeper&#039;s DEBUG file viewer</media:title>
		</media:content>
	</item>
		<item>
		<title>How&#8217;s YOUR 401(k) looking these days??</title>
		<link>http://noazdad.wordpress.com/2008/12/13/hows-your-401k-looking-these-days/</link>
		<comments>http://noazdad.wordpress.com/2008/12/13/hows-your-401k-looking-these-days/#comments</comments>
		<pubDate>Sat, 13 Dec 2008 18:34:48 +0000</pubDate>
		<dc:creator>noazdad</dc:creator>
				<category><![CDATA[Wine]]></category>
		<category><![CDATA[investment]]></category>

		<guid isPermaLink="false">http://noazdad.wordpress.com/?p=85</guid>
		<description><![CDATA[If it&#8217;s anything like mine, it&#8217;s bleeding some serious red ink right about now. Nearly every investment vehicle is suffering (and some significantly so) in the past 12-18 months. Knowing that hindsight is 20-20, what should you have invested in? How about wine? I&#8217;ve got some ROI numbers over the past 20 years that may [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=85&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If it&#8217;s anything like mine, it&#8217;s bleeding some serious red ink right about now. Nearly every investment vehicle is suffering (and some significantly so) in the past 12-18 months.</p>
<p>Knowing that hindsight is 20-20, what should you have invested in? How about wine?</p>
<p>I&#8217;ve got some ROI numbers over the past 20 years that may shock you. Take a look at this chart (data provided by the current issue of <a href="http://www.winespectator.com">Wine Spectator</a> magazine.)</p>
<div class="Section1">
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><b><font size="2" face="Calibri"><span>Year</span></font></b></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><b><font size="2" face="Calibri"><span>WS Score</span></font></b></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><b><font size="2" face="Calibri"><span>Wine</span></font></b></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="center"><b><font size="2" face="Calibri"><span>Release Price</span></font></b></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="center"><b><font size="2" face="Calibri"><span>Current Price</span></font></b></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="center"><b><font size="2" face="Calibri"><span>% increase</span></font></b></p>
</td>
</tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2007</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>98</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Clos des Papes<br />
  Chateauneuf-du-Pape 2005</span><font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$80 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$150 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>187.50%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2006</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>97</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Casanova de Neri<br />
  Brunello di Montalcino<br />
  Tenuta Nuova 2001</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$70 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$147 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>210.00%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2005</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>96</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Joseph<br />
  Phelps Insignia <br />
  Napa Valley 2002</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$150 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$168 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>112.00%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2004</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>100</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau Rieussec Sauternes 2001</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$80 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$139 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>173.75%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2003</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>95</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Paloma Merlot<br />
  Sprint Mountain District 2001</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$45 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$88 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>195.56%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2002</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>93</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>E. Guigal<br />
  Chateauneuf-du-Pape 1999</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$30 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$63 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>210.00%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2001</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>96</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Tenuta dell&#8217;Ornellaia Bolgheri<br />
  Superiore Ornellaia 1998</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$110 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$153 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>139.09%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>2000</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>98</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Antinori Toscana Solaia 1997</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$115 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$320 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>278.26%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1999</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>95</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau St. Jean <br />
  Cabernet Sauvignon <br />
  Sonoma County Cinq Cepages 1996</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$28 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$71 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>253.57%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1998</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>97</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau Ducru-Beaucaillou<br />
  St. Julien 1995</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$50 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$158 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>316.00%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1997</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>100</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Fonseca Vintage Port 1994</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$55 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$153 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>278.18%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1997</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>100</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Taylor Fladgate Vintage Port 1994</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$55 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$131 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>238.18%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1996</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>95</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Beringer Chardonnay Napa Valley <br />
  Private Reserve 1994</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$20 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$59 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>295.00%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1995</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>97</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Penfolds Shiraz <br />
  South Australia Grange 1990</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$100 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$320 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>320.00%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1994</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>98</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Caymus Cabernet Sauvignon <br />
  Napa Valley Special Selection 1990</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$75 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$124 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>165.33%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1993</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>100</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau Latour Pauillac 1990</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$80 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$858 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>1072.50%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1992</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>98</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau Pichon-Longueville-Baron<br />
  Pauillac 1989</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$45 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$163 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>362.22%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1991</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>97</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau de Beaucastel<br />
  Chateauneuf-du-Pape 1989</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$35 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$204 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>582.86%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1990</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>95</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Beringer Cabernet Sauvignon <br />
  Napa Valley Private Reserve 1986</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$30 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$91 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>303.33%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1989</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>98</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Caymus Cabernet Sauvignon <br />
  Napa Valley Special Selection 1984</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$38 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$167 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>439.47%</span></font></p>
</td>
</tr>
<tr>
<td width="43" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>1988</span></font></p>
</td>
<td width="46" valign="top">
<p class="MsoNormal" align="center"><font size="2" face="Calibri"><span>97</span></font></p>
</td>
<td width="234" valign="top">
<p class="MsoNormal"><font size="2" face="Calibri"><span>Chateau<br />
  Lynch-Bagues Pauillac 1985</span></font></p>
</td>
<td width="64" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$37 </span></font></p>
</td>
<td width="62" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>$180 </span></font></p>
</td>
<td width="72" valign="top">
<p class="MsoNormal" align="right"><font size="2" face="Calibri"><span>486.49%</span></font></p>
</td>
</tr>
</table>
<p class="MsoNormal"><font size="2" face="Calibri"><span>&nbsp;</span></font></p>
</div>
<p>That&#8217;s right &#8211; the AVERAGE increase in price from release to current day is a staggering 315.20%.  Of course, the tough part (of any investment strategy) is finding the winners BEFORE news like this gets published!</p>
<p>Bon appetit!<br />
-Paul-</p>
<br /> Tagged: investment, Wine <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/noazdad.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/noazdad.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/noazdad.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/noazdad.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/noazdad.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/noazdad.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/noazdad.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/noazdad.wordpress.com/85/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=noazdad.wordpress.com&amp;blog=5458910&amp;post=85&amp;subd=noazdad&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://noazdad.wordpress.com/2008/12/13/hows-your-401k-looking-these-days/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e72a26681ca451a0fcafecbeb5d9132?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">noazdad</media:title>
		</media:content>
	</item>
	</channel>
</rss>
