<?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:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
xmlns:rawvoice="http://www.rawvoice.com/rawvoiceRssModule/"
>
<channel>
	<title>Daniel Johnson, Jr. &#187; bridge application</title>
	<atom:link href="http://danieljohnsonjr.com/main/category/bridge-application/feed/" rel="self" type="application/rss+xml" />
	<link>http://danieljohnsonjr.com/main</link>
	<description>Connecting others and telling great stories.</description>
	<lastBuildDate>Wed, 08 Feb 2012 14:55:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
<!-- podcast_generator="Blubrry PowerPress/2.0.4" -->
	<itunes:summary>Connecting others and telling great stories.</itunes:summary>
	<itunes:author>Daniel Johnson, Jr.</itunes:author>
	<itunes:explicit>no</itunes:explicit>
	<itunes:image href="http://danieljohnsonjr.com/main/wp-content/plugins/powerpress/itunes_default.jpg" />
	<itunes:owner>
		<itunes:name>Daniel Johnson, Jr.</itunes:name>
		<itunes:email>danielj2@danieljohnsonjr.com</itunes:email>
	</itunes:owner>
	<managingEditor>danielj2@danieljohnsonjr.com (Daniel Johnson, Jr.)</managingEditor>
	<itunes:subtitle>Connecting others and telling great stories.</itunes:subtitle>
	<image>
		<title>Daniel Johnson, Jr. &#187; bridge application</title>
		<url>http://danieljohnsonjr.com/main/wp-content/plugins/powerpress/rss_default.jpg</url>
		<link>http://danieljohnsonjr.com/main/category/bridge-application/</link>
	</image>
		<item>
		<title>Reaching the point of diminishing returns on a project</title>
		<link>http://danieljohnsonjr.com/main/2007/09/reaching-the-point-of-diminishing-returns-on-a-project/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=reaching-the-point-of-diminishing-returns-on-a-project</link>
		<comments>http://danieljohnsonjr.com/main/2007/09/reaching-the-point-of-diminishing-returns-on-a-project/#comments</comments>
		<pubDate>Fri, 21 Sep 2007 14:53:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[integration manager]]></category>
		<category><![CDATA[lessons learned]]></category>
		<category><![CDATA[microsoft great plains]]></category>
		<category><![CDATA[payroll]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/09/21/reaching-the-point-of-diminishing-returns-on-a-project/</guid>
		<description><![CDATA[Over the past month, I have been working on a project to automate payroll entry for a client that has close to 300 employees and is growing. Naturally, it is the company&#8217;s best interest to get this payroll automated as much as possible. To do this I&#8217;ve been developing an application to bridge the payroll [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F09%2Freaching-the-point-of-diminishing-returns-on-a-project%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F09%2Freaching-the-point-of-diminishing-returns-on-a-project%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_Ny-ucgJGnTg/RvPp_m0mx0I/AAAAAAAAAFU/U6fjJVLjBs0/s1600-h/dimishedreturns.gif"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_Ny-ucgJGnTg/RvPp_m0mx0I/AAAAAAAAAFU/U6fjJVLjBs0/s200/dimishedreturns.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5112687280957867842" /></a><br />Over the past month, I have been working on a project to automate payroll entry for a client that has close to 300 employees and is growing.  Naturally, it is the company&#8217;s best interest to get this payroll automated as much as possible.</p>
<p>To do this I&#8217;ve been developing an <a href="http://danieljohnsonjr.blogspot.com/search/label/bridge%20application" title="Other mentions of the payroll bridge application">application to bridge the payroll</a> info to <a href="http://en.wikipedia.org/wiki/Great_Plains_(accounting)" target="_blank">Microsoft Great Plains Integration Manager</a>.</p>
<p>One of the criteria I&#8217;ve used to evaluate a client&#8217;s payroll is a consistent layout in a good format, so that I can tell the program where to map regular hours, overtime, cash reimbursements, etc.  In some cases I&#8217;m able to tweak the payroll to make it into a layout that is consistent enough for me to automate.</p>
<p>This particular client is a construction company, and the only electronic version of the payroll is a text file that is not <a href="http://dictionary.reference.com/browse/delimiter" target="_blank">delimited</a>.  The file is basically a report from the client&#8217;s system, and it has page headers and department footers, as well has breakdowns of <a href="http://maggiewang.com/2007/09/16/have-you-checked-your-irs-withholding-lately/" target="_blank">withholding</a>, etc.  Most of that I can ignore in the program.  </p>
<p>My colleague was able to import it into <a href="http://blogs.msdn.com/excel/default.aspx" target="_blank">Microsoft Excel</a>, using spaces as the delimiter.  From there I saved the file as tab-delimited text, the format used in the other bridge applications I&#8217;ve developed.</p>
<p>The big problem is the inconsistent layout, which has come from using spaces to delimit the text, depending largely on how much detail is on a particular line of text.  Look at the following 3 lines of text:
<ul>
<li>E  22 Per Diem &#8211; C AZ 3   <b>99</b>
<li>E  22 Per Diem &#8211; C AZ 3 XYZ111 <b>99</b>
<li>E  22 Per Diem &#8211; C       <b>99</b></ul>
<p>In each of these lines, the payroll item is <a href="http://www.overheardbin.com/2007/09/carpe_per_diem_1.html" target="_blank">Per Deim</a>, and the amount is 99.  When you space-delimit the lines the amounts are in different columns.</p>
<p>This is just one major aspect of complexity that has come from my attempt to automate the payroll.  After talking it over with my boss, we realize that we&#8217;ve come to the point of <a href="http://digg.com/design/Enterprise_Architecture_and_the_Law_of_Diminishing_Returns" target="_blank">diminishing returns</a>.</p>
<p>I&#8217;m off this project until there is another way to parse the payroll information and am able to move on to another project that&#8217;s in the queue.</p>
<p>Related tags: <a href="http://technorati.com/tag/microsoft+great+plains" rel="tag" target="_blank">microsoft+great+plains</a> <a href="http://technorati.com/tag/integration+manager" rel="tag" target="_blank">integration+manager</a> <a href="http://technorati.com/tag/payroll+automation" rel="tag" target="_blank">payroll+automation</a> <a href="http://technorati.com/tag/microsoft+access" rel="tag" target="_blank">microsoft+access</a> <a href="http://technorati.com/tag/vba" rel="tag" target="_blank">vba</a> <a href="http://technorati.com/tag/programming" rel="tag" target="_blank">programming</a> <a href="http://technorati.com/tag/application+design" rel="tag" target="_blank">application+design</a> <a href="http://technorati.com/tag/peo" rel="tag" target="_blank">peo</a> <a href="http://technorati.com/tag/daniel+johnson+jr" rel="tag" target="_blank">daniel+johnson+jr</a></p>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/09/reaching-the-point-of-diminishing-returns-on-a-project/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/09/reaching-the-point-of-diminishing-returns-on-a-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Knowing where to fix a problem pays off in quick response</title>
		<link>http://danieljohnsonjr.com/main/2007/07/knowing-where-to-fix-a-problem-pays-off-in-quick-response/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=knowing-where-to-fix-a-problem-pays-off-in-quick-response</link>
		<comments>http://danieljohnsonjr.com/main/2007/07/knowing-where-to-fix-a-problem-pays-off-in-quick-response/#comments</comments>
		<pubDate>Mon, 09 Jul 2007 14:44:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[accounting]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[efficiency]]></category>
		<category><![CDATA[payroll]]></category>
		<category><![CDATA[payroll processing]]></category>
		<category><![CDATA[Payroll tax]]></category>
		<category><![CDATA[transporation]]></category>
		<category><![CDATA[troubleshooting]]></category>
		<category><![CDATA[trucking]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/07/09/knowing-where-to-fix-a-problem-pays-off-in-quick-response/</guid>
		<description><![CDATA[I was on the phone with a Payroll Specialist about 30 minutes ago. One of the company&#8217;s biggest clients is a trucking company. We set them up back in January with a bridge application to facilitate payroll entry. The client emails their payroll in a spreadsheet with a consistent layout that I and my coworker [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F07%2Fknowing-where-to-fix-a-problem-pays-off-in-quick-response%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F07%2Fknowing-where-to-fix-a-problem-pays-off-in-quick-response%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I was on the phone with a Payroll Specialist about 30 minutes ago. One of the company&#8217;s biggest clients is a trucking company. We set them up back in January with a <a href="http://danieljohnsonjr.com/main/2007/01/12/new-bridge-applications-for-trucking-companies-to-significantly-reduce-payroll-processing-time/" target="_blank">bridge application to facilitate payroll entry</a>. The client emails their payroll in a spreadsheet with a consistent layout that I and my coworker mapped with the program, and their payroll needs to be done early Monday morning for a Tuesday check date.</p>
<p>Last week, the client left the first column blank for one of their employees, and the payroll specialist didn&#8217;t find out he wasn&#8217;t paid until the day after the payroll went out. She called me this morning to have me check to see if the program would do that again. In less than 10 minutes, I was able to diagnose and fix the problem so that it won&#8217;t happen again.</p>
<p>The code looked for something in that first column before mapping the columns into specific payroll items. In this case, the data in the first column isn&#8217;t as important as that in, say, the third column. I changed the code that does the test to check the third column instead.</p>
<p>I&#8217;m pleased that my knowledge of how this program works lets me respond so quickly and adeptly to a problem like this.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=eadd072c-d959-4b42-9bae-1206ac999cc7" alt="" /></div>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/07/knowing-where-to-fix-a-problem-pays-off-in-quick-response/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/07/knowing-where-to-fix-a-problem-pays-off-in-quick-response/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Great Plains &#8211; Integration Manager in action</title>
		<link>http://danieljohnsonjr.com/main/2007/06/microsoft-great-plains-integration-manager-in-action/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsoft-great-plains-integration-manager-in-action</link>
		<comments>http://danieljohnsonjr.com/main/2007/06/microsoft-great-plains-integration-manager-in-action/#comments</comments>
		<pubDate>Mon, 18 Jun 2007 22:33:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[case studies]]></category>
		<category><![CDATA[integration manager]]></category>
		<category><![CDATA[microsoft great plains]]></category>
		<category><![CDATA[payroll]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[Great Plains]]></category>
		<category><![CDATA[Microsoft Dynamics GP]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/06/18/microsoft-great-plains-integration-manager-in-action/</guid>
		<description><![CDATA[The company uses a version of Microsoft Great Plains (GP) that&#8217;s been customized for the PEO industry. One piece of that is Integration Manager (IM). I&#8217;ve talked about the bridge application a number of times before. With an Excel file from a client and, with some sophisticated programming, we create a tab-delimited text transaction file [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F06%2Fmicrosoft-great-plains-integration-manager-in-action%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F06%2Fmicrosoft-great-plains-integration-manager-in-action%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>The company uses a version of <a class="zem_slink" title="Microsoft Dynamics GP" rel="wikipedia" href="http://en.wikipedia.org/wiki/Microsoft_Dynamics_GP">Microsoft Great Plains</a> (GP) that&#8217;s been customized for the <a class="zem_slink" title="Professional employer organization" rel="wikipedia" href="http://en.wikipedia.org/wiki/Professional_employer_organization">PEO</a> industry.  One piece of that is Integration Manager (IM).  I&#8217;ve talked about the bridge application a number of times before.  With an <a class="zem_slink" title="Microsoft Excel" rel="homepage" href="http://office.microsoft.com/en-us/excel/FX100487621033.aspx">Excel</a> file from a client and, with some sophisticated programming, we create a <a class="zem_slink" title="Delimiter-separated values" rel="wikipedia" href="http://en.wikipedia.org/wiki/Delimiter-separated_values">tab-delimited</a> text transaction file for Integration Manager.  We&#8217;ve set up some profiles in Integration Manager to upload payroll transactions into a batch in the Great Plains system, saving a lot of time and money.  In some cases we&#8217;ve seen a 91% drop in the amount of time it takes to run a payroll.</p>
<p>Over the next few weeks or so, I&#8217;ll be running Integration Manager for the Payroll department.  Here are some numbers for today:</p>
<p><span style="font-size: small;"></p>
<table border="1" cellspacing="0" cellpadding="1" width="100%" bordercolor="#000000">
<tbody>
<tr bgcolor="#3399cc">
<td width="34%" align="right"><strong>Industry</strong></td>
<td width="33%" align="right"><strong>Transactions</strong></td>
<td width="33%" align="right"><strong>Emps</strong></td>
</tr>
<tr>
<td align="right">Trucking</td>
<td align="right">149</td>
<td align="right">51</td>
</tr>
<tr>
<td align="right">Trucking</td>
<td align="right">168</td>
<td align="right">90</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">86</td>
<td align="right">43</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">94</td>
<td align="right">48</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">72</td>
<td align="right">39</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">82</td>
<td align="right">34</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">94</td>
<td align="right">40</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">97</td>
<td align="right">40</td>
</tr>
<tr>
<td align="right">Restaurant</td>
<td align="right">87</td>
<td align="right">47</td>
</tr>
<tr>
<td align="right">Manufacturing</td>
<td align="right">173</td>
<td align="right">98</td>
</tr>
</tbody>
</table>
<p></span><br />
1002 transactions, for 530 employees of 10 clients.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=f366f73a-f04c-4aed-b813-47c712e850a7" alt="" /></div>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/06/microsoft-great-plains-integration-manager-in-action/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/06/microsoft-great-plains-integration-manager-in-action/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Migrating Existing Access Applications to Access 2007</title>
		<link>http://danieljohnsonjr.com/main/2007/04/migrating-existing-access-applications-to-access-2007/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=migrating-existing-access-applications-to-access-2007</link>
		<comments>http://danieljohnsonjr.com/main/2007/04/migrating-existing-access-applications-to-access-2007/#comments</comments>
		<pubDate>Wed, 25 Apr 2007 17:16:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[conversions]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[payroll]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[troubleshooting]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/04/25/migrating-existing-access-applications-to-access-2007/</guid>
		<description><![CDATA[This post is one of the more esoteric ones where I delve into the geeky details of some of my programming work. I know &#8211; it&#8217;s really sexy, isn&#8217;t it? I have mentioned the bridge application I developed that helps make payrolls run faster, helping client employees get paid faster, and so forth, using Microsoft [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F04%2Fmigrating-existing-access-applications-to-access-2007%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F04%2Fmigrating-existing-access-applications-to-access-2007%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><em>This post is one of the more <a href="http://dictionary.reference.com/search?sourceid=captaincaveman&amp;q=esoteric" title="Don't feel bad if you have to look it up.  I just did to be sure it was the right word for this instance." target="_blank">esoteric</a> ones where I delve into the geeky details of some of my programming work.  I know &#8211; it&#8217;s really sexy, isn&#8217;t it?</em></p>
<p>I have mentioned the <a href="http://danieljohnsonjr.blogspot.com/search/label/bridge%20application" title="Payroll bridge application posts" target="_blank">bridge application</a> I developed that helps make payrolls run faster, helping client employees get paid faster, and so forth, using Microsoft Access 2003 with VBA, ADO, Excel, Office, etc.</p>
<p>Some members of the company are starting to migrate to Office 2007, and we can see the entire organization moving there soon.  A few weeks ago, I tried opening and running one of the bridge applications in Access 2007, and it bombed horribly, specifically in how I&#8217;ve written it to use the Office 11 FileSearch object.</p>
<p>I just found a <strike>couple of</strike> few documents on MSDN and TechNet that I hope will help understand what is involved in the migration:
<ul>
<li><a href="http://msdn2.microsoft.com/en-us/library/bb203849.aspx" target="_blank">Transitioning Your Existing Access Applications to Access 2007</a></li>
<li><a href="http://technet2.microsoft.com/Office/en-us/library/1dce641e-ba1c-446a-8ff2-221769a58ba51033.mspx?mfr=true" target="_blank">Migration Considerations for Access 2007</a></li>
<li><a href="http://technet2.microsoft.com/Office/en-us/library/1dce641e-ba1c-446a-8ff2-221769a58ba51033.mspx?mfr=true" target="_blank">Changes in Access 2007</a></li>
<li><a href="http://msdn2.microsoft.com/en-us/library/aa432027.aspx" target="_blank">Office 2007 Object Model Reference</a></li>
<li><a href="http://msdn2.microsoft.com/en-us/library/aa830702.aspx" target="_blank">Migrating a VBA Solution to a Visual Studio Tools for Office Add-In</a></li>
</ul>
<p>Okay, to be honest, I picked that last item because it sounds interesting.</p>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/04/migrating-existing-access-applications-to-access-2007/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/04/migrating-existing-access-applications-to-access-2007/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Handling errors in the payroll bridge application</title>
		<link>http://danieljohnsonjr.com/main/2007/03/handling-errors-in-the-payroll-bridge-application/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=handling-errors-in-the-payroll-bridge-application</link>
		<comments>http://danieljohnsonjr.com/main/2007/03/handling-errors-in-the-payroll-bridge-application/#comments</comments>
		<pubDate>Fri, 16 Mar 2007 14:07:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[troubleshooting]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/03/16/handling-errors-in-the-payroll-bridge-application/</guid>
		<description><![CDATA[Clients email the company their payroll files, and the columns on the payroll indicate Regular Hours, Overtime, Vacation, and so forth. To make the bridge application work, I and the other developer map the program that assigns payroll items based on this layout. It only works, however, when the layout is consistent. Whenever a client [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F03%2Fhandling-errors-in-the-payroll-bridge-application%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F03%2Fhandling-errors-in-the-payroll-bridge-application%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Clients email the company their payroll files, and the columns on the payroll indicate Regular Hours, Overtime, Vacation, and so forth.  To make the bridge application work, I and the other developer map the program that assigns payroll items based on this layout.  It only works, however, when the layout is consistent.  Whenever a client changes it by adding or deleting a column, the program generates an error.</p>
<p>One thing I have found so helpful in resolving errors is the Error Handler function.  I use the Err object in <a class="zem_slink" title="Visual Basic" rel="wikipedia" href="http://en.wikipedia.org/wiki/Visual_Basic">Visual Basic</a>, but I also add additional information such as the module name and procedure name where the error occurred.  The user gets a message box, which is helpful for them, but I also wrote the program to create a log file with the same information so that I can go back and see errors that have occurred.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=57485c87-cf7f-4ceb-b718-0c7d3581156a" alt="" /></div>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/03/handling-errors-in-the-payroll-bridge-application/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/03/handling-errors-in-the-payroll-bridge-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rapid response to payroll layout change</title>
		<link>http://danieljohnsonjr.com/main/2007/03/rapid-response-to-payroll-layout-change/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rapid-response-to-payroll-layout-change</link>
		<comments>http://danieljohnsonjr.com/main/2007/03/rapid-response-to-payroll-layout-change/#comments</comments>
		<pubDate>Wed, 14 Mar 2007 19:22:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[case studies]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[troubleshooting]]></category>
		<category><![CDATA[Computer file]]></category>
		<category><![CDATA[payroll]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/03/14/rapid-response-to-payroll-layout-change/</guid>
		<description><![CDATA[One hour ago I got an e-mail from a payroll specialist, telling me that a client with 107 active employees had added a column to their payroll file and asking if I could fix their bridge application to allow for the new payroll item. I opened the code, and after I made the changes needed [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F03%2Frapid-response-to-payroll-layout-change%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F03%2Frapid-response-to-payroll-layout-change%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>One hour ago I got an e-mail from a payroll specialist, telling me that a client with 107 active employees had added a column to their payroll file and asking if I could fix their <a title="Daniel Johnson, Jr. &gt;&gt; bridge applications" href="http://danieljohnsonjr.com/main/category/bridge-application/" target="_blank">bridge application</a> to allow for the new payroll item.</p>
<p>I opened the code, and after I made the changes needed in a few class modules, we were good to go.  I tested it out on my machine and then put it out on the network for the payroll specialist to use.</p>
<p>I was able to get this done so quickly because there were only a few places to add some more code.  Having the system set up like this was very efficient.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=1d1e8860-fca4-4bca-99c5-25ec543e623d" alt="" /></div>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/03/rapid-response-to-payroll-layout-change/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/03/rapid-response-to-payroll-layout-change/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When the feature became a problem</title>
		<link>http://danieljohnsonjr.com/main/2007/03/when-the-feature-became-a-problem/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=when-the-feature-became-a-problem</link>
		<comments>http://danieljohnsonjr.com/main/2007/03/when-the-feature-became-a-problem/#comments</comments>
		<pubDate>Wed, 07 Mar 2007 16:02:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[lessons learned]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/03/07/when-the-feature-became-a-problem/</guid>
		<description><![CDATA[When I was initially developing the bridge application a couple years ago, I had set up the Close button on several forms to be the Cancel button. That way a user can just hit the Esc button to close the form, if they prefer to use the keyboard. As the applications for various clients have [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F03%2Fwhen-the-feature-became-a-problem%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F03%2Fwhen-the-feature-became-a-problem%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>When I was initially developing the bridge application a couple years ago, I had set up the Close button on several forms to be the Cancel button.  That way a user can just hit the Esc button to close the form, if they prefer to use the keyboard.</p>
<p>As the applications for various clients have been used, this feature had become more of a bane than a benefit.  It turns out that users hit the Esc key to Undo what they have typed, but the application would close the file.  This results in some records being incomplete, causing errors when the application is processing.</p>
<p>While you can try to anticipate the user&#8217;s experience as much as possible beforehand, some bugs still show up.</p>
<p>No big deal.  I just removed that functionality from every bridge application we have in use so that program behaves in a way that users expect it to behave.</p>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/03/when-the-feature-became-a-problem/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/03/when-the-feature-became-a-problem/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Backing up the bridge applications and drive-independence</title>
		<link>http://danieljohnsonjr.com/main/2007/02/backing-up-the-bridge-applications-and-drive-independence/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backing-up-the-bridge-applications-and-drive-independence</link>
		<comments>http://danieljohnsonjr.com/main/2007/02/backing-up-the-bridge-applications-and-drive-independence/#comments</comments>
		<pubDate>Fri, 02 Feb 2007 17:52:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[batch files]]></category>
		<category><![CDATA[bridge application]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/02/02/backing-up-the-bridge-applications-and-drive-independence/</guid>
		<description><![CDATA[When I was developing the bridge applications, I had set the code up to recognize a &#8220;test&#8221; environment and a &#8220;production&#8221; environment through hard-coded filenames. It became cumbersome to change the filenames in code every time I moved the application to each environment. We also realized we needed to set up a &#8220;standalone&#8221; environment for [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F02%2Fbacking-up-the-bridge-applications-and-drive-independence%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F02%2Fbacking-up-the-bridge-applications-and-drive-independence%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>When I was developing the bridge applications, I had set the code up to recognize a &#8220;test&#8221; environment and a &#8220;production&#8221; environment through hard-coded filenames.  It became cumbersome to change the filenames in code every time I moved the application to each environment.  We also realized we needed to set up a &#8220;standalone&#8221; environment for the applications.</p>
<p>&#8230;hence, the need for the application to be made &#8220;drive-independent&#8221;.</p>
<p>I wound up setting a property in one of the main VBA classes to &#8220;auto-discover&#8221; its environment as the application launched.  That made it possible to move copies of the application easily among the test/development, production, and standalone environments.</p>
<p>While we&#8217;re on that topic, every week we need to backup the copies of the bridge applications from the production environment to the other two.  The reason for this is because there are certain changes made to some self-correcting features while payroll specialists run the applications each week.  (I&#8217;ll have to discuss these features in a separate post.)</p>
<p>For a few weeks I would manually navigate to each folder that contains a bridge application and copy the application file over to the other environments.  That&#8217;s okay for a couple of files, but as we started implementing this for several clients, it became very cumbersome.</p>
<p>The solution: batch files.  I created batch files that copy all the files from the production environment to the development/test and standalone environments.  What used to take 45 minutes now takes 1 minute.  Way cool.</p>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/02/backing-up-the-bridge-applications-and-drive-independence/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/02/backing-up-the-bridge-applications-and-drive-independence/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Helping 525 employees get paid</title>
		<link>http://danieljohnsonjr.com/main/2007/01/helping-525-employees-get-paid/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=helping-525-employees-get-paid</link>
		<comments>http://danieljohnsonjr.com/main/2007/01/helping-525-employees-get-paid/#comments</comments>
		<pubDate>Tue, 30 Jan 2007 17:27:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[case studies]]></category>
		<category><![CDATA[mentoring]]></category>
		<category><![CDATA[peo]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/01/30/helping-525-employees-get-paid/</guid>
		<description><![CDATA[As you may have read before, I&#8217;ve written the bridge applications that prepare clients&#8217; payroll for a program we use to batch load into our payroll management system. Whenever I and now my coworker, whom I&#8217;m mentoring, finish one of these bridge applications, we update a master list of all the clients we&#8217;ve set up [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F01%2Fhelping-525-employees-get-paid%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F01%2Fhelping-525-employees-get-paid%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>As you may have read before, I&#8217;ve written the <a title="Daniel Johnson, Jr. &gt;&gt; bridge applications" href="http://danieljohnsonjr.com/main/category/bridge-application/" target="_blank">bridge applications</a> that prepare clients&#8217; payroll for a program we use to batch load into our payroll management system.  Whenever I and now my coworker, whom I&#8217;m mentoring, finish one of these bridge applications, we update a master list of all the clients we&#8217;ve set up and email it to the other people in the organization that need it.</p>
<p>The person who normally runs the batch-loading program wasn&#8217;t available today, because she&#8217;s printing W-2&#8242;s for all of our client employees.  So, the payroll specialist contacted me, and I ran it for seven of our clients.  I estimate that it pulled payroll transactions for about 525 employees.</p>
<p>I love being able to help out in a pinch!</p>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/01/helping-525-employees-get-paid/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/01/helping-525-employees-get-paid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Revised payroll layout forces changes to bridge application</title>
		<link>http://danieljohnsonjr.com/main/2007/01/revised-payroll-layout-forces-changes-to-bridge-application/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=revised-payroll-layout-forces-changes-to-bridge-application</link>
		<comments>http://danieljohnsonjr.com/main/2007/01/revised-payroll-layout-forces-changes-to-bridge-application/#comments</comments>
		<pubDate>Mon, 29 Jan 2007 17:03:00 +0000</pubDate>
		<dc:creator>Daniel Johnson, Jr.</dc:creator>
				<category><![CDATA[bridge application]]></category>
		<category><![CDATA[peo]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://danieljohnsonjr.com/main/2007/01/29/revised-payroll-layout-forces-changes-to-bridge-application/</guid>
		<description><![CDATA[In an earlier post I described some changes to a client&#8217;s payroll journal. In this one I&#8217;ll share how I worked those changes into the corresponding bridge application we use to automate the payroll entry. You will recall that I made two significant changes: Added a new payroll item and Removed totals columns I will [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F01%2Frevised-payroll-layout-forces-changes-to-bridge-application%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fdanieljohnsonjr.com%2Fmain%2F2007%2F01%2Frevised-payroll-layout-forces-changes-to-bridge-application%2F&amp;source=danieljohnsonjr&amp;style=compact&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>In <a href="http://danieljohnsonjr.blogspot.com/2007/01/client-pleased-by-changes-made-to.html" target="_blank">an earlier post</a> I described some changes to a client&#8217;s payroll journal.  In this one I&#8217;ll share how I worked those changes into the corresponding bridge application we use to automate the payroll entry.</p>
<p>You will recall that I made two significant changes:
<ol>
<li>Added a new payroll item and</li>
<li>Removed totals columns</li>
</ol>
<p>I will discuss each of these in turn, along with some other things I&#8217;ve discovered while working on this application.</p>
<p><b>New Payroll Item</b></p>
<p>The client wanted to be able to track Training, so I added it to their payroll journals.  In the bridge application, I added the payroll item in the respective classes to recognize it.</p>
<p><b>Totals Columns</b></p>
<p>The client tracks both weeks of their pay period individually, and the payroll journal was originally set up to provide totals for each week and for both weeks.  The totals columns for Week 1 were set up immediately after Week 1&#8242;s payroll items.  The totals columns for Week 2 and for both weeks were set up after Week 2&#8242;s payroll items.</p>
<p>When I removed the totals columns, I moved all of Week 2&#8242;s payroll items.  The bridge application contains a VBA class where I&#8217;ve mapped the payroll item columns on the spreadsheet to elements of a tab-delimited array.  I revised the code to make sure the each element is mapped appropriately.</p>
<p><b>Pitfalls while working off a network</b></p>
<p>Early Friday afternoon the network where I develop the applications became frozen, and I had to shut down the application from the Task Manager.  Knowing this corrupts the application file, when I came in this morning, I started over again, but this time off a local copy, in case something would happen to the network again.  Since I&#8217;d made the changes one time already, it didn&#8217;t take long to do.</p>
<p><b>Testing it like the user would</b></p>
<p>When I tested the application to make sure the changes worked, the output looked odd.  I contacted the payroll specialist and found out that she runs the bridge application for one location at a time, and after testing the application that way, everything worked out fine.</p>
<div class="printfriendly align"><a href="http://danieljohnsonjr.com/main/2007/01/revised-payroll-layout-forces-changes-to-bridge-application/?pfstyle=wp" rel="nofollow" ><span class="printfriendly-text"></span></a></div>]]></content:encoded>
			<wfw:commentRss>http://danieljohnsonjr.com/main/2007/01/revised-payroll-layout-forces-changes-to-bridge-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Served from: danieljohnsonjr.com @ 2012-02-10 07:56:26 -->
