<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Miscellaneous Ramblings on Hacking</title>
	<atom:link href="http://dichotic.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://dichotic.wordpress.com</link>
	<description>Data Warehouse, ETL, and Whatever Else</description>
	<lastBuildDate>Wed, 28 Sep 2011 16:44:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='dichotic.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Miscellaneous Ramblings on Hacking</title>
		<link>http://dichotic.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://dichotic.wordpress.com/osd.xml" title="Miscellaneous Ramblings on Hacking" />
	<atom:link rel='hub' href='http://dichotic.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Getting Started: Unica Marketing Operations&#8217; Custom Triggers</title>
		<link>http://dichotic.wordpress.com/2011/09/27/getting-started-unica-marketing-operations-custom-triggers/</link>
		<comments>http://dichotic.wordpress.com/2011/09/27/getting-started-unica-marketing-operations-custom-triggers/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 14:52:22 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://dichotic.wordpress.com/2011/09/27/getting-started-unica-marketing-operations-custom-triggers/</guid>
		<description><![CDATA[You have the SDK. You have the JavaDocs. There are samples, but how does it all glue together? This post is all about writing your first UMO custom trigger. These triggers help to automate tasks or enforce business rules within UMO. What you Need? A few needed items: Unica Marketing Operations (UMO) environment Eclipse IDE [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=152&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>You have the SDK. You have the JavaDocs. There are samples, but how does it all glue together? This post is all about writing your first UMO custom trigger. These triggers help to automate tasks or enforce business rules within UMO.</p>
<h2>What you Need?</h2>
<p>A few needed items:</p>
<ul>
<li>Unica Marketing Operations (UMO) environment </li>
<li>Eclipse IDE for EE </li>
<li>Associated JARs: affinium_plan.jar, log4j.jar </li>
</ul>
<p>The JARs are best grabbed from the UMO environment.</p>
<h2>Start Eclipse &amp; Code</h2>
<p>Startup Eclipse and create a new <em>Application Client Project.</em> This project template option is available under the Java EE folder.</p>
<p><a href="http://dichotic.files.wordpress.com/2011/09/capture2.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;" title="Capture2" border="0" alt="Capture2" src="http://dichotic.files.wordpress.com/2011/09/capture2_thumb.png?w=244&#038;h=199" width="244" height="199" /></a></p>
<p>Set the JDK to the same level as the web application server that UMO is deployed on. I selected 5.0 for JDK 1.5.</p>
<p>Here I define my AutoReviewerAssignment class. All triggers are required to implement the IProcedure interface.</p>
<div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;line-height:12pt;background-color:#f4f4f4;width:97.5%;font-family:&#039;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;margin:20px 0 10px;padding:4px;" id="codeSnippetWrapper">
<div style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;padding:0;" id="codeSnippet">
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum1">   1:</span>  </pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum2">   2:</span> <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> AutoReviewerAssignment <span style="color:#0000ff;">implements</span> IProcedure {</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum3">   3:</span>  </pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum4">   4:</span>     <span style="color:#008000;">// The Name and Description of this Procedure.</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum5">   5:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> String name           = <span style="color:#006080;">&quot;AutoReviewerAssignment&quot;</span>;</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum6">   6:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> String desc           = <span style="color:#006080;">&quot;Provides automatic assignment of reviewers based on project member assignment&quot;</span>;</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum7">   7:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> PluginVersion pv        = <span style="color:#0000ff;">new</span> PluginVersion(1, 0, 0); </pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum8">   8:</span>       </pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum9">   9:</span>     <span style="color:#008000;">// Constants</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum10">  10:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> String DEBUG          = <span style="color:#006080;">&quot;debug&quot;</span>;</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum11">  11:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> <span style="color:#0000ff;">int</span>    STATUS_SUCCESS = 0;</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum12">  12:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> <span style="color:#0000ff;">int</span>    STATUS_FAILED  = -1;</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum13">  13:</span>     </pre>
<p><!--CRLF--></div>
</div>
<p>Unica products use Log4J for all system logging. There are a couple of products in the Unica suite that don’t, but it’s a safe bet that log4j is being used. For UMO, it is. I’m getting the logger and setting it to a static variable. This way I can add my own class’ log entries to the main log file.</p>
<div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;line-height:12pt;background-color:#f4f4f4;width:97.5%;font-family:&#039;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;margin:20px 0 10px;padding:4px;" id="codeSnippetWrapper">
<div style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;padding:0;" id="codeSnippet">
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum1">   1:</span> <span style="color:#008000;">//added - latch on to the log4j logger</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum2">   2:</span>     <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">final</span> Logger _LOG = Logger.getLogger(AutoReviewerAssignment.<span style="color:#0000ff;">class</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum3">   3:</span>     </pre>
<p><!--CRLF--></div>
</div>
<p>The interface defines some standard methods, the first of importance is the initialize() method. This is your time to grab some site specific parameters. In some cases, I’ve grabbed from a standard Java .properties file. But Unica also provides the ability to define these parameters in the actual procedure definition file&#160; where the procedure is declared (more on this later).</p>
<div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;line-height:12pt;background-color:#f4f4f4;width:97.5%;font-family:&#039;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;margin:20px 0 10px;padding:4px;" id="codeSnippetWrapper">
<div style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;padding:0;" id="codeSnippet">
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum1">   1:</span> <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">void</span> initialize(Map initParams) <span style="color:#0000ff;">throws</span> PluginInitializationException {</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum2">   2:</span>         <span style="color:#008000;">// TODO Auto-generated method stub</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum3">   3:</span>         _LOG.info(<span style="color:#006080;">&quot;Initializing class trigger procedure..&quot;</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum4">   4:</span>         </pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum5">   5:</span>         <span style="color:#008000;">//only expecting one init parameter</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum6">   6:</span>         <span style="color:#0000ff;">if</span>(initParams.containsKey(DEBUG))</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum7">   7:</span>         {</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum8">   8:</span>             <span style="color:#0000ff;">try</span>{</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum9">   9:</span>                 isDebug = ((Boolean) initParams.get(DEBUG)).booleanValue();</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum10">  10:</span>                 _LOG.debug(<span style="color:#006080;">&quot;Debug mode is enabled: &quot;</span> + String.valueOf(isDebug));</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum11">  11:</span>             } <span style="color:#0000ff;">catch</span>(Exception e)</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum12">  12:</span>             {</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum13">  13:</span>                 _LOG.fatal(<span style="color:#006080;">&quot;Exception in initialization. &quot;</span>+ e.getMessage());</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum14">  14:</span>                 <span style="color:#0000ff;">throw</span> <span style="color:#0000ff;">new</span> ProcedureInitializationException(<span style="color:#006080;">&quot;Problem using init parameter: DEBUG&quot;</span>);</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum15">  15:</span>             }</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum16">  16:</span>         }</pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum17">  17:</span>     }</pre>
<p><!--CRLF--></div>
</div>
<p>Finally, there’s the execute method. This is where the action happens and is unique to your own implementation goals. </p>
<h2>Configuration Deployment</h2>
<p>Once compiled, it’s time to migrate the compiled class file for your procedure. Here’s the steps:</p>
<ul>
<li>Review the [PLAN_HOME]\conf\plan_config.xml to ascertain the environment’s configuration. We’re looking for the following UAPInitParams: integrationProcedureDefinitionPath and integrationProcedureClasspathURL</li>
<li>integrationProcedureDefinitionPath points to a procedure_plugins.xml file. This file defines the class, including the initialization parameters. Here’s an example:</li>
</ul>
<div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;line-height:12pt;background-color:#f4f4f4;width:97.5%;font-family:&#039;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;margin:20px 0 10px;padding:4px;" id="codeSnippetWrapper">
<div style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;padding:0;" id="codeSnippet">
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum1">   1:</span> <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">procedure</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum2">   2:</span>     <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">key</span><span style="color:#0000ff;">&gt;</span>POCtest<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">key</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum3">   3:</span>     <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">class-name</span><span style="color:#0000ff;">&gt;</span>com.amberleaf.procedure.POCtest<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">class-name</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum4">   4:</span>     <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">init-parameters</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum5">   5:</span>     <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">init-parameter</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum6">   6:</span>       <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">param-name</span><span style="color:#0000ff;">&gt;</span>debug<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">param-name</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum7">   7:</span>       <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">param-type</span><span style="color:#0000ff;">&gt;</span>java.lang.Boolean<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">param-type</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum8">   8:</span>             <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">param-value</span><span style="color:#0000ff;">&gt;</span>true<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">param-value</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum9">   9:</span>     <span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">init-parameter</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:#f4f4f4;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum10">  10:</span>     <span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">init-parameters</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></p>
<pre style="text-align:left;line-height:12pt;background-color:white;width:100%;font-family:&#039;direction:ltr;color:black;font-size:8pt;overflow:visible;border-style:none;margin:0;padding:0;"><span style="color:#606060;" id="lnum11">  11:</span> <span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">procedure</span><span style="color:#0000ff;">&gt;</span></pre>
<p><!--CRLF--></div>
</div>
<ul>
<li>integrationProcedureClasspathURL points to the directory where the resulting class file should be placed</li>
<li>Finally, bounce the web application server so that the new class can be cached</li>
</ul>
<p>Now that the environment is setup, it’s time to define the actual trigger. This defines when the trigger should actually fire within Unica Marketing Operations. To do this, we go to: <em>Settings &gt; Marketing Operations Settings &gt; Trigger Bindings.</em></p>
<ul>
<li>Click ‘Add New Trigger Binding’</li>
<li>Define the trigger with the appropriate attributes:</li>
</ul>
<p><a href="http://dichotic.files.wordpress.com/2011/09/capture.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;" title="Capture" border="0" alt="Capture" src="http://dichotic.files.wordpress.com/2011/09/capture_thumb.png?w=244&#038;h=79" width="244" height="79" /></a></p>
<p>For example, my trigger would be limited to the ‘Project’ marketing object. The trigger would be limited to the context of ‘People’. Put another way, the trigger would be limited to the ‘People’ tab under the ‘Project’ object. I then further limit the trigger to only execute on the ‘Updated’ event. In summary, the trigger will fire when the ‘People’ tab of a ‘Project’ is ‘Updated’.</p>
<p>And there you have it. You’ve created your first trigger. A special note here. Since we latched on to the log4j logger of Unica’s, we will see our logging entries in the Unica Marketing Operation’s system log. Just be sure to set your log4j logging level appropriately.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/152/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=152&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2011/09/27/getting-started-unica-marketing-operations-custom-triggers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2011/09/capture2_thumb.png" medium="image">
			<media:title type="html">Capture2</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2011/09/capture_thumb.png" medium="image">
			<media:title type="html">Capture</media:title>
		</media:content>
	</item>
		<item>
		<title>Best Summary for String.Format Ever</title>
		<link>http://dichotic.wordpress.com/2011/03/03/best-summary-for-string-format-ever/</link>
		<comments>http://dichotic.wordpress.com/2011/03/03/best-summary-for-string-format-ever/#comments</comments>
		<pubDate>Thu, 03 Mar 2011 03:20:46 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=140</guid>
		<description><![CDATA[Perfect. http://www.csharp-examples.net/string-format-datetime/<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=140&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Perfect.</p>
<p><a href="http://www.csharp-examples.net/string-format-datetime/">http://www.csharp-examples.net/string-format-datetime/</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/140/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=140&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2011/03/03/best-summary-for-string-format-ever/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
		<item>
		<title>Unica Monitoring SQL</title>
		<link>http://dichotic.wordpress.com/2010/09/03/unica-monitoring-sql/</link>
		<comments>http://dichotic.wordpress.com/2010/09/03/unica-monitoring-sql/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 23:43:15 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[Unica]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=130</guid>
		<description><![CDATA[Doing some Unica troubleshooting today and wrote this little SQL gem. It&#8217;s a basic query that does a fine job of retrieving run log errors for flowchart runs. I figure it could come in handy as an Administrator asking the question: What are my most common errors and where should I focus my troubleshooting? The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=130&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Doing some Unica troubleshooting today and wrote this little SQL gem. It&#8217;s a basic query that does a fine job of retrieving run log errors for flowchart runs. I figure it could come in handy as an Administrator asking the question:</p>
<blockquote><p>What are my most common errors and where should I focus my troubleshooting?</p></blockquote>
<p>The SQL:</p>
<div id="scid:20100903" class="wlWriterEditableSmartContent" style="display:inline;float:none;margin:0;padding:0;"><pre class="brush: csharp; pad-line-numbers: true;">
select to_char(r.runstarttime,'yyyy-mm-dd') runday
, c.name campaign, f.name flowchart
, substr(rr.resultxml,instr(rr.resultxml,'&lt;Process&gt;')+9, instr(rr.resultxml,'&lt;RunStatusCode&gt;')-(instr(rr.resultxml,'&lt;Process&gt;')+9)) as process_name
, substr(rr.resultxml,instr(rr.resultxml,'&lt;ErrorMessage&gt;')+14, instr(rr.resultxml,'&lt;/ErrorMessage&gt;')-(instr(rr.resultxml,'&lt;ErrorMessage&gt;')+14)) as result_error
, count(*)
from uacsys.ua_ccrunlog r
join uacsys.ua_runresult rr on r.runid=rr.runid
join uacsys.ua_flowchart f on r.flowchartid=f.flowchartid
join uacsys.ua_campaign c on f.campaignid=c.campaignid
where r.runstatus = 'Run Failed'
and r.runstarttime &gt;to_date('2010-08-01','yyyy-mm-dd')
and instr(rr.resultxml,'&lt;ErrorMessage&gt;') &amp;gt; 0
group by to_char(r.runstarttime,'yyyy-mm-dd')
, c.name, f.name
, substr(rr.resultxml,instr(rr.resultxml,'&lt;Process&gt;')+9, instr(rr.resultxml,'&lt;RunStatusCode&gt;')-(instr(rr.resultxml,'&lt;Process&gt;')+9))
, substr(rr.resultxml,instr(rr.resultxml,'&lt;ErrorMessage&gt;')+14, instr(rr.resultxml,'&lt;/ErrorMessage&gt;')-(instr(rr.resultxml,'&lt;ErrorMessage&gt;')+14))
order by runday desc
</pre></p>
</div>
<p> </p>
<p>This in turn creates some nice little results for analysis:</p>
<p><a href="http://dichotic.files.wordpress.com/2010/09/capture.png"><img class="alignnone size-thumbnail wp-image-131" title="Capture" src="http://dichotic.files.wordpress.com/2010/09/capture.png?w=150&#038;h=56" alt="" width="150" height="56" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/130/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=130&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/09/03/unica-monitoring-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/09/capture.png?w=150" medium="image">
			<media:title type="html">Capture</media:title>
		</media:content>
	</item>
		<item>
		<title>Unica Interact via SOAP &#8211; How To</title>
		<link>http://dichotic.wordpress.com/2010/07/30/unica-interact-via-soap-how-to/</link>
		<comments>http://dichotic.wordpress.com/2010/07/30/unica-interact-via-soap-how-to/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 21:50:17 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Unica]]></category>

		<guid isPermaLink="false">https://dichotic.wordpress.com/?p=113</guid>
		<description><![CDATA[Background Unica Interact extends Unica’s Campaign Suite for real-time offer management. If you want a full background of what it can offer, I’d suggest a read from Unica’s site. Here I’ll be discussing how to get started for some real basic integration. First, what you’ll need: Unica’s v7 demo image or access to a Unica [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=113&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Background</h2>
<p>Unica Interact extends Unica’s Campaign Suite for real-time offer management. If you want a full background of what it can offer, I’d suggest a read from Unica’s site. Here I’ll be discussing how to get started for some real basic integration. First, what you’ll need:</p>
<ul>
<li>Unica’s v7 demo image or access to a Unica Interact implementation</li>
<li>Visual Studio 2008 (C# Express should work)</li>
</ul>
<h2>Interact Setup</h2>
<p>When using the VMWare demo image provided, most of this is setup as part of the image. As an overview, however, I’ll review the following steps:</p>
<ol>
<li>Interactive Channel</li>
<li>Session</li>
<li>Assigned Campaign Offers and Ratings</li>
</ol>
<p><strong>Interactive Channel – Insurance</strong></p>
<p>I’ll be using the already defined interactive channel <em>Insurance</em>. This is part of the Unica v7 demo image available to their partners. This interactive channel represents a website for an Insurance company and is defined with two zones, each with a single interaction point. One for home page landings, which would be the assumed landing page a user would see. Second, a signup page where a user would sign in based on existing credentials and/or register for first time use.</p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/image.png"><img style="display:inline;border-width:0;" title="image" src="http://dichotic.files.wordpress.com/2010/07/image_thumb.png?w=244&#038;h=106" border="0" alt="image" width="244" height="106" /></a></p>
<p><strong>Interactive Session</strong></p>
<p>From within the Interactive Channel summary tab, click on the related session <em>Insurance</em>. This will show the interactive session and its associated flowchart into focus for review.</p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/image1.png"><img style="display:inline;border-width:0;" title="image" src="http://dichotic.files.wordpress.com/2010/07/image_thumb1.png?w=244&#038;h=178" border="0" alt="image" width="244" height="178" /></a></p>
<p>Reviewing the associated flowchart, we see a simple segmentation of the incoming individual based on their related FICO score. Examining the process box <em>FICO Score</em>, the segmentation is as follows:</p>
<table border="0" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="200" valign="top">Low FICO Score</td>
<td width="200" valign="top">Score &lt; 200</td>
</tr>
<tr>
<td width="200" valign="top">Med FICO Score</td>
<td width="200" valign="top">200 &lt; Score &lt; 400</td>
</tr>
<tr>
<td width="200" valign="top">High FICO Score</td>
<td width="200" valign="top">Score &gt; 400</td>
</tr>
</tbody>
</table>
<p><a href="http://dichotic.files.wordpress.com/2010/07/image2.png"><img style="display:inline;border-width:0;" title="image" src="http://dichotic.files.wordpress.com/2010/07/image_thumb2.png?w=209&#038;h=244" border="0" alt="image" width="209" height="244" /></a></p>
<p>Lastly, examining the interaction process box <em>Indiv_Id Profile</em> the expected meta data for a session is shown along with the expected Audience. This will come into play later when the API initiates an interact session. For now, note that the audience level is <em>Individual</em> and the associated key is <em>Indiv_Id.</em> Also note the <em>Score </em>attribute in the record’s metadata used above for segmentation purposes.</p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/image3.png"><img style="display:inline;border-width:0;" title="image" src="http://dichotic.files.wordpress.com/2010/07/image_thumb3.png?w=244&#038;h=186" border="0" alt="image" width="244" height="186" /></a></p>
<p><strong>Interactive Campaign</strong></p>
<p>The last piece of the Interact puzzle is the associated interact campaign. Here is where the associated offers are defined by segment. I won’t go into the specifics as there is a complete User’s Guide for that, but here is where we can rank our offers. Note that some of the offers listed have expired, which is why they will not be shown later during the coding exercise. Also note that we have some offers tied directly to a given zone and that the offers have an associated ranking for presentation purposes.</p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/image4.png"><img style="display:inline;border-width:0;" title="image" src="http://dichotic.files.wordpress.com/2010/07/image_thumb4.png?w=244&#038;h=126" border="0" alt="image" width="244" height="126" /></a></p>
<h2>Visual Studio Setup</h2>
<p>With the review of the interact setup out of the way, it’s time prepare the VS environment for some coding. I’m using C# for this exercise which will limit me to using SOAP. Unica warns that the best performance is achieved using their interact_client.jar, but 1) I’m playing and 2) I’m not concerned with performance right now and 3) C# and .jar wouldn’t work to well and 4) I like C# more that I like java.</p>
<p><strong>Import the WSDL</strong></p>
<p>The WSDL for Interact can be found under:</p>
<p><em>&lt;Affinium_Home&gt;\Interact\conf\InteractService.wsdl</em></p>
<p>Be sure to use the file from your installation as a version incompatibility could exist!</p>
<p>Once you have the WSDL downloaded, you can build a DLL out of it by doing the following steps:</p>
<ol>
<li>As administrator, open a Visual Studio command prompt. This is different from just a normal DOS prompt as it has environment settings. The link is in the start menu under the Visual Studio 2008 folder.</li>
<li>Using the wsdl.exe utility, generate a C# Class<br />
<code>wsdl /l:CS /protocol:SOAP \InteractService.wsdl</code></li>
<li>Compile the proxy class as a DLL<br />
<code>csc /t:library /r:System.Web.Services.dll /r:System.Xml.dll InteractService.cs</code></li>
</ol>
<h2>Visual Studio C# Console Program</h2>
<p><strong>Add a InteractService.DLL Reference</strong></p>
<p>Create a new C# Console program. Once the project structure is created, we’ll reference the DLL that was compiled from above. Once does this by Right-Clicking on the Reference folder in the Solution Explorer window and opting for <em>Add Reference..</em></p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/image5.png"><img style="display:inline;border-width:0;" title="image" src="http://dichotic.files.wordpress.com/2010/07/image_thumb5.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p><strong>Build a Helper Class</strong></p>
<p>I created a helper class in my code. The class is basic as potatoes, but it allows for the quick definition of NameValuePairs. These name-value pairs are important as they define the session’s record structure. Recall I mentioned that earlier in reviewing the session’s metadata.</p>
<div id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:be7fb07e-4c9f-4ead-8c41-37e844f2f55c" class="wlWriterEditableSmartContent" style="display:inline;float:none;margin:0;padding:0;"><pre class="brush: csharp; pad-line-numbers: true;">
    class InteractHelper
    {
        public NameValuePairImpl defineParm(string parmName, int valNumeric)
        {
            NameValuePairImpl parm = new NameValuePairImpl();
            parm.name = parmName;
            parm.valueAsNumeric = valNumeric;
            parm.valueDataType = &quot;numeric&quot;;
            return parm;
        }
        public NameValuePairImpl defineParm(string parmName, string valString)
        {
            NameValuePairImpl parm = new NameValuePairImpl();
            parm.name = parmName;
            parm.valueAsString = valString;
            parm.valueDataType = &quot;string&quot;;
            return parm;
        }
        public NameValuePairImpl defineParm(string parmName, DateTime valDate)
        {
            NameValuePairImpl parm = new NameValuePairImpl();
            parm.name = parmName;
            parm.valueAsDate = valDate;
            parm.valueDataType = &quot;datetime&quot;;
            return parm;
        }
    }
</pre></p>
</div>
<p>Note in the code that there are three defined valueDataTypes for the NameValue pairs. These are:</p>
<ol>
<li>numeric</li>
<li>string</li>
<li>datetime</li>
</ol>
<p><strong>Build Console Main()</strong></p>
<p>Keep in mind that this is just a glorified HelloWorld program with the intention to get you started. That being said, the bulk of the code is just thrown into the <em>Main</em> method in the Console <em>Program’s </em>class. Computer Science geeks can check their attitude at the door.</p>
<div id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:24a57476-9558-44ad-9378-95b93abc6c47" class="wlWriterEditableSmartContent" style="display:inline;float:none;margin:0;padding:0;"><pre class="brush: csharp;">
class Program
    {
        static void Main(string[] args)
        {

            InteractService _svc = new InteractService();
            //define the URI for the interact service listening for requests
            _svc.Url = &quot;http://localhost:7001/interact/services/InteractService&quot;;

            //this will validate that we connect successfully upon receiving a version
            //number from the service
            getVersionResponse rVersion = _svc.getVersion();

            //setup the name-value pair(s) specifying the audience
            NameValuePairImpl IndivId = new NameValuePairImpl();
            IndivId.name = &quot;Indiv_Id&quot;;
            IndivId.valueAsNumeric = 948;
            IndivId.valueDataType = &quot;numeric&quot;;
            NameValuePairImpl[] initAudience = { IndivId };

            //setup the expected record structure for the session
            //these values don't have to have values, but the structure must
            //be defined!
            List&lt;NameValuePairImpl&gt; parmList = new List&lt;NameValuePairImpl&gt;();
            InteractHelper hlpr = new InteractHelper();
            parmList.Add(hlpr.defineParm(&quot;Score&quot;, 250));
            parmList.Add(hlpr.defineParm(&quot;HHold_Id&quot;, 372));
            parmList.Add(hlpr.defineParm(&quot;Head_Of_Hhold&quot;, &quot;1&quot;));
            parmList.Add(hlpr.defineParm(&quot;Score_Date&quot;, DateTime.Now));
            parmList.Add(hlpr.defineParm(&quot;Score&quot;, 300));
            parmList.Add(hlpr.defineParm(&quot;Age&quot;,30));
            parmList.Add(hlpr.defineParm(&quot;Income&quot;,35000));
            parmList.Add(hlpr.defineParm(&quot;Gender&quot;,&quot;M&quot;));
            parmList.Add(hlpr.defineParm(&quot;Primary_Language&quot;,&quot;English&quot;));
            parmList.Add(hlpr.defineParm(&quot;Marital_Status&quot;, &quot;Single&quot;));
            NameValuePairImpl[] sessionParms = parmList.ToArray();

            //start the interact session
            Response r = _svc.startSession(&quot;123456&quot;, false, true, &quot;Insurance&quot;, initAudience, &quot;Individual&quot;,
                sessionParms);

            //get available offers for the session
            Response rOffersAvail = _svc.getOffers(r.sessionID, &quot;OnLineInsuranceHomePage&quot;, 5);

            //end the program
            Console.WriteLine(&quot;Done&quot;);
        }
    }
</pre></p>
</div>
<p><strong> </strong></p>
<h2>Summary</h2>
<p>There are a few things that are important to review. These are represented in the images below.</p>
<p>First, the record structure defined within the Interact session should be in sync with the name-value pair array submitted when initiating an Interact session. This is shown in the image below while using my helper class for defining the Name-Value pair array.</p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/unicainteract-recordlayout.jpg"><img class="alignnone size-thumbnail wp-image-128" title="UnicaInteract-recordlayout" src="http://dichotic.files.wordpress.com/2010/07/unicainteract-recordlayout.jpg?w=150&#038;h=45" alt="" width="150" height="45" /></a></p>
<p>Second, the offers received as part of the session match against the offer rules defined as part of the campaign for the given interaction zone. All offer rules from other campaigns are applied, such as expiration dates rendering an offer invalid. In the example below, I’m showing the program running in debug mode while watching variable assignment. Note that two offers are returned when making the getOffers() request for an individual with a FICO of 300 (aka. segment=MedFICO). The offers suggested are both active across all zones. The other two defined across the zones have both reached their expiration date. As a result, they are not returned.</p>
<p><a href="http://dichotic.files.wordpress.com/2010/07/unicainteract-debugmode.jpg"><img class="alignnone size-thumbnail wp-image-125" title="UnicaInteract-debugmode" src="http://dichotic.files.wordpress.com/2010/07/unicainteract-debugmode.jpg?w=150&#038;h=73" alt="" width="150" height="73" /></a></p>
<p>And that is it. If you haven’t fallen asleep by now, congrats you made it. Hope it helps as you learn Interact. There are some tricky bits that make the getting started process bumpy. This post with the code samples should help you get going faster.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/113/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=113&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/07/30/unica-interact-via-soap-how-to/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/image_thumb4.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/image_thumb5.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/unicainteract-recordlayout.jpg?w=150" medium="image">
			<media:title type="html">UnicaInteract-recordlayout</media:title>
		</media:content>

		<media:content url="http://dichotic.files.wordpress.com/2010/07/unicainteract-debugmode.jpg?w=150" medium="image">
			<media:title type="html">UnicaInteract-debugmode</media:title>
		</media:content>
	</item>
		<item>
		<title>Pimp your Eclipse!</title>
		<link>http://dichotic.wordpress.com/2010/07/09/pimp-your-eclipse/</link>
		<comments>http://dichotic.wordpress.com/2010/07/09/pimp-your-eclipse/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 18:30:27 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=101</guid>
		<description><![CDATA[Props to the dark theme creator for a better looking Eclipse. http://blog.prabir.me/post/Dark-Eclipse-Theme.aspx<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=101&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Props to the dark theme creator for a better looking Eclipse.</p>
<p>http://blog.prabir.me/post/Dark-Eclipse-Theme.aspx</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/101/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=101&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/07/09/pimp-your-eclipse/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
		<item>
		<title>RightNow .NET API Performance = Not So Good</title>
		<link>http://dichotic.wordpress.com/2010/06/08/rightnow-net-api-performance-crappy/</link>
		<comments>http://dichotic.wordpress.com/2010/06/08/rightnow-net-api-performance-crappy/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 01:59:08 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[CRM]]></category>
		<category><![CDATA[RightNow]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=97</guid>
		<description><![CDATA[Just a little update to my previous posting on RightNow&#8216;s .NET API performance. I&#8217;m not a fan of Salesforce.com, but this API has me CRYING for their Apex Data Loader. Apex was FAST!!! It was extremely fast for selecting records. But it was even fast inserting and updating records. That was an awesome tool &#8212; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=97&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just a little update to my previous posting on <a href="http://www.rightnow.com/">RightNow</a>&#8216;s .NET API performance.</p>
<p>I&#8217;m not a fan of <a href="http://Salesforce.com">Salesforce.com</a>, but this API has me CRYING for their <a href="http://sourceforge.net/projects/sforce-app-dl/">Apex Data Loader</a>. Apex was <em>FAST</em>!!! It was extremely fast for selecting records. But it was even fast inserting and updating records. That was an awesome tool &#8212; dump the records out, massage them in Access using SQL, pump the records back in, go home an eat lunch. Done in 3hrs.</p>
<p>So here are the latest metrics:</p>
<h3>RightNow .Net API</h3>
<p>Extract: 1.5MM records in 1hr 4min</p>
<p>Update: 1.5MM records 3days+</p>
<p>Some of you may ask what is the update and how involved is it? I believe it to be a fairly simple task, myself. I&#8217;m updating each contact record and setting a custom field&#8217;s value to an externally assigned primary key. The one excuse I will allow RightNow is that there are 250 or so custom fields for the contact. I would expect some performance degradation, but a data conversion of 1.5mm records taking longer than 3days is just stupid.</p>
<p>I love coding in .Net, but man is this worthless!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/97/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=97&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/06/08/rightnow-net-api-performance-crappy/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
		<item>
		<title>RightNow Analytics &#8212; The SQL Way</title>
		<link>http://dichotic.wordpress.com/2010/06/08/rightnow-analytics-the-sql-way/</link>
		<comments>http://dichotic.wordpress.com/2010/06/08/rightnow-analytics-the-sql-way/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 01:47:42 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[CRM]]></category>
		<category><![CDATA[RightNow]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=91</guid>
		<description><![CDATA[I always lose sight of this when I need it. That and RightNow&#8217;s website hides this from anyone&#8217;s view (side rant: really, how does one search in Google for RightNow the product?). Gartner says RightNow is #1 for customer support KB search, but I can never find shit using their support KB search. (side rant: [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=91&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I always lose sight of this when I need it. That and RightNow&#8217;s website hides this from anyone&#8217;s view (side rant: really, how does one search in Google for RightNow the product?). Gartner says RightNow is #1 for customer support KB search, but I can never find shit using their support KB search. (side rant: seriously how much was Gartner paid?)</p>
<h2>Create a New Report via SQL</h2>
<p>To do this, we&#8217;re going to be using a custom script.</p>
<ol>
<li>Define a filter that will always return zero rows.<br />
<code>filter: 1=0</code></li>
<li>Select Level &gt; Custom Scripts</li>
<li>Select the &#8216;Finish tab of custom scripts</li>
<li>Paste in the following while modifying the SQL to your liking:<code>$temp=array();<br />
$row_idx = 0;<br />
//Run the desired query<br />
$query=sql_prepare<br />
(sprintf("<br />
SELECT label,ac_id, header_code, init_code, process_code, exit_code<br />
FROM ac_scripts a,  labels l<br />
where a.ac_id = l.label_id<br />
and tbl=121<br />
and (header_code is not NULL<br />
or init_code is not NULL<br />
or process_code is not NULL<br />
or exit_code is not NULL)<br />
"));<br />
//Each column in the SELECT clause will need to be returned as the appropriate data-type (INT for integer, NTS for string, DTTM for datetime)<br />
sql_bind_col($query,1,BIND_NTS,80);<br />
sql_bind_col($query,2,BIND_INT,0);<br />
sql_bind_col($query,3,BIND_NTS,1000);<br />
sql_bind_col($query,4,BIND_NTS,1000);<br />
sql_bind_col($query,5,BIND_NTS,1000);<br />
sql_bind_col($query,6,BIND_NTS,1000);<br />
//For each record returned in the above query, return it as one row of output, each field in its respective column<br />
while ($temp = sql_fetch($query))<br />
{<br />
$exit_obj[$row_idx][0]-&gt;val = $temp[0];<br />
$exit_obj[$row_idx][1]-&gt;val = $temp[1];<br />
$exit_obj[$row_idx][2]-&gt;val = $temp[2];<br />
$exit_obj[$row_idx][3]-&gt;val = $temp[3];<br />
$exit_obj[$row_idx][4]-&gt;val = $temp[4];<br />
$exit_obj[$row_idx][5]-&gt;val = $temp[5];<br />
++$row_idx;<br />
}<br />
//Clear your buffer<br />
sql_free($query);<br />
</code></li>
<li>$exit_obj is the array returned, whose values are subsequently displayed in the report</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/91/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=91&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/06/08/rightnow-analytics-the-sql-way/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
		<item>
		<title>Outlook Barfing on GMAIL via IMAP</title>
		<link>http://dichotic.wordpress.com/2010/05/26/outlook-barfing-on-gmail-via-imap/</link>
		<comments>http://dichotic.wordpress.com/2010/05/26/outlook-barfing-on-gmail-via-imap/#comments</comments>
		<pubDate>Wed, 26 May 2010 17:56:49 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=84</guid>
		<description><![CDATA[No idea what happened, but found that Outlook wouldn&#8217;t send anymore messages via GMAIL IMAP. I found this little morsel and viola&#8230; problem fixed. http://theofficecubicle.com/2008/02/01/outlook-2003-red-x-where-embedded-image-should-be-in-email/ Exit out of Outlook 2003 on the machine with the issue Open the registry (Start-&#62;Run-&#62;type cmd-&#62;click Ok) Navigate and open the following registry key HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Security\OutlookSecureTempFolder Within the key…it should say something [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=84&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>No idea what happened, but found that Outlook wouldn&#8217;t send anymore messages via GMAIL IMAP. I found this little morsel and viola&#8230; problem fixed.</p>
<p>http://theofficecubicle.com/2008/02/01/outlook-2003-red-x-where-embedded-image-should-be-in-email/</p>
<blockquote>
<ol>
<li>Exit out of Outlook 2003 on the machine with the issue</li>
<li>Open the registry (<strong>Start-&gt;Run-&gt;</strong>type <strong>cmd-&gt;</strong>click  <strong>Ok</strong>)</li>
<li>Navigate and open the following registry key <strong>HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\<span class="searchword">Outlook</span>\Security\<span class="searchword">Outlook</span>SecureTempFolder</strong></li>
<li>Within the key…it should say something like  <strong>%USERPROFILE%\Local  Settings\Temporary Internet Files\OLK3D\</strong></li>
<li>Highlight and delete <strong>%USERPROFILE%\Local Settings\Temporary  Internet Files\OLK3D\</strong></li>
<li>Close out of the registry and open Outlook 2003!</li>
</ol>
</blockquote>
<div id="_mcePaste" style="position:absolute;left:-10000px;top:12px;width:1px;height:1px;overflow:hidden;">
<ol>
<li>Exit out of Outlook 2003 on the machine with the issue</li>
<li>Open the registry (<strong>Start-&gt;Run-&gt;</strong>type <strong>cmd-&gt;</strong>click  <strong>Ok</strong>)</li>
<li>Navigate and open the following registry key <strong>HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\<span class="searchword">Outlook</span>\Security\<span class="searchword">Outlook</span>SecureTempFolder</strong></li>
<li>Within the key…it should say something like  <strong>%USERPROFILE%\Local  Settings\Temporary Internet Files\OLK3D\</strong></li>
<li>Highlight and delete <strong>%USERPROFILE%\Local Settings\Temporary  Internet Files\OLK3D\</strong></li>
<li>Close out of the registry and open Outlook 2003!</li>
</ol>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/84/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=84&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/05/26/outlook-barfing-on-gmail-via-imap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
		<item>
		<title>Fun with c# and the RightNow API</title>
		<link>http://dichotic.wordpress.com/2010/02/24/fun-with-c-and-the-rightnow-api/</link>
		<comments>http://dichotic.wordpress.com/2010/02/24/fun-with-c-and-the-rightnow-api/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 00:29:25 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[RightNow]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/2010/02/24/fun-with-c-and-the-rightnow-api/</guid>
		<description><![CDATA[I wanted to dump out data from RightNow’s Contact tables. The intention was to load a SQL Server table that would then be used in later ETL for data quality rules. The code does the magic I want. Execute a RightNow report for a range of contacts.c_id values Store the results in a SQL Server [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=80&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I wanted to dump out data from RightNow’s Contact tables. The intention was to load a SQL Server table that would then be used in later ETL for data quality rules.</p>
<p>The code does the magic I want.</p>
<ul>
<li>Execute a RightNow report for a range of contacts.c_id values</li>
<li>Store the results in a SQL Server table on my local machine</li>
</ul>
<p>The only problem is performance. SFDC can dump out 2-3million rows in an hour. My code was far from efficient as it was built for a quick-exercise. <span style="text-decoration:line-through;">The code for 1.5million rows would finish in about 14hours. YUCK!</span> <em>Update: I was able to score 760k records in 1.5hrs &#8230; much better. </em></p>
<p>Here’s my code:</p>
<div id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:c501c276-d449-4f18-8478-a102eb130277" class="wlWriterEditableSmartContent" style="display:inline;float:none;margin:0;padding:0;">
<pre style="background-color:#ebebeb;overflow:none;font-family:Microsoft Sans Serif;font-size:8.25px;"><span style="color:#0000ff;">using</span><span style="color:#000000;"> System;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> System.Collections.Generic;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> System.Linq;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> System.Text;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> obj.api.rightnow.com;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> fault.api.rightnow.com;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> api.rightnow.com;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> System.Data;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> System.Data.Sql;
</span><span style="color:#0000ff;">using</span><span style="color:#000000;"> System.Data.SqlClient;

</span><span style="color:#0000ff;">namespace</span><span style="color:#000000;"> Becker_DataExtract
{
    </span><span style="color:#0000ff;">class</span><span style="color:#000000;"> Program
    {
        </span><span style="color:#0000ff;">static</span><span style="color:#000000;"> </span><span style="color:#0000ff;">void</span><span style="color:#000000;"> Main(</span><span style="color:#0000ff;">string</span><span style="color:#000000;">[] args)
        {

            RNOWObjectFactory ofactory </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> RNOWObjectFactory(Properties.Resources.RNOWConnection);
            ofactory.login(Properties.Resources.RNOWLogin, Properties.Resources.RNOWPass);

            </span><span style="color:#008000;">//</span><span style="color:#008000;">database stuff</span><span style="color:#008000;">
</span><span style="color:#000000;">            </span><span style="color:#0000ff;">string</span><span style="color:#000000;"> connString </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#800000;">"</span><span style="color:#800000;">server=(local)\\SQLEXPRESS;Initial Catalog=BeckerPOC;User ID=becker;Password=becker</span><span style="color:#800000;">"</span><span style="color:#000000;">;
            </span><span style="color:#0000ff;">string</span><span style="color:#000000;"> insertSQL </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#800000;">@"</span><span style="color:#800000;">insert into RNContacts(c_id,org_id,last_name,first_name,email,email1,email2,street
,city,prov,postal_code,country,ph_asst,ph_fax,ph_home,ph_mobile,ph_office, RNLastUpdated)
values
(@c_id, @org_id, @last_name, @first_name, @email, @email1, @email2, @street
,@city, @prov,@postal_code,@country,@ph_asst,@ph_fax,@ph_home,@ph_mobile,@ph_office, @RNLastUpdated)
</span><span style="color:#800000;">"</span><span style="color:#000000;">;
            SqlConnection conn </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlConnection(connString);
            conn.Open();
            SqlDataAdapter da </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlDataAdapter();

            </span><span style="color:#0000ff;">object</span><span style="color:#000000;">[][] reportResult;

            System.Console.WriteLine(</span><span style="color:#800000;">"</span><span style="color:#800000;">Staring process: </span><span style="color:#800000;">"</span><span style="color:#000000;"> </span><span style="color:#000000;">+</span><span style="color:#000000;"> DateTime.Now.ToShortTimeString());

            </span><span style="color:#0000ff;">for</span><span style="color:#000000;"> (</span><span style="color:#0000ff;">int</span><span style="color:#000000;"> i </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#800080;">1</span><span style="color:#000000;">; i </span><span style="color:#000000;">&lt;=</span><span style="color:#000000;"> </span><span style="color:#800080;">25</span><span style="color:#000000;">; i</span><span style="color:#000000;">++</span><span style="color:#000000;">)
            {
                List</span><span style="color:#000000;">&lt;</span><span style="color:#000000;">RNOWAcFilter</span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> reportFilters </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> List</span><span style="color:#000000;">&lt;</span><span style="color:#000000;">RNOWAcFilter</span><span style="color:#000000;">&gt;</span><span style="color:#000000;">();
                RNOWAcFilter reportFilter </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> RNOWAcFilter();
                reportFilter.Operator </span><span style="color:#000000;">=</span><span style="color:#000000;"> Convert.ToInt32(RNOWUtil.SearchOperator.RANGE);
                reportFilter.Value </span><span style="color:#000000;">=</span><span style="color:#000000;"> i.ToString() </span><span style="color:#000000;">+</span><span style="color:#000000;"> </span><span style="color:#800000;">"</span><span style="color:#800000;">|</span><span style="color:#800000;">"</span><span style="color:#000000;"> </span><span style="color:#000000;">+</span><span style="color:#000000;"> (i </span><span style="color:#000000;">*</span><span style="color:#000000;"> </span><span style="color:#800080;">1000</span><span style="color:#000000;">).ToString();
                reportFilter.FilterId </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#800080;">1</span><span style="color:#000000;">;
                reportFilters.Add(reportFilter);
                reportResult </span><span style="color:#000000;">=</span><span style="color:#000000;"> ofactory.ExecuteReport(Convert.ToInt32(Properties.Resources.RNOWExtractReport), reportFilters.ToArray());

                </span><span style="color:#0000ff;">foreach</span><span style="color:#000000;"> (Object[] result </span><span style="color:#0000ff;">in</span><span style="color:#000000;"> reportResult)
                {
                    SqlCommand cmdSQL </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlCommand(insertSQL, conn);

                    SqlParameter c_id </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@c_id</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">0</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add( c_id );

                    SqlParameter org_id </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@org_id</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">1</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(org_id);
                    SqlParameter last_name </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@last_name</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">2</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(last_name);
                    SqlParameter first_name </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@first_name</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">3</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(first_name);
                    SqlParameter email </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@email</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">4</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(email);
                    SqlParameter email1 </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@email1</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">5</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(email1);
                    SqlParameter email2 </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@email2</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">6</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(email2);
                    SqlParameter street </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@street</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">7</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(street);
                    SqlParameter city </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@city</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">8</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(city);
                    SqlParameter prov </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@prov</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">9</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(prov);
                    SqlParameter postal_code </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@postal_code</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">10</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(postal_code);
                    SqlParameter country </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@country</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">11</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(country);
                    SqlParameter ph_asst </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@ph_asst</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">12</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(ph_asst);
                    SqlParameter ph_fax </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@ph_fax</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">13</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(ph_fax);
                    SqlParameter ph_home </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@ph_home</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">14</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(ph_home);
                    SqlParameter ph_mobile </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@ph_mobile</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">15</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(ph_mobile);
                    SqlParameter ph_office </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">@ph_office</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">16</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(ph_office);
                    SqlParameter RNLastUpdated </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> SqlParameter(</span><span style="color:#800000;">"</span><span style="color:#800000;">RNLastUpdated</span><span style="color:#800000;">"</span><span style="color:#000000;">, Convert.ToString(result[</span><span style="color:#800080;">17</span><span style="color:#000000;">]));
                    cmdSQL.Parameters.Add(RNLastUpdated);

                    </span><span style="color:#008000;">//</span><span style="color:#008000;">da.InsertCommand = cmdSQL;</span><span style="color:#008000;">
</span><span style="color:#000000;">                    cmdSQL.ExecuteNonQuery();
                    cmdSQL.Dispose();
                }

                System.Console.WriteLine(</span><span style="color:#800000;">"</span><span style="color:#800000;">Done with loop run: </span><span style="color:#800000;">"</span><span style="color:#000000;"> </span><span style="color:#000000;">+</span><span style="color:#000000;"> i.ToString());
            }

            System.Console.WriteLine(</span><span style="color:#800000;">"</span><span style="color:#800000;">End of process: </span><span style="color:#800000;">"</span><span style="color:#000000;"> </span><span style="color:#000000;">+</span><span style="color:#000000;"> DateTime.Now.ToShortTimeString());
            conn.Close();
            ofactory.logout();
            ofactory.Dispose();

        }

    }

}
</span></pre>
<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --></p>
</div>
<p><span style="color:#3366ff;">Update: </span></p>
<blockquote><p><span style="color:#3366ff;">Looking at the comments on this post, it appears that I have RightNow checking my code. Yes. there is a bug in it. The idea is to use a report to dump out data. So the start range needs to be incremented more than it is in the AcFilter.</span></p></blockquote>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=80&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/02/24/fun-with-c-and-the-rightnow-api/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
		<item>
		<title>C# interacting with a web form</title>
		<link>http://dichotic.wordpress.com/2010/02/17/c-interacting-with-a-web-form/</link>
		<comments>http://dichotic.wordpress.com/2010/02/17/c-interacting-with-a-web-form/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 23:45:26 +0000</pubDate>
		<dc:creator>Zack</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[RightNow]]></category>

		<guid isPermaLink="false">http://dichotic.wordpress.com/?p=77</guid>
		<description><![CDATA[Sweet.. I love the web. I needed to build a POC for a RightNow project I&#8217;m working on. BAZINGA Not only was it an awesome domain name. But, the code is exactly what I require. THANKS!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=77&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sweet.. I love the web. I needed to build a POC for a RightNow project I&#8217;m working on. <a class="aligncenter" title="BAZINGA" href="http://www.youtube.com/watch?v=hOaxOolM60s" target="_self">BAZINGA</a></p>
<p>Not only was it an awesome domain name. But, the <a title="code" href="http://www.doachick.com/development/c-tutorials/62-c-submiting-and-manipulating-web-forms">code </a>is exactly what I require. THANKS!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dichotic.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dichotic.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dichotic.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dichotic.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dichotic.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dichotic.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dichotic.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dichotic.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dichotic.wordpress.com&amp;blog=419338&amp;post=77&amp;subd=dichotic&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dichotic.wordpress.com/2010/02/17/c-interacting-with-a-web-form/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24acb127dc2f6cc4f5b4e9ad2ca967f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Zack</media:title>
		</media:content>
	</item>
	</channel>
</rss>
