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

<channel>
	<title>Matt Slay, PhC</title>
	<atom:link href="http://mattslay.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mattslay.com</link>
	<description>Doctor of Code</description>
	<lastBuildDate>Sat, 11 Feb 2012 23:39:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>I love me some Instapaper, but want better searching&#8230;</title>
		<link>http://mattslay.com/i-love-me-some-instapaper-but-want-better-searching/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=i-love-me-some-instapaper-but-want-better-searching</link>
		<comments>http://mattslay.com/i-love-me-some-instapaper-but-want-better-searching/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 05:02:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mattslay.com/?p=420</guid>
		<description><![CDATA[I really like being able to archive links for later review, and Instaper is a new toy I’ve found to handle that nicely. I really feel like there’s a lot of cool stuff that I can accomplish with it in &#8230; <a class="more-link" href="http://mattslay.com/i-love-me-some-instapaper-but-want-better-searching/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I really like being able to archive links for later review, and Instaper is a new toy I’ve found to handle that nicely. I really feel like there’s a lot of cool stuff that I can accomplish with it in the future.</p>
<p>Tonight (Feb 9, 2012), I joined Instapaper as a paying customer so I could use the Search capabilities (searching your links on the web site is only available to those customer who sign up for the $1 per month subscriber account). But, after signing up and finally getting to use Search, it does not appear to be searching the way I was expecting&#8230; In fact, I couldn’t get the Search feature to return anything. Evar!</p>
<p>“<strong>No results</strong>.” it said… (which is not true, in that I have links with HTML5 in the title, url, summary, etc.)</p>
<p><a href="http://mattslay.com/wp-content/uploads/2012/02/image2.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-top: 0px; border: 0px;" title="image" src="http://mattslay.com/wp-content/uploads/2012/02/image_thumb2.png" alt="image" width="557" height="357" border="0" /></a></p>
<p>&#8220;No Results&#8221; ?!?!?!  What the heck is going on here? I know there are some links in my account that have this text in the URL, Title, and/or Description. Why won&#8217;t the Instapaper web site find any results?</p>
<p>I want to be able to do a search on the URL, Title, and Summary of the bookmarks, (not the actual contents of the link pages, which I don’t expect it to search anyway). I think most of us usually remember some keyword or tags as we save the links, so I expected to be able to search my links on the Instapaper site and search for “CSS&#8217;” or “HTML” or “GIT” or something like that to find links that I&#8217;ve stored.</p>
<p>So, I’m going to try to do something about this…. I&#8217;ve applied for an oAuth application token to see if I can build a better searching and filtering interface than the one they have now.</p>
<p>This will be a good exercise to sharpen my Ruby on Rails skills.</p>
<p>Boy, I sure hope they approve me…</p>
<p><strong>Update 2012-02-10:</strong></p>
<p>Instapaper sent me my app tokens later on in the same day. (Man, that was fast). And I found a gem on github (<a href="https://github.com/spagalloco/instapaper">https://github.com/spagalloco/instapaper</a>) that provides a nice wrapper around the Instapaper API, and I&#8217;ve already banged out a few lines of Ruby code which use the gem to connect to my Instapper account and post a few dummy links. Now I can move on the real work of pulling down all the bookmarks from an account, and providing a search/filter interface for searching through them for keywords or tags in the URL, Title, or Description.</p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/i-love-me-some-instapaper-but-want-better-searching/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GoFish 4 Original Screen Layout</title>
		<link>http://mattslay.com/gofish-4-original-screen-layout/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gofish-4-original-screen-layout</link>
		<comments>http://mattslay.com/gofish-4-original-screen-layout/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 04:41:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mattslay.com/?p=415</guid>
		<description><![CDATA[I thought it would be fun to record this old screenshot of GoFish 4 as it appeared at the time of it’s original release on VFPx in April 2011. And, here is a screenshot of 4.2.059:]]></description>
			<content:encoded><![CDATA[<p>I thought it would be fun to record this old screenshot of GoFish 4 as it appeared at the time of it’s original release on VFPx in April 2011.</p>
<p><a href="http://mattslay.com/wp-content/uploads/2012/02/image.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-content/uploads/2012/02/image_thumb.png" width="883" height="846"></a></p>
<p>And, here is a screenshot of 4.2.059:</p>
<p><a href="http://mattslay.com/wp-content/uploads/2012/02/image1.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-content/uploads/2012/02/image_thumb1.png" width="922" height="819"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/gofish-4-original-screen-layout/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Number Tease Brain Game</title>
		<link>http://mattslay.com/number-tease-brain-game/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=number-tease-brain-game</link>
		<comments>http://mattslay.com/number-tease-brain-game/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 04:31:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mattslay.com/?p=403</guid>
		<description><![CDATA[In this modern day of iEverything, I wanted to go old-school on you with this fun and simple brain teasing number challenge. So turn off the T.V., print this page, grab a pencil and let&#8217;s see what you can do &#8230; <a class="more-link" href="http://mattslay.com/number-tease-brain-game/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In this modern day of iEverything, I wanted to go old-school on you with this fun and simple brain teasing number challenge. So turn off the T.V., print this page, grab a pencil and let&#8217;s see what you can do here. I&#8217;ve had this in a simple TXT file for over 20 years. This beauty has made its way from one hard drive to another as I&#8217;ve upgraded computers over those years; it&#8217;s too good to let go. I wish I could remember where I got this.</p>
<p>If you can&#8217;t get them all, get in touch with me and I&#8217;ll help you out. And, if you can add any to the list, please send them to me and I&#8217;ll update the post.</p>
<p><strong>INSTRUCTIONS:</strong><br />
Each question below contains the initials of a word that will make it correct.</p>
<p><strong>EXAMPLE:</strong> 16 = O. in a P. Ounces in a Pound</p>
<p>1.    26 = L. of the A. ______________________________________________________</p>
<p>2.    7 = W. of the A.W. ____________________________________________________</p>
<p>3.    1001 = A.N. ___________________________________________________________</p>
<p>4.    12 = S. of the Z. ______________________________________________________</p>
<p>5.    54 = C. in a D. (with the J.) __________________________________________</p>
<p>6.    9 = P. in the S.S. _____________________________________________________</p>
<p>7.    88 = P.K. ______________________________________________________________</p>
<p>8.    13 = S. on the A. F. ___________________________________________________</p>
<p>9.    32 = D. F. at which W. F. ______________________________________________</p>
<p>10.    18 = H. on a G.C. ______________________________________________________</p>
<p>11.    90 = D. in a R. A. _____________________________________________________</p>
<p>12.    200 = D. for P. G. in M. _______________________________________________</p>
<p>13.    8 = S. on a S. S. ______________________________________________________</p>
<p>14.    3 = B. M. ( S. H. T. R.) _______________________________________________</p>
<p>15.    4 = Q. in a G. _________________________________________________________</p>
<p>16.    24 = H. in a D. ________________________________________________________</p>
<p>17.    1 = W. on a U. _________________________________________________________</p>
<p>18.    5 = D. in a Z. C. ______________________________________________________</p>
<p>19.    57 = H. V. _____________________________________________________________</p>
<p>20.    11 = P. on a F. T. _____________________________________________________</p>
<p>21.    1000 = W. that a P. is W. ______________________________________________</p>
<p>22.    29 = D. in F. in a L. Y. _______________________________________________</p>
<p>23.    64 = S. on a C. ________________________________________________________</p>
<p>24.    40 = D. and N. of the G. F. ____________________________________________</p>
<p>Good luck.</p>
<p>Want more brain fun? Check out <a href="http://www.brainbashers.com/games.asp">http://www.brainbashers.com/games.asp</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/number-tease-brain-game/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hardness Conversion Chart</title>
		<link>http://mattslay.com/hardness-conversion-chart/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hardness-conversion-chart</link>
		<comments>http://mattslay.com/hardness-conversion-chart/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 22:11:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Manufacturing]]></category>

		<guid isPermaLink="false">http://mattslay.com/?p=400</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://mattslay.com/wp-content/uploads/2012/01/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-content/uploads/2012/01/image_thumb.png" width="681" height="666"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/hardness-conversion-chart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New domain highlights plastic shredders</title>
		<link>http://mattslay.com/new-domain-highlights-plastic-shredders/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-domain-highlights-plastic-shredders</link>
		<comments>http://mattslay.com/new-domain-highlights-plastic-shredders/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 05:38:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Manufacturing]]></category>

		<guid isPermaLink="false">http://mattslay.com/?p=395</guid>
		<description><![CDATA[Plastic Shredder Equipment Having recently acquired the domain www.PlasticShredder.com, we’ve begun adding content to a few pages on the new site to highlight the special capabilities of our twin shaft shredders to the shredding of plastic materials. Many manufacturing process &#8230; <a class="more-link" href="http://mattslay.com/new-domain-highlights-plastic-shredders/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2>Plastic Shredder Equipment</h2>
<p>Having recently acquired the domain <a href="http://www.PlasticShredder.com">www.PlasticShredder.com</a>, we’ve begun adding content to a few pages on the new site to highlight the special capabilities of our twin shaft shredders to the shredding of plastic materials. Many manufacturing process today deal with plastics or similar materials like HDPE or PVC, and every one of them require shredding or grinding of the plastic materials at some point to prepare them for extruding, molding, or other manufacturing process. These heavy duty twin shaft shredders are designed for high production rates and offer flexibility in particle size by changing the cutting knives or screens. In contrast to many foreign equipment options like those listed at <a title="http://shredder-china.com/industrial-shredder-introduction" href="http://shredder-china.com/industrial-shredder-introduction">http://shredder-china.com/industrial-shredder-introduction</a>, these machines are manufactured in the United States using precision CNC machines. Videos are available on the site which show the shredders at work in many test cases like plastic buckets, shredding hoses, plastic films and other materials.</p>
<p>&nbsp;</p>
<h2>Value in reclaiming scrap materials</h2>
<p>In many plastics manufacturing processes, once the parts or material is complete, it’s often necessary to shred or grind these materials to allow them to be recycled or reused in the manufacturing process. The value of this oil-based material is is quite high and increases in direct proportion to the cost of oil. Therefore, most production lines require a shredder or high speed grinder to prepare the material for further processing. We wanted to break out a special site dedicated to dual shaft shredders and how they can be used in plastic grinding and shredder systems to help with the growing focus on “going green” and clean manufacturing.</p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/new-domain-highlights-plastic-shredders/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual FoxPro on Windows 8</title>
		<link>http://mattslay.com/visual-foxpro-on-windows-8/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-foxpro-on-windows-8</link>
		<comments>http://mattslay.com/visual-foxpro-on-windows-8/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 18:59:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Foxpro]]></category>
		<category><![CDATA[Windows 8]]></category>

		<guid isPermaLink="false">http://mattslay.com/visual-foxpro-on-windows-8/</guid>
		<description><![CDATA[Want to know if Visual FoxPro 9 will run on Windows 8?&#160; Well, find out below… I downloaded the Windows 8 Developer Preview the first evening that Microsoft made it available to the public. I had watched the BUILD keynote &#8230; <a class="more-link" href="http://mattslay.com/visual-foxpro-on-windows-8/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Want to know if Visual FoxPro 9 will run on Windows 8?&nbsp; Well, find out below…</p>
<p>I downloaded the Windows 8 Developer Preview the first evening that Microsoft made it available to the public. I had watched the BUILD keynote during the first day of the conference on September 14, 2011, and I was impressed with most of what Microsoft has done on the developer platform for their new OS. So, sure, Windows 8 looks all cool and I am sure we’ll all have some fun building these new “Metro” style apps for it. I’m looking forward to it, just as I’ve looked forward to every new programming journey I’ve tackled lately, like learning C#, WPF, ASP.Net MVC, and Ruby on Rails. I love it all. Bring on more!</p>
<p>However, I am a long-time FoxPro developer, and I imagine I’ll still be developing and maintaining my primary corporate app in FoxPro for a few more years, so I wanted to make sure that Visual FoxPro 9 SP2 + HotFixes would install and run properly in Windows 8. Let’s see if it does (I’ll give you the answer now…. It does!)</p>
<p><a href="http://mattslay.com/wp-images/Visual-FoxPro-on-Windows-8_B0A8/image.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-images/Visual-FoxPro-on-Windows-8_B0A8/image_thumb.png" width="566" height="519"></a></p>
<p>According to <a title="http://fox.wikis.com/wc.dll?Wiki~CurrentVersion~SoftwareEng" href="http://fox.wikis.com/wc.dll?Wiki~CurrentVersion~SoftwareEng">http://fox.wikis.com/wc.dll?Wiki~CurrentVersion~SoftwareEng</a> , the latest, fully patched version of Visual FoxPro 9 is 09.00.0000.7423.</p>
<p><a href="http://mattslay.com/wp-images/Visual-FoxPro-on-Windows-8_B0A8/image_3.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-images/Visual-FoxPro-on-Windows-8_B0A8/image_thumb_3.png" width="454" height="422"></a></p>
<p>So, the answer is YES, Visual FoxPro 9 SP2 works in Windows 8.</p>
<p>Now, I’m just waiting for the release of the “Metro for FoxPro” framework on VFPx. Anyone?</p>
<p>&nbsp;</p>
<p>Anyone?</p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/visual-foxpro-on-windows-8/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>I Love Me Some Business Objects</title>
		<link>http://mattslay.com/i-love-me-some-business-objects/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=i-love-me-some-business-objects</link>
		<comments>http://mattslay.com/i-love-me-some-business-objects/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 20:49:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Foxpro]]></category>
		<category><![CDATA[General Coding]]></category>

		<guid isPermaLink="false">http://mattslay.com/i-love-me-some-business-objects/</guid>
		<description><![CDATA[Here is the beautiful stack of Business Object classes for my Line of Business CRUD app (see image below). The Job object (highlighted in the screenshot), in particular, is populated with tons of little worker methods to handle all the &#8230; <a class="more-link" href="http://mattslay.com/i-love-me-some-business-objects/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Here is the beautiful stack of Business Object classes for my Line of Business CRUD app (see image below).
<p>The Job object (highlighted in the screenshot), in particular, is populated with tons of little worker methods to handle all the processes my Job oriented forms need. Most of these methods were created by taking little bits of procedural code from various forms and procedure files that had become strewn about all over my app code, and tucking it away into methods on the Job class.
<p>Now, I can easily create a Job object with one line of code, and then call any of its handy methods to quickly create a cursor containing the desired child records, or return a value from some other calculation, or any other tasks that my business app needs to handle.&nbsp;
<p>So follow this rule: If you’re writing processing code in form methods or methods on UI controls (yikes!), you should consider creating a Business Object and adding methods to it instead. It will be much more re-usable and maintainable.
<p>&nbsp;
<p>Code sample:<br />
<blockquote>
<p><em>oJob = CreateBusObject(<font color="#ff0000">‘Job’</font>) <font color="#9bbb59">&amp;&amp; Call a Dictionary method to get the class</font></em>
<p><em>oJob.Get(<font color="#ff0000">‘TheJobNumber’</font>)</em>
<p><em>If oJob.lFound = .T.</em>
<p><em>&nbsp;&nbsp; oJob.GetLineItemsForInvoice(<font color="#ff0000">‘CursorName’</font>)</em>
<p><em>Else</em>
<p><em>&nbsp;&nbsp; <font color="#9bbb59">*&#8211; Handle Not Found situation</font></em>
<p><em>EndIf</em></p>
</blockquote>
<p>&nbsp;
<p><a href="http://mattslay.com/wp-images/I-love-me-some-Business-Objects_DC14/SNAGHTML9aff7fe7.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="SNAGHTML9aff7fe7" border="0" alt="SNAGHTML9aff7fe7" src="http://mattslay.com/wp-images/I-love-me-some-Business-Objects_DC14/SNAGHTML9aff7fe7_thumb.png" width="647" height="838"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/i-love-me-some-business-objects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BarCamp Birmingham 5 Sessions</title>
		<link>http://mattslay.com/barcamp-birmingham-2011-sessions/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=barcamp-birmingham-2011-sessions</link>
		<comments>http://mattslay.com/barcamp-birmingham-2011-sessions/#comments</comments>
		<pubDate>Mon, 08 Aug 2011 03:21:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General Coding]]></category>

		<guid isPermaLink="false">http://mattslay.com/barcamp-birmingham-2011-sessions/</guid>
		<description><![CDATA[I attended BarCamp Birmingham 5 on Saturday, August 6. This was my first time attending an un-conference, also known as a “user conference”. In a BarCamp conference, the sessions are proposed on the morning of the conference by attendees who &#8230; <a class="more-link" href="http://mattslay.com/barcamp-birmingham-2011-sessions/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://mattslay.com/wp-content/uploads/2011/08/image.png"><img style="background-image: none; border-right-width: 0px; margin: 0px 22px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="left" src="http://mattslay.com/wp-content/uploads/2011/08/image_thumb.png" width="244" height="49"></a>I attended <a href="http://barcampbirmingham.org/">BarCamp Birmingham 5</a> on Saturday, August 6. This was my first time attending an un-conference, also known as a “user conference”. In a BarCamp conference, the sessions are proposed on the morning of the conference by attendees who have a topic they’d like to share. Each topic is recorded on a sticky note, and then a very informal “vote” occurs to select the session list for the day. I was a little skeptical of sacrificing a full day away from my family to attend a conference where I could not review the sessions ahead of time. However, I was very pleased with the sessions, speakers, and attendees. The entire event was great, and I was inspired by many of the speakers who were obviously as passionate about their careers and work in the software field as I am.</p>
<p>There were 111 registrants for the conference. It was held and UAB School of Business and Engineering complex. Every attendee received a BarCamp Birmingham T-shirt, free soft drinks, and and free lunch from Jim-N-Nick’s.&nbsp; The twitter hashtag is <a href="http://twitter.com/#!/search/%23Barcampbham">#BarCampBham</a>.</p>
<p>Below, I’ve recorded the sessions that were chosen, and have listed the speaker’s name and contact info for the ones that I could reconstruct. I took iPhone photos of the sticky notes that were arranged to lay out the schedule.</p>
<p>If you can help me fill in any of the missing speaker info, please ping me with the information.</p>
<p><strong>Morning Sessions</strong></p>
<table border="0" cellspacing="0" cellpadding="2" width="750">
<tbody>
<tr>
<td valign="top" width="138">
<p align="center"><span style="font-size: x-small"><font size="2">&nbsp;</font></span></p>
</td>
<td valign="top" width="163">
<p align="center"><span style="font-size: x-small"><font size="2">9:30</font></span></p>
</td>
<td valign="top" width="155">
<p align="center"><span style="font-size: x-small"><font size="2">10:10</font></span></p>
</td>
<td valign="top" width="162">
<p align="center"><span style="font-size: x-small"><font size="2">10:50</font></span></p>
</td>
<td valign="top" width="130">
<p align="center"><span style="font-size: x-small"><font size="2">11:30</font></span></p>
</td>
</tr>
<tr>
<td valign="top" width="138"><span style="font-size: x-small"><font size="2">Room 1</font></span></td>
<td valign="top" width="162"><font size="2"><span style="font-size: x-small"><font size="2">The Hitchhikers Guide to Web Development at Midnight in the Garden of Good and Evil</font> <br /></span></font><font size="2"><span style="color: #4f81bd; font-size: x-small"><font size="2">Chris</font></span></font></td>
<td valign="top" width="156"><span style="font-size: x-small"><font size="2">WordPress Optimization for Shared Host Environments.<br /></font></span><br />
<h4><a href="http://pauloflaherty.com/"><span style="font-size: x-small"><font size="2">Paul OFlaherty</font></span></a><br clear="all"><a href="http://twitter.com/#!/@pauloflaherty"><span style="font-size: x-small"><font size="2">@pauloflaherty</font></span></a></h4>
</td>
<td valign="top" width="161"><font size="2"><span style="font-size: x-small"><font size="2">Into to PhoneGap<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Matt R.</font></span></font></td>
<td valign="top" width="132"><span style="font-size: x-small"><font size="2">5 Things You Should Know About PhotoShop<br /></font></span><span style="color: #4bacc6"><a href="http://www.tammyhartdesigns.com/"><span style="font-size: x-small"><font size="2">Tammy Hart</font></span></a><br clear="all"></span><a href="http://twitter.com/#!/tammyhart"><span style="font-size: x-small"><font size="2">@TammyHart</font></span></a></td>
</tr>
<tr>
<td valign="top" width="136"><span style="font-size: x-small"><font size="2">Room 2</font></span></td>
<td valign="top" width="162"><span style="font-size: x-small"><font size="2">Basics of SEO<br /></font></span><span style="color: #4bacc6; font-size: x-small"><a href="http://cathyreisenwitz.com/"><font size="2">Cathy Reisenwitz</font></a><br clear="all"><a href="http://twitter.com/#!/CathyReisenwitz"><font size="2">@CathyReisenwitz</font></a></span><font size="2">&nbsp;</font></td>
<td valign="top" width="156"><span style="font-size: x-small"><font size="2">Non-Technical Intro to Google+<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Dave Barger<br clear="all"></font></span><a href="http://twitter.com/#!/lalunablanca"><span style="font-size: x-small"><font size="2">@lalunablanca</font></span></a></td>
<td valign="top" width="161"><font size="2"><span style="font-size: x-small"><font size="2">Tips From a PM:<br />4 reasons why programmers should NEVER talk to clients. <br /></font></span></font><font size="2"><span style="color: #4bacc6; font-size: x-small"><font size="2">Daniel Walters</font></span></font></td>
<td valign="top" width="133"><span style="font-size: x-small"><font size="2">Group Discussion on Gamification.</font></span></td>
</tr>
<tr>
<td valign="top" width="136"><span style="font-size: x-small"><font size="2">Room 3</font></span></td>
<td valign="top" width="162"><span style="font-size: x-small"><font size="2">Start-ups and Screw-ups – How to Beat the Odds<br /></font></span><span style="color: #4bacc6"><a href="http://wsocialmarketing.com/"><span style="font-size: x-small"><font size="2">Andra Walker</font></span></a><br clear="all"></span><a href="http://twitter.com/#!/andreafwalker"><span style="font-size: x-small"><font size="2">@andreafwalker</font></span></a></td>
<td valign="top" width="156"><span style="font-size: x-small"><font size="2">Filming, Editing, and Publishing Great Videos on the iPod and iPhone With No $<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Chris Davis<br clear="all"></font></span><a href="http://twitter.com/#!/chriscreates"><span style="font-size: x-small"><font size="2">@chriscreates</font></span></a></td>
<td valign="top" width="161"><span style="font-size: x-small"><font size="2">Convergence Trends and Relevancy of the Modern Still Image<br /></font></span><span style="font-size: x-small"><font size="2"><span style="color: #4bacc6">Josh Self<br clear="all"></span><span style="color: #4bacc6"><a href="http://twitter.com/#!/joshself">@joshself</a></span></font></span></td>
<td valign="top" width="135"><font size="2"><span style="font-size: x-small"><font size="2">Brief History of Japanese Occupation of Taiwan<br /></font></span><span style="color: #4bacc6; font-size: x-small"><br /><font size="2">Jason Chucong</font></span></font></td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p><strong>Afternoon Sessions</strong></p>
<table border="1" cellspacing="0" cellpadding="0" width="750">
<tbody>
<tr>
<td valign="top" width="145">
<p align="center"><span style="font-size: x-small"><font size="2">&nbsp;</font></span></p>
</td>
<td valign="top" width="151">
<p align="center"><span style="font-size: x-small"><font size="2">1:40</font></span></p>
</td>
<td valign="top" width="150">
<p align="center"><span style="font-size: x-small"><font size="2">2:25</font></span></p>
</td>
<td valign="top" width="152">
<p align="center"><span style="font-size: x-small"><font size="2">3:00</font></span></p>
</td>
<td valign="top" width="150">
<p align="center"><span style="font-size: x-small"><font size="2">3:35</font></span></p>
</td>
</tr>
<tr>
<td valign="top" width="144"><span style="font-size: x-small"><font size="2">Room 1</font></span></td>
<td valign="top" width="151"><span style="font-size: x-small"><font size="2">Discussion Group -<br />How to Grow the Digital Community<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Chris Davis <br /></font></span><a href="http://twitter.com/#!/chriscreates"><span style="font-size: x-small"><font size="2">@chriscreates</font></span></a></td>
<td valign="top" width="150"><span style="font-size: x-small"><font size="2">Cutting the Chord – Ways to get rid of cable and Direct TV<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Kevin Gatgens<br clear="all"></font><a href="http://twitter.com/#!/@kgatgens"><font size="2">@kgatgens</font></a></span></td>
<td valign="top" width="153"><span style="font-size: x-small"><font size="2">5 “Guidelines” of Improv<br /></font></span><span style="color: #4bacc6"><span style="font-size: x-small"><font size="2">Capt. Daniel Walters<br /></font></span><a href="http://twitter.com/#!/blazedadragon"><span style="font-size: x-small"><font size="2">@BlazeDaDragon</font></span></a></span></td>
<td valign="top" width="149"><font size="2"><span style="font-size: x-small"><font size="2">PCI Compliance – Risks and why it’s so hard to achieve<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Matt Hellinger</font></span></font></td>
</tr>
<tr>
<td valign="top" width="144"><span style="font-size: x-small"><font size="2">Room 2</font></span></td>
<td valign="top" width="151"><span style="font-size: x-small"><font size="2">Open Source – What I’ve learned: </font></span><span style="font-size: x-small"><font size="2">- Git<br />- VIM<br />- JavaScript<br /></font></span><span style="color: #4bacc6; font-size: x-small"><a href="http://oswco.com"><font size="2">Tom Brander</font></a><br /></span><a href="http://twitter.com/#!/dartdog"><span style="font-size: x-small"><font size="2">@dartdog</font></span></a></td>
<td valign="top" width="150"><span style="font-size: x-small"><font size="2">Conversation about Mobile Design and UX<br /></font></span><span style="color: #4bacc6"><span style="font-size: x-small"><font size="2">Brian Cauble<br /></font></span><a href="http://twitter.com/#!/briancauble"><span style="font-size: x-small"><font size="2">@briancauble</font></span></a></span></td>
<td valign="top" width="154"><font size="2"><span style="font-size: x-small"><font size="2">There is NO Tablet Market<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Maatt Hellinger</font></span></font></td>
<td valign="top" width="149"><font size="2"><span style="font-size: x-small"><font size="2">Critical Thinking 098 – How to start being less sure and more right<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">M. Alvis</font></span></font></td>
</tr>
<tr>
<td valign="top" width="144"><span style="font-size: x-small"><font size="2">Room 3</font></span></td>
<td valign="top" width="151"><font size="2"><span style="font-size: x-small"><font size="2">Discussion – What is AWESOME? </p>
<p></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Jason</font></span></font></td>
<td valign="top" width="150"><font size="2"><span style="font-size: x-small"><font size="2">CSS – Advanced and Intro<br /></font></span><span style="color: #4bacc6; font-size: x-small"><font size="2">Brian Moon</font></span></font></td>
<td valign="top" width="155"><span style="font-size: x-small"><font size="2">HTML Email<br />- Design<br />- Strategy<br />- Code <br clear="all"></font></span><span style="font-size: x-small"><br clear="all"><font size="2">Link: </font></span><a href="http://www.slideshare.net/blueys/html-emal-newsletters-design-code-strategy-5214968"><span style="font-size: x-small"><font size="2">Slide Deck</font></span></a><span style="color: #4bacc6; font-size: x-small"><a href="http://www.collectedjulia.com/"><font size="2">Julia Anderson</font></a></span><br /><a href="http://twitter.com/#!/Blueys"><span style="font-size: x-small"><font size="2">@Blueys</font></span></a></td>
<td valign="top" width="149"><span style="font-size: x-small"><font size="2">Idea Driven Design<br /></font></span><span style="font-size: x-small"><font size="2"><span style="color: #4bacc6">Giovanni DiFeterici</span><br /></font></span><a href="http://twitter.com/#!/giodif"><span style="font-size: x-small"><font size="2">@giodif</font></span></a></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/barcamp-birmingham-2011-sessions/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Creating a Parent Business Object with wwBusinessPro</title>
		<link>http://mattslay.com/creating-a-parent-business-object-with-wwbusinesspro/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=creating-a-parent-business-object-with-wwbusinesspro</link>
		<comments>http://mattslay.com/creating-a-parent-business-object-with-wwbusinesspro/#comments</comments>
		<pubDate>Sat, 23 Jul 2011 23:02:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Foxpro]]></category>
		<category><![CDATA[West Wind]]></category>

		<guid isPermaLink="false">http://mattslay.com/creating-a-parent-business-object-with-wwbusinesspro/</guid>
		<description><![CDATA[When using a wwBusProParent, you set properties on the Parent that tell it about the Child class.Then, the Parent will create the Child class for you. You do not create the Child when writing your code, let the Parent do &#8230; <a class="more-link" href="http://mattslay.com/creating-a-parent-business-object-with-wwbusinesspro/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>When using a wwBusProParent, you set properties on the Parent that tell it about the Child class.<br />Then, the Parent will create the Child class for you. <br />You do not create the Child when writing your code, let the Parent do that.</p>
<p>You need to create a VCX library and put a Child class for each Child collection in there,<br />with its Child properties already set up. This allows the Parent to create the Child when he<br />needs it. If you follow the path of the Get() method, you will see that the Parent creates a<br />Child class object and attaches it to its oLineItems property. So, once your Child classes are<br />configured in a VCX, you will not actually have to write any code to access them (unless you are<br />doing some special case, custom coding), you just set up the Parent so he can find them.<br />The Parent will handle all that for you, including the fetching of the related Child records.</p>
<p>You can also put your Parent objects in the VCX and set their properties in the VCX file.<br />This sample code is shown here simply to show which properties are required to make it all work.</p>
<p><font color="#008000">*=====================================================================================================<br />* == Sample to&nbsp; show a Parent BO configured to use a String lookup and work with related Child Records<br />*=====================================================================================================</font></p>
<p>Local loSrHead AS &#8216;cSrHead&#8217;</p>
<p>Set ClassLib To MyMainLibrary Additive<br />Set ClassLib To MyBoLibrary Additive&nbsp; <font color="#008000">&amp;&amp; Include your Business Object ClassLibrary</font></p>
<p>loSrHead = CreateObject(&#8216;MyInvoiceBoClass&#8217;)<font color="#008000"> &amp;&amp;&nbsp; A Parent class found in your BO Library VCX</font></p>
<p><font color="#008000">*&#8211; These settings are native to the base wwBusiness operation<br /></font>loSrHead.cFileName = &#8216;tblSrHead&#8217; <font color="#008000">&amp;&amp; The table name (.dbf file or Sql Server table name)<br /></font>loSrHead.cAlias = &#8216;csrSrHead&#8217;<font color="#008000">&nbsp; &amp;&amp;&nbsp; Local alias name to use when opening file<br /></font>loSrHead.nDataMode = 0<font color="#008000">&nbsp; &amp;&amp; Data access mode for the business object. 0 &#8211; Native Fox dbf, 2 &#8211; SQL Server<br /></font>loSrHead.cPKFIeld= &#8216;PK&#8217; <font color="#008000">&nbsp;&nbsp; &amp;&amp; Points to the unique Key value column in the table. Usually an Integer column.</font></p>
<p><font color="#008000">*&#8211; This code section is part of wwBusinessPro feature set wwBusinessPro allows for String-based lookups and related Child cursors&#8230;<br /></font>loSrHead.cLookupField = &#8216;storeno+docno&#8217;<font color="#008000">&nbsp; &amp;&amp; This is an example of a compound string unique key lookup value.<br /></font>loSrHead.cAdditionalFilter = &#8216;mtype = [0]&#8216;<font color="#008000">&nbsp; &amp;&amp; (Optional) Provides a way to further filter the record locating process.<br /></font>loSrHead.cPKFIeld= &#8216;storeno+docno&#8217;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font color="#008000">&nbsp;&nbsp; &amp;&amp; Set to same value as cLookupField if no Integer PK is available in the table.</font></p>
<p>loSrHead.lLoadLineItems = .t. <font color="#008000">&amp;&amp; Tells it load Child records when getting the Parent record.<br /></font>loSrHead.lAllowEditLineItems = .t.&nbsp; <font color="#008000">&amp;&amp; Tells it create a ReadWrite cursor when creating the Child record cursor</font></p>
<p><font color="#008000">*&#8211; Setup the Child properties on the Parent<br /></font>loSrHead.cLineItemsClass = &#8216;cSrItems&#8217;<font color="#008000">&nbsp; &amp;&amp; Child class must exist in the MyBoLibrary.vcx<br /></font>loSrHead.cLineItemsAlias = &#8216;curSrItems&#8217; <font color="#008000">&amp;&amp; Cursor name where you want the Child records to be stored</font></p>
<p><font color="#008000">*&#8211; Fetch the Parent and create a Child Cursor<br /></font>loSrHead.Get(&#8216;TWU STORE RN2009100003&#8242;) <font color="#008000">&amp;&amp; For String lookups<br /></font>loSrHead.Get(12345) <font color="#008000">&amp;&amp; For Integer lookups </font></p>
<p>If loSrHead.lFound = .f.<br /><font color="#008000">*&#8211; Add any Not Found handling code here<br /></font>Endif</p>
<p>If loSrHead.nErrorCount &gt; 0<br /><font color="#008000">*&#8211; Add any Error handling code here, if not already handled in your classes.<br /></font>Endif</p>
<p><font color="#008000">*&#8211; Make some changes to the loSeHead.oData object and to the Child cursor <br />*&#8211; and save the changes&#8230;<br /></font>loSrHead.Save(.t.) <font color="#008000">&amp;&amp; .t. Tells it to save changes to the Child records also</font></p>
<p>&nbsp;</p>
<h2>One more thing about the Child classes&#8230;</h2>
<p>When setting up your Child in the VCX, these are the properties you need to set on it:</p>
<blockquote><p>cFilename (Required. Name of the dbf or Sql Server table)<br />cAlias (Optional. Will use cFilename by default)<br />cPKField (Must be an Integer. See &#8220;Important Note&#8221; below)<br />cFKField (Must be an Integer. Maps to Parents PK field)<br />cLookupField (Optional. Maps to Parents cLookupField. Use when Parent uses for String lookups)<br />cOrderFld (Optional. Can be used to set the ordering of child records. i.e. a sequnce field)</p>
</blockquote>
<p>These properties provide the info needed by the LoadLineItems() method work out of the box.<br />Sometimes you may want to overwrite the LoadLineItems() method with custom code, but the default<br />should work in basic configurations.</p>
<p><strong>IMPORTANT NOTE:<br /></strong>In order to save changes on the Child records, they need a unique PK that can be used. See cPKField.<br />String cLookupField works fine to load the records in, but it does not guarantee uniqueness when<br />trying to save changes back.</p>
<p>Again, you can use cLookupField Stings for loading the records, but you must have Integer PKs<br />on your Child records to allow saving changes back.</p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/creating-a-parent-business-object-with-wwbusinesspro/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>wwBusinessPro&#8211;Parent Child collections in a wwBusiness business object</title>
		<link>http://mattslay.com/wwbusinessproparent-child-collections-in-a-wwbusiness-business-object/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wwbusinessproparent-child-collections-in-a-wwbusiness-business-object</link>
		<comments>http://mattslay.com/wwbusinessproparent-child-collections-in-a-wwbusiness-business-object/#comments</comments>
		<pubDate>Sat, 23 Jul 2011 22:36:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Foxpro]]></category>
		<category><![CDATA[West Wind]]></category>

		<guid isPermaLink="false">http://mattslay.com/wwbusinessproparent-child-collections-in-a-wwbusiness-business-object/</guid>
		<description><![CDATA[Note: This post if part of a complete series on the West Wind wwBusiness library.Click here to see the full index &#160; Before we start digging into parent/child data access with wwBusinessPro, let’s have a review of the basics. Suppose &#8230; <a class="more-link" href="http://mattslay.com/wwbusinessproparent-child-collections-in-a-wwbusiness-business-object/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Note: This post if part of a complete series on the West Wind wwBusiness library.<br /><a href="http://mattslay.com/exploring-my-wwbusiness-extension-library/">Click here to see the full index</a>
<p>&nbsp;
<p>Before we start digging into parent/child data access with wwBusinessPro, let’s have a review of the basics. Suppose we want a Invoice object, and child set of Invoice Line Items that belong to that invoice. This is possible, even simple, with wwBusninessPro. In fact, in this post I’ll also show you how to handle a second child collection, like Invoice Payments, related to the Invoice. If you follow the example shown here, you’ll be able to handle cases where you have a single business objust with MULTIPLE child collections.
<p>For example, here is what a really complex “aggregate” business object can look like. In my main business app, I have one complex business object that loads 4 additional child cursors in addition to the base oLineItems collection, and, it also loads customer and user info into oCustomer and oUser objects that I added onto the BO.
<p><a href="http://mattslay.com/wp-images/946d8fef9a1d_F09F/clip_image006.jpg"><img style="background-image: none; border-right-width: 0px; margin: 0px 0px 0px 50px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://mattslay.com/wp-images/946d8fef9a1d_F09F/clip_image006_thumb.jpg" width="244" height="213"></a>
<p>So let’s get started… </p>
<h2>Parent and One Child Cursor</h2>
<p><strong>Parent class</strong> &#8211; Create your Invoice class as subclass of wwBusProParent.</p>
<blockquote><p>At this point, you will see that it has *<b>ONE</b>* child collection object and related properties already built in. The oLineItems object will hold a object reference to the child item class. To make it active (so that it fetches child records every time you fetch a new parent object), you will need to set the cLineItemsClass, cLineItemsAlias, and lLoadtems properties. </p>
<p>The <b>cLineItemsClass</b> property points to a lineitems class that you must define in your VCX and it holds the table name of where the child records live and the key field name which links it to the PK on the parent.
<p>The <b>cLineItemsAlias</b> property is the name of the cursor that where the child records will live.
<p>Finally, be sure you set the <b>lLoadLineItems</b> property to .t. to make sure the main BO will load the line items each time you call the Get() method on the Parent. </p>
</blockquote>
<p><strong>Child Class</strong> &#8211; Create your InvoiceLineItems child class as a subclass of wwBusProItemList.<br />
<blockquote>
<p>Set the properties cFilename and cFKField, which identify the Child table, and the field in the table that links back to the Parent PK in the invoice class.</p>
</blockquote>
<p>So that’s it.&nbsp; You’ve just set up the built-in functionality for the wwBusinessProParent class to handle the Parent BO and its set of child objects.
<p>&nbsp;<br />
<h2>Need to handle <b>MULTIPLE</b> sets of child records?</h2>
<p>Let’s say you also want to fetch all InvoicePayments records every time you load up an Invoice object…</p>
<p>After you’ve configured your “Invoice” and “InvoiceLineItems” classes as described above, and add the following properties and one method to cover the “Payments” collection:<br />
<blockquote>
<p><b>New Properties:</b>
<ul>
<li>cPaymentItemsClass
<li>cPaymentItemsAlias
<li>lLoadPayments
<li>lAllowEditPaymentItems (optional, but something I include on my so I can enable or disable stuff in the UI layer) </li>
</ul>
<p><b>New Method:</b>
<ul>
<li>GetPaymentItems() </li>
</ul>
</blockquote>
<p>
<blockquote>
<p><font color="#0000ff"></font></p>
</blockquote>
<p>Now you need write two simple code blocks:
<p>1. To populate the PaymentItems cursor (in addition to the LineItems cursor) every time you fetch an Invoice, you need to override the LoadRelatedData() method on the Invoice class like this:
<p>&nbsp;
<p><a href="http://mattslay.com/wp-images/946d8fef9a1d_F09F/image.png"><img style="background-image: none; border-right-width: 0px; margin: 0px 0px 0px 50px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-images/946d8fef9a1d_F09F/image_thumb.png" width="809" height="291"></a>
<p>&nbsp;
<p>2. Define the GetPaymentItems() method like this:
<p><a href="http://mattslay.com/wp-images/946d8fef9a1d_F09F/image_3.png"><img style="background-image: none; border-right-width: 0px; margin: 0px 0px 0px 30px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://mattslay.com/wp-images/946d8fef9a1d_F09F/image_thumb_3.png" width="824" height="347"></a>
<p>That’s it.&nbsp;
<p>Once you have brought this Invoice object to life, you will have 3 classes in your VCX:
<p>Invoice (based on wwBusProParent)
<p>InvoiceLineItems (based on wwBusProItemList) (this is what the default oLineItems will point to)
<p>InvoicePaymentItems (based on wwBusProItemList) (this is what the above new properties and methods will point to)
<p>When complete, your “Aggregate” Invoice Business Object will look like this:<br />
<blockquote>
<p><font color="#000000">Invoice </font>
<p><font color="#000000">.oLineItems </font>
<p><font color="#0000ff"><font color="#000000">.oPaymentItems</font> </font></p>
</blockquote>
<p>I know it might seem complicated at first, but once you understand what’s happening, it really not hard.</p>
]]></content:encoded>
			<wfw:commentRss>http://mattslay.com/wwbusinessproparent-child-collections-in-a-wwbusiness-business-object/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

