<?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>Productivity Prose &#187; Joshua Eddy</title>
	<atom:link href="http://www.attivoconsulting.com/blog/category/joshuaeddy/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.attivoconsulting.com/blog</link>
	<description>Tip and tricks for Exact and Microsoft ERP and CRM systems, SQL Server, and ISO 9001 Compliance</description>
	<lastBuildDate>Wed, 25 Aug 2010 23:14:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Documenting your processes? Consider a &#8220;workflow&#8221; instead!</title>
		<link>http://www.attivoconsulting.com/blog/2009/10/documenting-your-processes-consider-a-workflow-instead/</link>
		<comments>http://www.attivoconsulting.com/blog/2009/10/documenting-your-processes-consider-a-workflow-instead/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 04:26:45 +0000</pubDate>
		<dc:creator>The Event Manager</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[business process documentation]]></category>
		<category><![CDATA[document search]]></category>
		<category><![CDATA[documents]]></category>
		<category><![CDATA[Exact Synergy Document Management]]></category>
		<category><![CDATA[process flow]]></category>
		<category><![CDATA[workflow filters]]></category>
		<category><![CDATA[workflow management]]></category>
		<category><![CDATA[workflow search]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=442</guid>
		<description><![CDATA[I&#8217;ve been an avid Anaheim Angels fan (I&#8217;ll never call them Los Angeles) since my first game in 1984.  These days with my team in the hunt for another American League Championship; I&#8217;m sick and tired of reading all the sports &#8220;experts&#8221; writing off the Angels vs. the Red Sox. Overall Record: Angels. Runs scored: Angels. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been an avid Anaheim Angels fan (I&#8217;ll never call them Los Angeles) since my first game in 1984.  These days with my team in the hunt for another American League Championship; I&#8217;m <span>sick and tired of reading all the sports &#8220;experts&#8221; writing off the Angels vs. the Red Sox. Overall Record: Angels. Runs scored: Angels. Head-to-Head: Angels.  How can the experts pick the Red Sox? In their reasoning, it always comes down to one thing, the intangibles.</span></p>
<p>In the IT world, there are literally hundreds of categories of processes you may wish to document. Passwords, Network Architecture, Installed Software and their Update Histories, Backup Schedules; the list goes on and on.  Here at Attivo we considered doing what so many have done &#8211; to create a shared database containing all of this information in one place.  From that database, we have one document for each of the above categories, then refer to that document easily when we needed to. We track our own information this way, but more importantly, we keep track of this data for our clients as well. <a href="http://www.attivoconsulting.com/software/index/customer-relationship-manageme/exact-synergy-2.html" target="_blank">Exact Synergy</a> ,our <a href="http://www.attivoconsulting.com/software/index/customer-relationship-manageme.html" target="_blank">CRM system</a>,  has the capability to simplify the approach by allowing us to attach this data and documents to the customers. So why did we choose to go with a &#8220;<a href="http://www.attivoconsulting.com/software/index/crm-workflow-solutions.html" target="_blank">workflow</a>&#8221; approach instead of documents? Answer: the intangibles.</p>
<p>Before I get started, let me explain what a workflow is.  Also called a &#8220;process flow&#8221; or &#8220;request&#8221;, a workflow is a pre-defined business process that carries information from one employee or resource to another, for the benefit of the required process, until the information is no longer needed. This is best exemplified by a customer comment or complaint. The comment first gets &#8220;created&#8221; by the satisfied (or angry) customer, then travels with the remarks themselves to the customer&#8217;s account manager, then on to the general manager &#8211; notifying everyone along the way.  As it gets passed along, various people log their own information into the workflow, such as the date of the comment, what product or service the comment concerns, what type of comment it was, to the final resolution of the problem. </p>
<p>A document, on the other hand, is alot like this blog: alot of information on a white sheet of digital paper. I can sort it by category, date, and author&#8230;but that&#8217;s about it.  And that&#8217;s where the intangibles comes in.</p>
<p>Suppose you&#8217;re a technical support operation and you&#8217;d like to see a list of all your customers&#8217; installed software sorted by install date. But you&#8217;d also like to filter it by Operating System and sort it by the softwares&#8217; last updated date. Finally, you&#8217;d like to export that data including the updater&#8217;s comments into an excel spreadsheet.  If this were an online document, you could handle the first and last parts, but all the additional fields and filters in the middle would have required customizations to the document management system that may never be completed. But with Synergy&#8217;s workflow solution we have at our disposal an almost unlimited number of free fields that are searchable straight out of the box, and the requests themselves carry just as much textual data as a document.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2009/10/documenting-your-processes-consider-a-workflow-instead/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google Sync, the Blackberry lifesaver!</title>
		<link>http://www.attivoconsulting.com/blog/2009/09/google-sync-lifesaver/</link>
		<comments>http://www.attivoconsulting.com/blog/2009/09/google-sync-lifesaver/#comments</comments>
		<pubDate>Sun, 20 Sep 2009 01:37:45 +0000</pubDate>
		<dc:creator>The Event Manager</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[address books]]></category>
		<category><![CDATA[blackberry]]></category>
		<category><![CDATA[email addresses]]></category>
		<category><![CDATA[internet hosted contacts]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[phone numbers]]></category>
		<category><![CDATA[remote address book]]></category>
		<category><![CDATA[restoring contacts]]></category>
		<category><![CDATA[smartphones]]></category>
		<category><![CDATA[updating contacts]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=417</guid>
		<description><![CDATA[In this modern age of internet capable &#8220;Smart-Phones&#8221; like iPhones and Blackberries, instant access to sports scores and facebook accounts, and linked email, calendars and other applications &#8211; one problem existed for all smart phone owners &#8211; until just a little while ago. 
What happens to all that saved information when you lose your phone?  Contacts. Phone [...]]]></description>
			<content:encoded><![CDATA[<p>In this modern age of internet capable &#8220;Smart-Phones&#8221; like <a href="http://www.apple.com/iphone/" target="_blank">iPhones</a> and <a href="http://www.blackberry.com" target="_blank">Blackberries</a>, instant access to sports scores and facebook accounts, and linked email, calendars and other applications &#8211; one problem existed for all smart phone owners &#8211; until just a little while ago. </p>
<p>What happens to all that saved information when you lose your phone?  Contacts. Phone numbers. Addresses. Calendar Entries. Chat Usernames. All need to be re-entered into your new phone! (unless you remembered to manually backup this information to a computer). </p>
<p>A small application from <a href="http://www.google.com" target="_blank">Google</a> (who else?) now exists that solves this problem as well as several others.  Sync automatically logs into your <a href="http://www.gmail.com" target="_blank">GMAIL</a> (account required) online email service and synchronizes your contacts from your phone with the contacts on your GMAIL.  It will even carefully search for names that appear to be similar in order to prevent duplication. If duplication does occur, you can easily log into GMAIL from a computer at your convenience and merge similar contact records. The contact records themselves are extraordinarily detailed; affording you the ability to save unlimited Phone Numbers and Email Addresses for each contact name. Because most smart phones afford you the same luxury, all those detailed contacts are now updated on your phone the very next time the Sync application runs.</p>
<p><a href="http://www.google.com/sync" target="_blank">Google Sync</a> also updates your phone&#8217;s calendar entries with your <a href="http://calendar.google.com" target="_blank">Google Calendar</a> application &#8211; saving your appointments and reminders and alerting them on your phone instead of waiting for you to sign into a computer terminal to be alerted. Imagine, your own rolodex, personal reminder service and datebook - automatically updated &#8211; right in your pocket.</p>
<p>Then, when someday the inevitable happens and you lose your phone, break your phone, or just decide to replace it: just re-install Google Sync on your next phone and let Sync update your contacts! No more fancy cord transfers and downloads! No more backups! It&#8217;s all online!  I can&#8217;t express to you enough how valuable this service can be. Just think about all the times you&#8217;ve had to send an email out to everyone you know letting them know you&#8217;ve &#8220;lost&#8221; their phone numbers and email addresses, and to please send them to you as soon as they can.  Now it all occurs wirelessly and in moments.</p>
<p>To get this incredibly useful feature on your phone, visit <a href="http://m.google.com">http://m.google.com</a> from your phone&#8217;s browser and select the &#8220;Sync&#8221; application.  Then, choose your phone&#8217;s make and model and begin the download. After you install with all requested permissions, sign into the application one time with your GMAIL username and password, and let Sync do the rest.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2009/09/google-sync-lifesaver/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Outgrowing Weekly Take-Home Tape Backups? Go with External Drives!</title>
		<link>http://www.attivoconsulting.com/blog/2009/09/external-drive-backups/</link>
		<comments>http://www.attivoconsulting.com/blog/2009/09/external-drive-backups/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 05:18:44 +0000</pubDate>
		<dc:creator>The Event Manager</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[backup exec]]></category>
		<category><![CDATA[backup plan]]></category>
		<category><![CDATA[backups]]></category>
		<category><![CDATA[database backups]]></category>
		<category><![CDATA[exceeding tape size]]></category>
		<category><![CDATA[tape backups]]></category>
		<category><![CDATA[usb external drives]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=423</guid>
		<description><![CDATA[About a month ago, I encountered a dilemma while monitoring our Backup Exec software.  While our daily backup to network drive feature was humming along quite successfully, our weekly tape backup began to show repeated failures. It seemed to backup the first 60GB of our network drives and database successfully, then it would pause and ultimately fail.  [...]]]></description>
			<content:encoded><![CDATA[<p>About a month ago, I encountered a dilemma while monitoring our <a href="http://www.veritas.com" target="_blank">Backup Exec</a> software.  While our daily backup to network drive feature was humming along quite successfully, our weekly tape backup began to show repeated failures. It seemed to backup the first 60GB of our network drives and database successfully, then it would pause and ultimately fail.  I tried a few more tapes to make sure it wasn&#8217;t a corruption issue, but it did not resolve the problem. Then I decided to shave a few GB off our backup policy, taking us under the 60GB threshold.  Drat. We had outgrown our taped backups.</p>
<p>We toyed with the idea of buying bigger tapes, but that meant also updating our Tape Drive hardware itself, a significant investement that would no doubt become obsolete itself someday.  Or we could remotely backup to an offsite backup service, but this meant clogging our internet line mercilessly during backup times - and 60GB takes a <strong>very</strong> long time to transfer even over broadband. It was time to embrace a different option.  USB external drives were the answer.</p>
<p>Not only are USB External Drives significantly more inexpensive than Tape drives, but they also have the unquestionable appeal of being able to be plugged into any computer/server &#8211; without any additional hardware to buy/install!  Additionally, the transfer rate both to and from the external drive over the USB 2.0 connection is at times more than <strong>30x</strong> the rate of transfer we received over the old tapes.  30 hour backups on the tape systems were now taking just over an hour to complete!</p>
<p>We purchased 2 500GB <a href="http://www.iomega.com" target="_blank">Iomega</a> drives from <a href="http://www.tigerdirect.com">http://www.tigerdirect.com</a> for less than $100 each. They shipped in just a few days and within <em>minutes</em> of opening the box I had them programmed into Backup Exec to backup our entire network on a weekly basis.  They are about the same size and weight as the old tapes, but at 10x times the size they are useful for a variety of purposes beyond just backing up our system.  Now, every Monday our new routine consists of the following steps:</p>
<ol>
<li>Unplug old USB drive.</li>
<li>Plug in new USB drive returned from the offsite location.</li>
<li>Return to the offsite location with the old USB drive.</li>
</ol>
<p>There have been a whole lot of fires down here in Southern California recently, but with our new backup plan in place, we&#8217;re no longer worried about losing our valuable data.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2009/09/external-drive-backups/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 7: The &#8220;productive, reliable&#8221; child of Vista and XP.</title>
		<link>http://www.attivoconsulting.com/blog/2009/05/windows-7-the-productive-reliable-child-of-vista-and-xp/</link>
		<comments>http://www.attivoconsulting.com/blog/2009/05/windows-7-the-productive-reliable-child-of-vista-and-xp/#comments</comments>
		<pubDate>Wed, 13 May 2009 04:34:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows 7 RC1]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=354</guid>
		<description><![CDATA[Today is Tuesday, May 12th. This officially makes it 1 week since I installed Microsoft Windows 7 Release Candidate 1 on my 3 year old Dell XPS laptop; and as I glance over at the screen, I still see the little betta fish (&#8220;beta fish!&#8221;) swimming in the blue desktop. That&#8217;s right, I haven&#8217;t even considered going [...]]]></description>
			<content:encoded><![CDATA[<p>Today is Tuesday, May 12th. This officially makes it 1 week since I installed Microsoft Windows 7 Release Candidate 1 on my 3 year old Dell XPS laptop; and as I glance over at the screen, I still see the little betta fish (&#8220;<a href="http://news.softpedia.com/news/The-Story-of-the-Windows-7-Beta-Fish-101857.shtml" target="_blank">beta fish</a>!&#8221;) swimming in the blue desktop. That&#8217;s right, I haven&#8217;t even considered going back to XP or Vista. Not this time. Not ever.</p>
<p>I have a little experience with beta testing windows.  A few years ago, I was one of the early trial users of the new Vista operating system: then known as Longhorn. Quite a while before that, I was one of the first to try out a vastly new operating system upgrade to Windows 98 to be named Windows 2000. I would compare the changes Windows 7 brings to that first change to Windows 2000 and not the debacle that was Vista.</p>
<p>RELIABILITY</p>
<p>When I look back to my first experience with Windows 2000, I remember being struck by how astonishingly stable it was.  In hindsight, this was due to it being built upon the same architecture of a Windows NT server as opposed to the old MSDOS structure.  A welcome change to the all-too-common blue screen of death in those early Windows 95/98 days.<br />
Windows 7 RC1 has had just 1 application crash on me in the past week. (On day 1 it apparently didn&#8217;t like my choice to install FireFox as the default browser: a second try accomplished the task.)  This may not sound so impressive, but you really need to see the new ways that Windows 7 handles basic tasks to appreciate the additional thought and design that must have gone into the new interface. Every tool, every icon, even Windows Explorer has been redesigned&#8230;not just aesthetically, but also functionally. Yes, Windows Search is still built into the start menu like in Windows Vista, but it now <em>works all the time</em> and is an invaluable file and application management tool.</p>
<p>USABILITY</p>
<p>Back when I beta tested Windows 2000, I was just an average Desktop OS user with little server experience.  Still, the user interface made the new tools and functions very simple to understand.  Disk Defragmenter, for example, was no longer the only useful item found in System Tools, but instead was located in a brand new folder called &#8220;Administrator Tools,&#8221; side by side with a host of other useful goodies.</p>
<p>Windows 7 is alot like that, but on a much grander scale.  The Windows 7 interface is remarkably intuitive when paired with our existing experiences with Windows operating systems. Back when we were introduced to Windows Vista, we were told again and again how &#8220;cool&#8221; Windows Aero would be.  Then, once I had Vista, I had to do some extensive research to learn that Windows Aero was simply a glorified Alt-Tab. A great example of an easier introduction to new Windows 7 technology is that one can learn about what a button or tool does by simply hovering the mouse over the taskbar icon.  In Windows XP and Vista you would see a little tooltip caption that would explain the window to be restored. Windows 7 has gone visual.  Now you see a thumbnail representation of the window to be restored. If that window has multiple tabs &#8211; as is now the rage in web browsers &#8211; you see a separate thumbnail for every tab within the minimized window. Then the correct tab is just a single click away &#8211; on the thumbnail &#8211; at any given moment. </p>
<p>PRODUCTIVITY</p>
<p>Windows 7 is entirely about Productivity.  In addition to the mouseovers described above, the OS has made open windows easier to navigate by automatically making open windows slightly transparent as you roll your mouse over other open windows.  This reduces the NEED to repeatedly Alt-Tab or resize windows on smaller monitors as you can often see the data you need to recopy <em>right through</em> the window you&#8217;re currently utilizing. This also works with the new and improved show-desktop tool in the tray. Mouseover that tool, and you can quickly open a new application from your desktop without minimizing a single window.</p>
<p>MAINTAINABILITY</p>
<p>My number one problem with Vista has always been its overbearing security features. While great for the casual employee with a Windows Vista Certified IT department monitoring the needs of the company, the security features severely increase the time it takes the casual user to get up and running with a new computer system.  The constant prompts and administrator logins are a huge pain.  But I was very pleased with Windows 7&#8217;s new approach in this area. Many of those same security features are now only defaulted in the public domain.  If you are signed in with an Administrator Role, you can continue doing whatever you like unless you choose to increase the security on yourself.  Within just a day I was able to successfully install MS SQL Server 2005 Developer, MS Office 2007, and Exact Synergy Enterprise (using IIS 7.5) without problems.   The only software I have so far been unable to install has been the enterprise version of Trend Micro antivirus that we use here at Attivo, but Windows 7 was even helpful on that problem too. With just one click Windows redirected me to the Trend Micro website for a special Windows 7 supported version of their antivirus software.  Now think back to Windows Vista for a second. Do you remember any kind of help like that when Windows Vista went live? How about during it&#8217;s BETA? Yeah, I didn&#8217;t think so.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2009/05/windows-7-the-productive-reliable-child-of-vista-and-xp/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Multi-Step Events in Event Manager</title>
		<link>http://www.attivoconsulting.com/blog/2009/04/multi-step-events-in-event-manager/</link>
		<comments>http://www.attivoconsulting.com/blog/2009/04/multi-step-events-in-event-manager/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 22:00:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[Event Manager]]></category>
		<category><![CDATA[multi-step events]]></category>
		<category><![CDATA[Order Acknowledgement]]></category>
		<category><![CDATA[scheduled events]]></category>
		<category><![CDATA[SQL Group By]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=340</guid>
		<description><![CDATA[We all know that Event Manager is a terrific data-entry slave for businesses.
Need Table 1: column A totaled and copied into Table 2:column B?  No problem.
Need Table 3: column B tallied and copied into Table 3:column C? Cake.
Need Table 1: column A to somehow related all the way across to Table 3: column C? Might be [...]]]></description>
			<content:encoded><![CDATA[<p>We all know that Event Manager is a terrific data-entry slave for businesses.</p>
<p>Need Table 1: column A totaled and copied into Table 2:column B?  No problem.<br />
Need Table 3: column B tallied and copied into Table 3:column C? Cake.<br />
Need Table 1: column A to somehow related all the way across to Table 3: column C? Might be a little messy in SQL, but Event Manager can handle it with relative ease.</p>
<p>But sometimes our linking between tables forces Event Manager into the position of needing to separate rows that later we need to be totaled, or vice-versa.  The quick solution to this would be to populate a free-field on each individual row with that total amount; but it&#8217;s easy to see that so many &#8220;writes&#8221; are unnecessary and can cause confusion later on.  Instead, it is much more beneficial to split up the single event into 2 or more separate queries.</p>
<p>One of The Attivo Group&#8217;s customers recently needed to implement an Order Acknowledgement that would be automatically distributed when certain criteria were met.  Event Manager satisfied that initial requirement easily with a simple Order Acknowledgement Event provided with the software.  Then the customer recognized that the canned event contained Total Amounts on the order that <em>deducted </em>back-ordered items. While this logic makes sense to many businesses; this customer preferred to include the total amount of all order lines on the acknowledgement. </p>
<p>When initially contacted about this task, I explored the idea of combining the total process into the existing query, but found that I was always forced to convert linked tables from outer joins to inner joins, thereby removing my ability to display multiple rows on the acknowledgement itself.  With that idea shelved, I split my task in two.</p>
<p>First I wrote a query to total all the order lines at the line level, and store that total on the order header.</p>
<blockquote><p>SELECT sum(line.qty_ordered*line.unit_price) AS &#8220;total&#8221;, header.ord_no, header.ID<br />
FROM (line LEFT OUTER JOIN header ON line.ord_no = header.ord_no)  <br />
GROUP BY header.ord_no, header.ID</p></blockquote>
<p>Then the triggered event stored the &#8220;total&#8221; above in a free field at the header level, virtually next to the &#8220;incorrect&#8221; amount. </p>
<blockquote><p>update header set freefieldX={total} where ID={ID}</p></blockquote>
<p>Finally, I then added an additional filter to my separate Order Acknowledgement query/event that made it ONLY query orders that had a filled in freefieldX.</p>
<blockquote><p>SELECT line.id, line.ord_no, line<em>.(&#8230;),</em>header.freefieldX, header.ord_no, header<em>.(&#8230;),</em> <em>etc&#8230;<br />
</em>FROM (line LEFT OUTER JOIN header ON line.ord_no = header.ord_no) <br />
WHERE header.freefieldX &lt;&gt; 0 AND header.freefieldX is not null<em>, etc&#8230;</em></p></blockquote>
<p>Notice I did not group the resulting rows together this time, as I no longer needed them to be totaled; this was already done in the previous event!  I then let the second Order Acknowledgement run as designed, with the single exception of replacing the default TOTAL AMOUNT with the amount stored in freefieldX.</p>
<p>While this nearly completes the event&#8217;s multi-step procedure, there&#8217;s two small steps needed to be absolutely sure that query/event #1 always runs before query/event #2. </p>
<p>First, I make sure the queries/events are on the same <strong>schedule</strong> in the system.  <br />
Then I set the <strong>priority</strong> of the first event to be higher than the <strong>priority</strong> of the second event.</p>
<p>These steps prevent event #2 from waiting until the next scheduled time before processing &#8211; thus allowing event #2 to process immediately after event #1 completes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2009/04/multi-step-events-in-event-manager/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Use Free &#8220;Yes/No&#8221; Fields to trigger emails with Event Manager</title>
		<link>http://www.attivoconsulting.com/blog/2009/02/trigger/</link>
		<comments>http://www.attivoconsulting.com/blog/2009/02/trigger/#comments</comments>
		<pubDate>Wed, 11 Feb 2009 00:00:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[Email notifications]]></category>
		<category><![CDATA[event management programming]]></category>
		<category><![CDATA[Event Management Workflows]]></category>
		<category><![CDATA[Event Manager consulting]]></category>
		<category><![CDATA[Event Manager email events]]></category>
		<category><![CDATA[Exact Event Manager]]></category>
		<category><![CDATA[KnowledgeSync]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=95</guid>
		<description><![CDATA[If you are using Exact Synergy, have you ever wanted to have Exact Event manager send an email when a particular workflow task or request is completed, but only in certain situations?
Exact Event Manager triggers on certain criteria are a great way to do this, but if the keyed data isn&#8217;t exactly what you want, the email [...]]]></description>
			<content:encoded><![CDATA[<p>If you are using Exact Synergy, have you ever wanted to have Exact Event manager send an email when a particular workflow task or request is completed, but only in certain situations?</p>
<p>Exact Event Manager triggers on certain criteria are a great way to do this, but if the keyed data isn&#8217;t exactly what you want, the email may not be initiated. If you instead use a Free Yes/No Field (checkbox field) however, you can limit the trigger to two criteria: &#8220;send&#8221; or &#8220;don&#8217;t send&#8221;.  This means your trigger may look like this:</p>
<blockquote><p>WHERE  dbo.Absences.FreeBoolField_05  =  1<br />
AND dbo.Absences.Type  IN  ( 102 , 200 )</p></blockquote>
<p>The value of &#8220;1&#8243; indicates that the box is in a checked state.  The second line adds additional conditions to the trigger: in this case, the request is one of 2 specific types.</p>
<p>Once you complete the rest of the EVENT, you can have the email send off to a particular recipient when the box is checked. </p>
<p>But what if you want to trigger the same email multiple times from the same request?</p>
<p>I was able to solve this problem by adding a little SQL update script to the end of my EVENT. In addition to sending an email when the event is triggered by the above script, my event also runs the following:</p>
<blockquote><p>update Absences set FreeBoolField_05=0 where HID={HID} and FreeBoolField_05=1</p></blockquote>
<p>What does this do? Well, it simply resets the checkbox from a checked state, to an unchecked state! And the &#8220;where&#8221; clause defines the specific job that JUST triggered.  The only thing that remains to be done is to allow the job to run multiple times. This is accomplished under the Description Tab of the Event under the checkbox &#8220;Repeat notification for triggered items.&#8221;  If that box were left unchecked, the email would never send again, even if you had checked the box again.</p>
<p>That&#8217;s it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2009/02/trigger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Event-Managing the Conditional/Scheduled Report. The Right Way.</title>
		<link>http://www.attivoconsulting.com/blog/2008/12/event-managing-the-conditionalscheduled-report-the-right-way/</link>
		<comments>http://www.attivoconsulting.com/blog/2008/12/event-managing-the-conditionalscheduled-report-the-right-way/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 22:59:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Joshua Eddy]]></category>
		<category><![CDATA[Conditional Scheduled Report]]></category>
		<category><![CDATA[Crystal Reports]]></category>
		<category><![CDATA[Event Manager]]></category>
		<category><![CDATA[KnowledgeSync]]></category>
		<category><![CDATA[No Empty Reports]]></category>

		<guid isPermaLink="false">http://www.attivoconsulting.com/blog/?p=28</guid>
		<description><![CDATA[In addition to being &#8220;The Event Manager&#8221; here at Attivo, I also write many Crystal Reports, most commonly for ISOMan.  ISOMan is always asking me for a new Crystal Report displaying a different collection of Product Information for him to present to our clients&#8217; Quality and Product Managers. Sometimes we deploy these reports via some means of [...]]]></description>
			<content:encoded><![CDATA[<p>In addition to being &#8220;The Event Manager&#8221; here at <a href="http://www.attivoconsulting.com" target="_blank">Attivo</a>, I also write many Crystal Reports, most commonly for <a href="http://www.attivoconsulting.com/blog/blogger-bios/" target="_self">ISOMan</a>.  ISOMan is always asking me for a new <a href="http://www.attivoconsulting.com/software/index/add-ons/pre-written-reports.html" target="_blank">Crystal Report</a> displaying a different collection of Product Information for him to present to our clients&#8217; Quality and Product Managers. Sometimes we deploy these reports via some means of on-demand distribution, like the <a href="http://www.attivoconsulting.com/software/index/add-ons/crystal-reports.html" target="_blank">Crystal Enterprise Suite</a> or the HTML Wizard Recrystallize.  And sometimes we deploy the reports via a scheduled job in <a href="http://www.attivoconsulting.com/software/index/add-ons/exact-event-manager.html" target="_blank">Event Manager</a>, sending 1 or more daily reports each afternoon at the close of the workday. Event Manager, as you may know, is fully capable of automatically running any <a href="http://www.attivoconsulting.com/software/index/add-ons/pre-written-reports.html" target="_blank">Crystal Report</a> and attaching them as .pdf files to an email, before spinning that email off to a predefined recipient. But what if you ONLY want that report to send off when there is data to display in the report? What if the range in data for the report varies from 0 to 100&#8217;s of results? In this instance, you will need to create a conditional/scheduled report.</p>
<p>Anyone with any experience in Event Manager knows that the first step is to create a query. We need to know WHEN to run the report.  So we begin by creating the query, adding/ linking the tables, and adding the columns and filters.  However, do not spend too much time on the columns. Why? Because we won&#8217;t be needing any database columns beyond the unique ID to tell our scheduled report to run.  The columns you pick will soon be deleted once we have verified our data. <br />
<img class="size-full wp-image-29  alignnone" src="http://www.attivoconsulting.com/blog/wp-content/uploads/2008/12/save.gif" alt="save point" width="60" height="30" /></p>
<p>Once you have created your filters and your preview displays only those results you are looking for, click the SQL tab and check the box stating that you will manually edit the SQL for this query.  First, break your SQL up into it&#8217;s three main components, the &#8217;select&#8217; statement, the &#8216;from&#8217; statement, and the &#8216;where&#8217; clause. Next, delete everything in the select statement EXCEPT the unique column you selected earlier.</p>
<blockquote><p>select imitmadt_sql.id</p></blockquote>
<p>We want to COUNT the amount of times this id comes up. Remember, our REPORT which will get triggered by this query will display all the required columns. This query is to determine IF the report should be run ONLY. Our short query becomes:</p>
<blockquote><p>select count(imitmadt_sql.id)</p></blockquote>
<p>Skip the &#8216;from&#8217; section and proceed to the &#8216;where&#8217; filters you added earlier.  Assuming you created the filters correctly using the Event Manager Filters tab, you will just need to add one more &#8216;filter&#8217; to the very end of your SQL statement.</p>
<blockquote><p>where&#8230; imitmadt_sql.activity_cd=&#8217;F&#8217; AND imitmadt_sql.aud_action=&#8217;A&#8217;</p></blockquote>
<p>Becomes</p>
<blockquote><p>where&#8230; imitmadt_sql.activity_cd=&#8217;F&#8217; AND imitmadt_sql.aud_action=&#8217;A&#8217; having count (imitmadt_sql.id)&gt;0</p></blockquote>
<p>Note that there is no AND between the last &#8216;where&#8217; clause and the new &#8216;having&#8217; clause which includes the same count formula we used in the select statement earlier. This keeps this query from triggering when there are no results!</p>
<p>Click Preview and confirm that your results should look something like this where &#8216;3&#8242; is the number of hits that came up the FIRST time you Previewed this query:</p>
<blockquote><p>&#8220;Column1&#8243;<br />
3</p></blockquote>
<p><img class="alignnone size-medium wp-image-29" src="http://www.attivoconsulting.com/blog/wp-content/uploads/2008/12/save.gif" alt="" width="60" height="30" /></p>
<p>Click Save and Close and go to Events. Create a new Event that uses the query you just made and select the Reports tab. Add the report that you wanted to be conditional but didn&#8217;t want to send with zero results. Remember to set the Output Type/Style. Finally, draft your Email in the email tab, add subscribers in the subscriber tab, and schedule the report.</p>
<p>That&#8217;s it, no more reports without data! If there is no report sent, your recipients will know that there was no data generated by that report for that day.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.attivoconsulting.com/blog/2008/12/event-managing-the-conditionalscheduled-report-the-right-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
