<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DU4NR345eip7ImA9WhBUE0k.&quot;"><id>tag:blogger.com,1999:blog-13547658</id><updated>2013-04-30T11:53:16.022-07:00</updated><category term="Use Case" /><category term="Call Center" /><category term="Json" /><category term="Time Grouping" /><category term="BI Tools" /><category term="Data Integration" /><category term="Business Users" /><category term="Pentaho Job" /><category term="Pentaho Report Designer" /><category term="Business Analytics" /><category term="XML" /><category term="Pentaho data Integration" /><category term="Agile BI" /><category term="Report Development" /><category term="Exception Reporting" /><category term="Oracle" /><category term="Pentaho" /><category term="Business Intelligence" /><category term="Application Integration" /><category term="PDI" /><category term="Unzip File" /><category term="JDBC Performance" /><title>Business Intelligence in Real Life</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://arubawayne.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/blogspot/iKdBm" /><feedburner:info uri="blogspot/ikdbm" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DEEMQ38zfyp7ImA9WhBUEkQ.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-8879048822980175905</id><published>2013-04-29T21:19:00.001-07:00</published><updated>2013-04-29T21:38:02.187-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-29T21:38:02.187-07:00</app:edited><title>The Dirty Truth About Data and How To Clean It Using Pentaho!</title><content type="html">&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;Anyone who has worked with data has been there.&amp;nbsp; You are trying to bring data into your organization in order to merge it with other data so that you can provide a complete picture of:&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Your Organization&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Your Customers&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Your Industry&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;How all the above relate together&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;In order to achieve this complete picture, it will require you to rely on data that originated and exists outside of your organization.&amp;nbsp; Some examples may be bringing data in from Twitter, Facebook, LinkedIn, YouTube, Etc.&amp;nbsp; While we all know that the data within our own organizations is always clean ;) we all know that the data external is usually full of "bad" or "dirty" data.&amp;nbsp; What this demonstration will do for you is show you how you can use the power of Pentaho Data Integration to help clean your data as you merge, enrich and analyze it.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;b&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Setting the Stage&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;In this example, I am going to consume information from a flat file (csv) that has been provided to me through a third party vendor that I am paying to do sentiment analysis on my products.&amp;nbsp; This fictitious company, called Big Wireless, is a company that sells wireless products (cell phones, tablets, notebooks, etc) and services (cell phone, home line, etc).&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;The purpose of this exercise is to bring the data that is being provided by this third party (which I receive on a daily basis).&amp;nbsp; When processing the data, I need to capture any records that have bad or malformed data and report this back to the third party vendor.&amp;nbsp; In other words, I am paying for a service from them and this lets me verify that I am getting what I am paying for and can use this to make sure that they are living up to their QOS.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Below is a recorded demonstration of the following (based on the information above):&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Read in the CSV file from my 3rd Party Vendor&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Keep track of any "dirty" data&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Validating the expected Sentiment&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;Doing a fuzzy lookup in order to standardize on my companies product names&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Enriching the data through several lookups"&lt;/span&gt;&lt;/li&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Look up Detailed Product Information&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Lookup Geocode on where the tweet originated&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Create some new time dimensions&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Put it in my data base for further analysis&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;(Please excuse the tunnel voice effect :) &lt;/span&gt;&lt;br /&gt;
&lt;ol&gt;
&lt;/ol&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/vmYOJxA165E/0.jpg" height="380" width="500"&gt;&lt;param name="movie" value="http://www.youtube.com/v/vmYOJxA165E?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/vmYOJxA165E?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/xTXTIDBkDbk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/8879048822980175905/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=8879048822980175905&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/8879048822980175905?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/8879048822980175905?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/xTXTIDBkDbk/the-dirty-truth-about-data-and-using.html" title="The Dirty Truth About Data and How To Clean It Using Pentaho!" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2013/04/the-dirty-truth-about-data-and-using.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEEDSHwzfCp7ImA9WhBVFk4.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-8957890949489123872</id><published>2013-04-22T05:10:00.004-07:00</published><updated>2013-04-22T05:11:19.284-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-22T05:11:19.284-07:00</app:edited><title>The Future of Business Analytics Changes Today! </title><content type="html">&lt;br /&gt;
&lt;div id="release"&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Pentaho Acquires Dashboard and UI Specialist Partner Webdetails&lt;br /&gt;Portugal-based consultancy provides visual development expertise, consulting services and a new community leader&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Learn more about how to bring '&lt;a href="http://events.pentaho.com/Webdetails.html" target="_blank"&gt;The Art of the Possible&lt;/a&gt;' to life with Webdetails&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Pentaho is hiring and seeking superstars worldwide. Visit our &lt;a href="http://www.pentaho.com/careers/" target="_blank"&gt;careers page&lt;/a&gt;&amp;nbsp;to learn more.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Follow Pentaho on Twitter &lt;a href="https://twitter.com/pentaho" target="_blank"&gt;@Pentaho&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div id="body"&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;strong&gt;Orlando, Fla — April 22, 2013&lt;/strong&gt; — 
 Delivering the &lt;a href="http://www.pentaho.com/explore/" target="_blank"&gt;future of analytics&lt;/a&gt;, Pentaho announced today that it has completed the acquisition of its Portugal-based consulting partner &lt;a href="http://www.webdetails.pt/" target="_blank"&gt;Webdetails&lt;/a&gt;.
 Pentaho will benefit from Webdetails’ visual interface development 
expertise and international consulting services provided by its 
20-strong team. Webdetails’ founder Pedro Alves is a high-profile member
 of Pentaho’s open source community and will take on the new role of 
Senior VP, Community for Pentaho. As both parties are privately-held, 
the financial terms of the deal are undisclosed.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;


 &lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Raising Pentaho’s “visibility”&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;

&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;
 The Webdetails acquisition will complement and accelerate Pentaho’s 
research and development plans to enrich the user experience for both IT
 and business users of its business analytics platform and &lt;a href="http://pentahobigdata.com/ecosystem/capabilities/dido" target="_blank"&gt;big data integration&lt;/a&gt; tools. This will include expanding Pentaho’s range of data visualizations available in &lt;a href="http://pentahobigdata.com/ecosystem/capabilities" target="_blank"&gt;dashboards&lt;/a&gt;,
 making visual development tools like Instaview even easier to use and 
delivering new visual interfaces to help new customers get started.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;

&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;
 Webdetails has been designing plug-ins for Pentaho for several years, 
most notably its Community Tools or “CTools” series for creating and 
managing dashboards and reports. Last November, Webdetails collaborated 
with Pentaho to launch the &lt;a href="https://github.com/pentaho/marketplace" target="_blank"&gt;Pentaho Marketplace&lt;/a&gt;, a destination on github where developers can share, install and load cool plug-ins.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;


 &lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Meeting growing demand for Pentaho’s consulting services&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;

&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;
 As demand for advanced, big data and embedded analytics services 
continues to soar, Webdetails provides an experienced, international 
team to bolster Pentaho’s existing consulting services. Webdetails 
provides services worldwide, with most of the revenue stream coming from
 US and Europe. List of clients include 4SightBI, St. Antonius Hospital,
 and Pentaho’s award-winning customer &lt;a href="http://www.pentaho.com/press-room/releases/76/pentaho-customer-stonegate-senior-living-wins-nucleus-research-technology-roi-award/" target="_blank"&gt;Stonegate Senior Living&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;


 &lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Redoubling community support&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;

&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;
 In addition to continuing his role as General Manager for Webdetails’, 
founder Pedro Alves will take on the new role of Senior VP, Community. 
In this latter role, Alves will be the chief advocate and interface to 
Pentaho’s &lt;a href="http://pentahoday2013.iticdigital.org/" target="_blank"&gt;active&lt;/a&gt; open source developer community.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;

&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;
 Doug Johnson, EVP and COO, Pentaho commented, “Everything about 
Webdetails perfectly complements our operations as we continue to scale 
to meet demand fueled by the big data revolution. Webdetails’ expertise 
in high-end visualizations brings capabilities to help customers roll 
out exceptional visualizations with all data sources, particularly in 
Big Data. With Webdetails joining the Pentaho family we gain visual 
development talent, international consulting services and a highly 
respected open source community leader in Pedro.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;


 &lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Pedro Alves (&lt;a href="https://twitter.com/pmalves"&gt;@pmalves&lt;/a&gt;),
 commented, “After five years as consultants and advocates for Pentaho 
in the business and open source communities, my team is incredibly proud
 to be officially joining the company. On a personal note, I am 
delighted to be taking on the role as community leader and look forward 
to the opportunity and challenge that this presents.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;

&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;
 Webdetails will continue doing business under its existing brand, but as a Pentaho company.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/4XaCH6HF87c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/8957890949489123872/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=8957890949489123872&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/8957890949489123872?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/8957890949489123872?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/4XaCH6HF87c/the-future-of-business-analytics.html" title="The Future of Business Analytics Changes Today! " /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2013/04/the-future-of-business-analytics.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkAFSX8zfSp7ImA9WhBWGUQ.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-7961802267058746344</id><published>2013-04-14T21:05:00.001-07:00</published><updated>2013-04-14T21:05:18.185-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-14T21:05:18.185-07:00</app:edited><title>Pentaho Big Data Forum - Washington D.C. </title><content type="html">&lt;br /&gt;
&lt;div class="lpeCElement Rich_Text_1" id="lpeCDiv_22187"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;h1&gt;
&lt;br /&gt;&lt;/h1&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_3" id="lpeCDiv_22188"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;strong&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Featured Speakers:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Michael Lazar, Senior Systems Engineer, Cloudera&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Will LaForest, Senior Director, 10gen &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: 16px;"&gt;Ruhollah Farchtchi, Director of Federal Systems, Unisys&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="background-color: yellow; font-size: 16px;"&gt;&lt;b&gt;Wayne Johnson, Sales Consultant, Pentaho&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Will Gorman, VP Chief Architect, Pentaho&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Matt Casters, PDI Architect, Pentaho&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;strong&gt;&lt;strong&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_4" id="lpeCDiv_22189"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Join
 Pentaho for a half-day big data forum in Washington D.C. Do not miss 
out on the opportunity to connect with key Pentaho leaders and hear the 
latest big data hot topics from our featured partners, Cloudera, 10gen 
and Unisys.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_5" id="lpeCDiv_22190"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;span style="font-size: 16px;"&gt;&lt;strong&gt;Agenda:&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement controllerLandingPage.Image_2" id="lpeCDiv_22191"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_7" id="lpeCDiv_22192"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;&lt;strong&gt;Date:&lt;/strong&gt; &lt;br /&gt;Tuesday, April 23, 2013&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_8" id="lpeCDiv_22193"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;span style="font-size: 16px;"&gt;&lt;strong&gt;Location:&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 16px;"&gt;Artisphere &lt;/span&gt;&lt;br /&gt;&lt;span _mce_style="font-size: 16px;" style="font-size: 16px;"&gt;1101 Wilson Blvd&lt;/span&gt;.&lt;br /&gt;&lt;span style="font-size: 16px;"&gt;Arlington, VA 22209&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_9" id="lpeCDiv_22194"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;span _mce_style="color: #000000; font-size: 16px;" style="font-size: 16px;"&gt;For questions or more information, please contact Laura Tuohy at &lt;a _mce_href="mailto:ltuohy@pentaho.com" href="mailto:ltuohy@pentaho.com"&gt;ltuohy@pentaho.com&lt;/a&gt;.&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_10" id="lpeCDiv_22195"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;table _mce_style="width: 600px;" border="0" style="width: 600px;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;&lt;strong&gt;Time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;&lt;strong&gt;Agenda Item&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;8:00 a.m. - 8:30 a.m. &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Breakfast &amp;amp; Registration&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;8:30 a.m. - 9:30 a.m.&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Pentaho Big Data Update&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;9:30 a.m. - 10:15 a.m.&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Cloudera Big Data Presentation&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;10:15 a.m. - 10:30 a.m. &lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Pentaho Business Analytics Update &amp;amp; Demo&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;10:30 a.m. - 10:45 a.m. &lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Coffee Break&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;10:45 a.m. -11:30 a.m.&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;10gen Big Data Presentation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;11:30 a.m. - 12:00 p.m.&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Unisys Big Data Presentation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;12:00 p.m. - 1:00 p.m.&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span _mce_style="font-size: 16px; color: #000000;" style="font-size: 16px;"&gt;Lunch &amp;amp; Kettle Presentation on PDI for Big Data&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br _mce_bogus="1" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement Rich_Text_11" id="lpeCDiv_22196"&gt;
&lt;span class="lpContentsItem richTextSpan"&gt;&lt;br _mce_bogus="1" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="lpeCElement controllerLandingPage.Image_3" id="lpeCDiv_22197"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="lpeCElement controllerLandingPage.Image_5" id="lpeCDiv_22198"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/iY-QzEsDiMM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/7961802267058746344/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=7961802267058746344&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/7961802267058746344?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/7961802267058746344?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/iY-QzEsDiMM/pentaho-big-data-forum-washington-dc.html" title="Pentaho Big Data Forum - Washington D.C. " /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2013/04/pentaho-big-data-forum-washington-dc.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C04HRn07cSp7ImA9WhJQFEw.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-7223206246485125917</id><published>2012-07-27T10:58:00.002-07:00</published><updated>2012-07-27T10:58:57.309-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-07-27T10:58:57.309-07:00</app:edited><title>Olympic Analysis</title><content type="html">In honor of the Olympics starting today...here is an Analytical Dashboard I created to compare and contrast the medaling countries from 1976 to 2008. &amp;nbsp;Enjoy&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/rjeZ-GeYhJo/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/rjeZ-GeYhJo?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed width="700" height="500"  src="http://www.youtube.com/v/rjeZ-GeYhJo?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/_ywZVnWkLRc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/7223206246485125917/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=7223206246485125917&amp;isPopup=true" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/7223206246485125917?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/7223206246485125917?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/_ywZVnWkLRc/olympic-analysis.html" title="Olympic Analysis" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/07/olympic-analysis.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4FR344eCp7ImA9WhVbFEw.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-5307959716722505448</id><published>2012-05-30T14:21:00.001-07:00</published><updated>2012-05-30T14:21:56.030-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-05-30T14:21:56.030-07:00</app:edited><title>Cohort Analysis using Pentaho</title><content type="html">&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Sorry for the quality...I am working on a better quality video...Thanks!&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;object width="640" height="532" class="BLOG_video_class" id="BLOG_video-af4f1366f7debb3b" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="//www.youtube.com/get_player"&gt;
&lt;param name="bgcolor" value="#FFFFFF"&gt;
&lt;param name="allowfullscreen" value="true"&gt;
&lt;param name="flashvars" value="flvurl=http://redirector.googlevideo.com/videoplayback?id%3Daf4f1366f7debb3b%26itag%3D5%26source%3Dblogger%26app%3Dblogger%26cmo%3Dsensitive_content%253Dyes%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1371324583%26sparams%3Did,itag,source,ip,ipbits,expire%26signature%3D96A30C4D5C5DFC08698FE0F186362854392C9F22.7A925657E8A36D2505E039D86E17D8C0AACAE801%26key%3Dck2&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Daf4f1366f7debb3b%26offsetms%3D5000%26itag%3Dw160%26sigh%3DXeCgRNrCqD-3MI1F-8wKx0JZdBQ&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;
&lt;embed src="//www.youtube.com/get_player" type="application/x-shockwave-flash"
width="640" height="532" bgcolor="#FFFFFF"
flashvars="flvurl=http://redirector.googlevideo.com/videoplayback?id%3Daf4f1366f7debb3b%26itag%3D5%26source%3Dblogger%26app%3Dblogger%26cmo%3Dsensitive_content%253Dyes%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1371324583%26sparams%3Did,itag,source,ip,ipbits,expire%26signature%3D96A30C4D5C5DFC08698FE0F186362854392C9F22.7A925657E8A36D2505E039D86E17D8C0AACAE801%26key%3Dck2&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Daf4f1366f7debb3b%26offsetms%3D5000%26itag%3Dw160%26sigh%3DXeCgRNrCqD-3MI1F-8wKx0JZdBQ&amp;autoplay=0&amp;ps=blogger"
allowFullScreen="true" /&gt;&lt;/object&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/pjNQNEv9xGU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/5307959716722505448/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=5307959716722505448&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5307959716722505448?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5307959716722505448?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/pjNQNEv9xGU/cohort-analysis-using-pentaho.html" title="Cohort Analysis using Pentaho" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/05/cohort-analysis-using-pentaho.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQFSHg5eCp7ImA9WhVVEEw.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-2591954971589598488</id><published>2012-05-02T20:55:00.000-07:00</published><updated>2012-05-02T20:55:19.620-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-05-02T20:55:19.620-07:00</app:edited><title>Come hear me present Pentaho (sneak peak to my next use case)</title><content type="html">&lt;span style="background-color: white; font-family: Arial, Helvetica, 'Nimbus Sans L', sans-serif; font-size: 13px; line-height: 15px;"&gt;If you are interested in seeing what I have been up to lately, please feel free to join me at 9:00 AM EST or 1:00 PM EST:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: white; font-family: Arial, Helvetica, 'Nimbus Sans L', sans-serif; font-size: 13px; line-height: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://www.pentaho.com/resources/events/20120503-pentaho-business-analytis-4.5/"&gt;http://www.pentaho.com/resources/events/20120503-pentaho-business-analytis-4.5/&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/9y2Nmw-9FXs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/2591954971589598488/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=2591954971589598488&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2591954971589598488?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2591954971589598488?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/9y2Nmw-9FXs/come-hear-me-present-pentaho-sneak-peak.html" title="Come hear me present Pentaho (sneak peak to my next use case)" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/05/come-hear-me-present-pentaho-sneak-peak.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0IASXc5eCp7ImA9WhVWF0g.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-3173194158309365243</id><published>2012-04-29T21:19:00.000-07:00</published><updated>2012-04-29T21:19:08.920-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-29T21:19:08.920-07:00</app:edited><title>Big Data, Business Analytics, Rich Visualizations, it's all here!</title><content type="html">This week I will have the honor to show you guys something that I think is pretty amazing...and seeing how many people are adopting our technology, many of you find amazing as well. &amp;nbsp;This week Thursday, May 3rd, I will be hosting two events, showing the power and capability of Pentaho. &amp;nbsp;So what does Big Data, Business Analytics and Rich Visualizations have in common? &amp;nbsp;Well...you will just have to &lt;a href="http://www.pentaho.com/resources/events/20120503-pentaho-business-analytis-4.5/" target="_blank"&gt;register &lt;/a&gt;to find out! &lt;br /&gt;
&lt;br /&gt;
I will give you one clue though...you will get to learn this while simultaneously learning about a compelling, real world example of Business Intelligence&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-dbaGNzo26pM/T54SNTuuDWI/AAAAAAAAAWM/63gzz36k9NQ/s1600/Telco+Dashboard.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="352" src="http://3.bp.blogspot.com/-dbaGNzo26pM/T54SNTuuDWI/AAAAAAAAAWM/63gzz36k9NQ/s640/Telco+Dashboard.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Date and Time&lt;/h4&gt;
Thursday May 3, 2012&lt;br /&gt;
    9:00 AM ET / 14:00 GMT&lt;br /&gt;
    10:00 AM PT / 1:00 PM ET&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.pentaho.com/resources/events/20120503-pentaho-business-analytis-4.5/" target="_blank"&gt;Register Today&lt;/a&gt;&lt;br /&gt;


    &lt;br /&gt;
&lt;h4&gt;
Speakers&lt;/h4&gt;
Donna Prlich&lt;br /&gt;
    &lt;em&gt;Director, Product &amp;amp; Solutions Marketing&lt;br /&gt;
    Pentaho Corporation&lt;/em&gt;&lt;br /&gt;

    
    Wayne Johnson&lt;br /&gt;
    &lt;em&gt;Senior Sales Engineer&lt;br /&gt;
    Pentaho Corporation&lt;/em&gt;&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/hz3HbKdLIF0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/3173194158309365243/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=3173194158309365243&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3173194158309365243?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3173194158309365243?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/hz3HbKdLIF0/big-data-business-analytics-rich.html" title="Big Data, Business Analytics, Rich Visualizations, it's all here!" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-dbaGNzo26pM/T54SNTuuDWI/AAAAAAAAAWM/63gzz36k9NQ/s72-c/Telco+Dashboard.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/04/big-data-business-analytics-rich.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0UMQHc4cCp7ImA9WhVWE0s.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-1568569811958039118</id><published>2012-04-25T06:41:00.001-07:00</published><updated>2012-04-25T06:41:21.938-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-25T06:41:21.938-07:00</app:edited><title>Pentaho 4.5 is here</title><content type="html">This is a very short blog and I will have more information coming very soon but you HAVE GOT to check this out...Pentaho 4.5 has new visualizations that really help build very useful analytics...use cases coming soon...plus if you want to see me in action, I will be doing worldwide webinars...see below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul type="disc"&gt;
&lt;li class="MsoNormal"&gt;&lt;span style="font-size: 12.0pt; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri;"&gt;Visit &lt;a href="http://www.pentaho.com/4.5-release"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;;"&gt;pentaho.com&lt;/span&gt;&lt;/a&gt;&lt;a href="http://www.pentaho.com/4.5-release"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;;"&gt;/4.5-release&lt;/span&gt;&lt;/a&gt;&amp;nbsp;to
     learn more about the new release and why ‘Better Together’ is best.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class="MsoNormal"&gt;&lt;span style="font-size: 12.0pt; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri;"&gt;&lt;a href="http://www.pentaho.com/download/"&gt;Download&lt;/a&gt; a free 30-day fully
     supported trial of the Pentaho Business Analytics 4.5.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class="MsoNormal"&gt;&lt;span style="font-size: 12.0pt; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri;"&gt;Attend the live demo of what’s new in Pentaho Business Analytics
     4.5 on May 3, 2012. Register at &lt;a href="http://www.pentaho.com/4.5-webinar"&gt;pentaho.com/4.5-webinar&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/pRMvwev9wDo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/1568569811958039118/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=1568569811958039118&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/1568569811958039118?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/1568569811958039118?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/pRMvwev9wDo/pentaho-45-is-here.html" title="Pentaho 4.5 is here" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/04/pentaho-45-is-here.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUUCR309fyp7ImA9WhVREUs.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-2323101606316421150</id><published>2012-03-19T06:19:00.002-07:00</published><updated>2012-03-19T06:21:06.367-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-19T06:21:06.367-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Unzip File" /><category scheme="http://www.blogger.com/atom/ns#" term="Pentaho Job" /><category scheme="http://www.blogger.com/atom/ns#" term="Pentaho data Integration" /><title>Processing Zip Files using Pentaho Data Integration</title><content type="html">&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Recently I was on a call and the requirement was that they received zip files that contain a .csv file from their customers and needed to take the contained .csv file and put it into a database. &amp;nbsp;In this particular example, the structure of the .csv file is already known. &amp;nbsp;Currently this process is a manual process where they unzip the file, take that file and run it into a transformation that populates it into a database. &amp;nbsp;Their goal is to automate this process. &amp;nbsp;In the example below I have created a transformation that shows how Pentaho Data Integration can automatically take a zip file, unzip it, pass the contents to a transformation, process the file into a database.&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;The first step is to create a Job that handles the unzipping of the file&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-ymNWsd9b8KM/T2cvXwY_t8I/AAAAAAAAAVE/UOsvrWa9VG4/s1600/Screenshot1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;img border="0" height="356" src="http://4.bp.blogspot.com/-ymNWsd9b8KM/T2cvXwY_t8I/AAAAAAAAAVE/UOsvrWa9VG4/s640/Screenshot1.png" width="640" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;The job then passes that file to a transformation that takes the enclosed .csv file, processes it and inserts it into a database:&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-q4JtnalzjrY/T2cvZVJSCoI/AAAAAAAAAVM/dwC3oifsf3c/s1600/Screenshot2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;img border="0" height="400" src="http://3.bp.blogspot.com/-q4JtnalzjrY/T2cvZVJSCoI/AAAAAAAAAVM/dwC3oifsf3c/s640/Screenshot2.png" width="640" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;I have created a file for you to download a working example. &amp;nbsp;In order to run through this example you need to perform the following:&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Download the “PDI - UNZIP AND PROCESS FILE.ZP” file and extract its’ contents into a directory called “PDI - UNZIP AND PROCESS FILE”&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Open up Pentaho Data Integration (do not connect to the repository)&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Open the following job: “unzip.kjb”&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Open the following transformation: “populated database from unzipped file.ktr”&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;In the transformation, open up the “Table Output Step”&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Select the “SQL” button and then select “Execute”, then click “ok” and “close” on the next two dialog screens.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;ol&gt;&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;NOTE – We are using a database that comes with Pentaho for testing purposes&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Now you can go to the job and run the job. &amp;nbsp;The following will happen:&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;ol&gt;&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;The zip file contents will placed in the main directory “PDI - UNZIP AND PROCESS FILE.ZP” and be called sales_data_{timestamp}.csv&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;The job will then take the location of that .csv file and pass it to the transformation, which will take that file and insert it into the database&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/ol&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;&lt;a href="https://pentaho.box.com/s/deadeeda52e9b50503bb" target="_blank"&gt;DOWNLOAD SAMPLE HERE&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/qbpNpF7yZAw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/2323101606316421150/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=2323101606316421150&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2323101606316421150?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2323101606316421150?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/qbpNpF7yZAw/recently-i-was-on-call-and-requirement.html" title="Processing Zip Files using Pentaho Data Integration" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-ymNWsd9b8KM/T2cvXwY_t8I/AAAAAAAAAVE/UOsvrWa9VG4/s72-c/Screenshot1.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/03/recently-i-was-on-call-and-requirement.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0UGRnc8fip7ImA9WhRaGUs.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-4476806473063349851</id><published>2012-02-22T19:53:00.000-08:00</published><updated>2012-02-22T19:53:47.976-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-22T19:53:47.976-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Pentaho Report Designer" /><category scheme="http://www.blogger.com/atom/ns#" term="Report Development" /><title>Creating a Dynamic Target Range using Pentaho Report Designer and a Line Chart</title><content type="html">Here is a quick example of how you can easily create a line chart with the ability to dynamically set a target range on the chart. &amp;nbsp;Here is what the end results look like:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-zH3UMvnpzR8/T0W2IMVByLI/AAAAAAAAAUo/fIY-g8kjr54/s1600/Finish+Line.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="513" src="http://2.bp.blogspot.com/-zH3UMvnpzR8/T0W2IMVByLI/AAAAAAAAAUo/fIY-g8kjr54/s640/Finish+Line.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
How do you do this? &amp;nbsp;Well it is really pretty straight forward. &amp;nbsp;First you create your connection and retrieve the data you want to graph. &amp;nbsp;Then drag a chart object to your report and set the category-column, value-column, and Series-by-value to your data. &amp;nbsp;Once you have your chart reading your data set, next you will create your parameters, here is an example of the lower range parameter&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/--13nGw_Hu2o/T0W2dZ2scjI/AAAAAAAAAUw/4PsMN82I86s/s1600/parameter.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="476" src="http://1.bp.blogspot.com/--13nGw_Hu2o/T0W2dZ2scjI/AAAAAAAAAUw/4PsMN82I86s/s640/parameter.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Once you have your parameters created so that end users can dynamically set the range, all you need to do is add a post-processing script, you can use the script below (I've highlighted the parameters as well):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import java.awt.Color;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import java.awt.Dimension;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import java.awt.Font;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import java.awt.GradientPaint;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import javax.swing.JPanel;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.ChartFactory;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.ChartPanel;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.JFreeChart;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.axis;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.axis.CategoryAxis;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.axis.CategoryLabelPositions;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.axis.NumberAxis;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.labels.ItemLabelAnchor;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.labels.ItemLabelPosition;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.labels.StandardCategoryItemLabelGenerator;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.plot.CategoryPlot;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.plot.IntervalMarker;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.plot.PlotOrientation;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.chart.renderer.category.BarRenderer;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.data.category.CategoryDataset;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.data.category.DefaultCategoryDataset;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.text.TextUtilities;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.ui.ApplicationFrame;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.ui.Layer;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.ui.RectangleAnchor;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.ui.RefineryUtilities;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;import org.jfree.ui.TextAnchor;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;CategoryPlot plot = chart.getCategoryPlot();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; plot.setBackgroundPaint(Color.lightGray);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; plot.setDomainGridlinePaint(Color.white);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; plot.setRangeGridlinePaint(Color.white);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;IntervalMarker target = new IntervalMarker(dataRow.get("&lt;span style="background-color: yellow;"&gt;range1&lt;/span&gt;"), dataRow.get("&lt;span style="background-color: yellow;"&gt;range2&lt;/span&gt;"));&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;target.setLabel("Target Range/Goal");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;target.setLabelFont(new Font("SansSerif", Font.ITALIC, 11));&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;target.setLabelAnchor(RectangleAnchor.LEFT);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;target.setLabelTextAnchor(TextAnchor.CENTER_LEFT);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;target.setPaint(new Color(222, 222, 255, 128));&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;plot.addRangeMarker(target, Layer.BACKGROUND);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;return chart;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;That is really all it takes! &amp;nbsp;If you want to see a working example of this, &lt;a href="https://pentaho.box.com/s/yu5llx8684t7a1940cuh" target="_blank"&gt;feel free to download the sample .prpt file here.&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
HAPPY CHARTING!!!&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/sDdKrKb5u60" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/4476806473063349851/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=4476806473063349851&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/4476806473063349851?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/4476806473063349851?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/sDdKrKb5u60/creating-dynamic-target-range-using.html" title="Creating a Dynamic Target Range using Pentaho Report Designer and a Line Chart" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-zH3UMvnpzR8/T0W2IMVByLI/AAAAAAAAAUo/fIY-g8kjr54/s72-c/Finish+Line.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/02/creating-dynamic-target-range-using.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkICSHs4cSp7ImA9WhRUFUk.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-5548257915488497433</id><published>2012-01-25T19:29:00.000-08:00</published><updated>2012-01-25T19:29:29.539-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-25T19:29:29.539-08:00</app:edited><title>Utilize existing SQL Code for your Report Generation with Pentaho</title><content type="html">I often get asked if developers can utilize SQL that they already use in their legacy reports within Pentaho and the answer is always a resounding YES! &amp;nbsp;There are hardly if any companies out there that have not leveraged some type of Business Intelligence, even if it is generating csv files from a SQL query within a database. &amp;nbsp;So there is a common concern when making any switch in technology, especially Business Intelligence/Analytics, and that is leveraging the work you have already done. &amp;nbsp;here is a short video demonstration that show how easy it is to leverage Pentaho Report Designer to simply cut and paste your existing SQL code and how to extend that by parameterizing the report. &amp;nbsp;Enjoy the video!&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: -webkit-auto;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/kxEuJcE1b48" width="420"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/9kMxLwhVKTQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/5548257915488497433/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=5548257915488497433&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5548257915488497433?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5548257915488497433?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/9kMxLwhVKTQ/utilize-existing-sql-code-for-your.html" title="Utilize existing SQL Code for your Report Generation with Pentaho" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/kxEuJcE1b48/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/01/utilize-existing-sql-code-for-your.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYARnkyfSp7ImA9WhRUEEo.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-3285647764719815116</id><published>2012-01-20T07:35:00.000-08:00</published><updated>2012-01-20T07:42:27.795-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-20T07:42:27.795-08:00</app:edited><title>Increasing Pentaho's Data Sampling Set to Sample your entire CSV File</title><content type="html">Pentaho offers a very valuable capability in that you can quickly and easily prototype your data using a CSV file as your source data for the prototype. &amp;nbsp;Pentaho will bring in the CSV file, automatically profile the data and set the data types and lengths. &amp;nbsp;One important thing to note here, however, is the default sampling list is set to 200 rows. &amp;nbsp;I would recommend that you increase this limit to the size of your CSV file. &amp;nbsp;For example, if you have a CSV file that contains 10,000 rows, I would increase the limit to 10,000. &amp;nbsp;The next obvious question is how do I do this? &amp;nbsp;Well, it really is easy, just follow these simple steps:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open the following file in a text editor:&amp;nbsp;&amp;nbsp;&amp;nbsp;C:\Program Files\pentaho\server\biserver-ee\pentaho-solutions\system\data-access\settings.xml&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Change the default value that is located in the following tag to the desired sampling amount: &amp;nbsp;&lt;data-access-csv-sample-rows&gt;&amp;nbsp; &amp;nbsp; data-access-csv-sample-rows&amp;gt;10000/data-access-csv-sample-rows&amp;gt;&lt;/data-access-csv-sample-rows&gt;&amp;nbsp;(in this tag I have increased it to 10000)&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Restart your BI Server&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;This will help ensure that you have a success production of your prototype so that you can show your end users how easy Pentaho is to use to slice and dice their data, build reports and dashboards.&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/o4RW7wr0TE4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/3285647764719815116/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=3285647764719815116&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3285647764719815116?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3285647764719815116?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/o4RW7wr0TE4/increasing-pentahos-data-sampling-set.html" title="Increasing Pentaho's Data Sampling Set to Sample your entire CSV File" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/01/increasing-pentahos-data-sampling-set.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMARXkyeSp7ImA9WhRWGEU.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-5337011004167152675</id><published>2012-01-06T13:14:00.000-08:00</published><updated>2012-01-06T13:14:04.791-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-06T13:14:04.791-08:00</app:edited><title>Scheduling Transformations and Jobs and Pentaho Data Integration</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/J_biSUV3aT4/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/J_biSUV3aT4?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/J_biSUV3aT4?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/nuhxU4XGzh4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/5337011004167152675/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=5337011004167152675&amp;isPopup=true" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5337011004167152675?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5337011004167152675?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/nuhxU4XGzh4/scheduling-transformations-and-jobs-and.html" title="Scheduling Transformations and Jobs and Pentaho Data Integration" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/01/scheduling-transformations-and-jobs-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08CSX4yfCp7ImA9WhRWFk0.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-5759972632494084166</id><published>2012-01-03T08:57:00.000-08:00</published><updated>2012-01-03T08:57:48.094-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-03T08:57:48.094-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Exception Reporting" /><category scheme="http://www.blogger.com/atom/ns#" term="Business Intelligence" /><category scheme="http://www.blogger.com/atom/ns#" term="Pentaho" /><category scheme="http://www.blogger.com/atom/ns#" term="Data Integration" /><category scheme="http://www.blogger.com/atom/ns#" term="Business Analytics" /><title>Exception Reporting Can Dramatically Save Time and Money</title><content type="html">&lt;span style="font-family: inherit;"&gt;Business Intelligence has been around for a very long time and all companies have at least some form of it, whether it is a written ledger or whether they are using the most cutting edge, advanced and innovative BI solution such as Pentaho ;). &amp;nbsp;That being said, Exception Reporting is still not widely used in today's business. &amp;nbsp;What exactly is exception reporting? &amp;nbsp;I am glad you asked.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;Exception reporting is a method of reporting that, well, reports on the exceptions, which is&amp;nbsp;&lt;span style="background-color: white; color: #222222; line-height: 15px;"&gt;&lt;a href="https://www.google.com/#sclient=psy-ab&amp;amp;hl=en&amp;amp;safe=off&amp;amp;source=hp&amp;amp;q=define:+exception&amp;amp;pbx=1&amp;amp;oq=define:+exception&amp;amp;aq=f&amp;amp;aqi=g4&amp;amp;aql=&amp;amp;gs_sm=e&amp;amp;gs_upl=595l9628l0l10804l31l21l6l0l0l0l249l2196l12.8.1l27l0&amp;amp;bav=on.2,or.r_gc.r_pw.r_cp.,cf.osb&amp;amp;fp=a1bc1589ec616832&amp;amp;biw=1280&amp;amp;bih=939" target="_blank"&gt;A person or thing that is excluded from a general statement or does not follow a rule&lt;/a&gt;. &amp;nbsp;One of the key words is "rule", so to really be able to effectively do exception reporting, a business must have some key business rules in place in order to know what exception they are looking for, here are a couple of industry specific examples:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="background-color: white; color: #222222; line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;b&gt;Customer Service Example&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;Have you ever eaten fast food? &amp;nbsp;I am sure you have and you probably have noticed when going through a drive through that many of them have a timer clock by the window showing the current wait time. &amp;nbsp;Why is this? &amp;nbsp;This is because the company has deemed it important to monitor what the average wait time is for their customers. &amp;nbsp;The smaller the average the higher the customer satisfaction...hence the name...fast food. &amp;nbsp;The timer is there for the benefit of the line workers. &amp;nbsp;Shift managers are well aware of what the acceptable average wait times are and are often compensated for staying within range or even beating expectations. &amp;nbsp;What exception reporting does is collects all the information and presents it from a summary down to a granular basis. &amp;nbsp;Follow me here...Somewhere, back at corporate there is a person who is responsible for managing what the average wait time is for their customers among other things. &amp;nbsp;Now this person cannot sit there just staring at a dashboard that says what the average wait time is, so what they have done is setup some exception reporting. &amp;nbsp;To do this, they have defined the acceptable limits in which the company allows. &amp;nbsp;For example, an acceptable wait time is anywhere between 30 seconds and 3 minutes. &amp;nbsp;Any time the average falls above that range, the responsible party is notified and is offered the ability to click on the number and receive a list of only those stores that are above the limits along with what their average wait time currently is.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;b&gt;Financial Example&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;Financial institutions commonly have very strict regulations that they must abide by and these regulations change often. &amp;nbsp;Due to this, they often have implement a vast array of different information systems needed to meet these regulations. &amp;nbsp;The problem is that now they have the burden of making sure that these systems are in balance. &amp;nbsp;Any time you increase the complexity and diversity of all these information systems, you typically run into a data integration nightmare. &amp;nbsp;You have data spread out among many systems, some of them duplicated and some not. &amp;nbsp;In regards to the data that must be duplicated, it is important that those systems be able to reconcile with each other. &amp;nbsp;Recently, I helped a company be able to do this. &amp;nbsp;Their current process was to receive a report from one of their financial systems via a PDF, due to the system being a SaaS application with certain limitations and reconcile that with a legacy system they have. &amp;nbsp;It was a few people job to look at this report that was over 2,000 pages and compare account balances across both systems. &amp;nbsp;When the balances did not match, they had to look at the detail information and make any appropriate journal entries in order to correct it. &amp;nbsp;Since neither of these systems "talked" to each other, this was a very hands on, manual process. &amp;nbsp;Well, a little bit of know how and of course Pentaho, they now are able to connect to both systems and compare balances automatically and create a report that only contains accounts that don't reconcile with drill down to detail capability...saving days of several FTEs (full time employees).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;Pentaho is rather unique in that the way our Data Integration and Business Analytics are architected, performing exception reporting is well exceptional. &amp;nbsp;My apologies for such a corny ending...but...I am a father of 5...one has to have a sense of humor at this point ;)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;BTW - Happy New Years to all my blog followers, I appreciate all your views!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #222222;"&gt;&lt;span style="line-height: 15px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/KHAsYo5tN4k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/5759972632494084166/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=5759972632494084166&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5759972632494084166?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5759972632494084166?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/KHAsYo5tN4k/exception-reporting-can-dramatically.html" title="Exception Reporting Can Dramatically Save Time and Money" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2012/01/exception-reporting-can-dramatically.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0UBSXk4eCp7ImA9WhRSFEs.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-5644904560356389850</id><published>2011-11-16T10:45:00.001-08:00</published><updated>2011-11-16T10:47:38.730-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-16T10:47:38.730-08:00</app:edited><title>Reporting from Multiple Disparate Data Sources</title><content type="html">&lt;div class="post-body entry-content" id="post-body-3382323060025205902" style="background-color: white; color: #333333; line-height: 1.4; position: relative; width: 788px;"&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;One of the many powerful features of Pentaho is the ability for Pentaho Reporting and Pentaho Data Integration to seamlessly work together.&amp;nbsp; This example will walk through a typical use case within many organizations.&amp;nbsp; Let's say you want to report of multiple&amp;nbsp;disparate&amp;nbsp;data sources.&amp;nbsp; You may have a database, a csv file, and a flat file that you want to be able to join the data together and report from but you don't want to have to combine this data in a data store.&amp;nbsp; Additionally, you may want to give the end users the ability to sort this data.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;USE CASE&lt;/b&gt;&amp;nbsp;- Reporting from Raw Call Log Summary Information&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;I have a client who has accesses to some summary telephony data that records the outbound calling of their agents.&amp;nbsp; Besides having a record of these outbound calls, they have another solution that also records the inbound calls.&amp;nbsp; This inbound system reporting is a separate from their outbound system in terms of the storage of that data.&amp;nbsp; Both outbound and inbound record sets records the same information, AgentID, CallType, and Duration.&amp;nbsp; The outbound data file CallType column all contain the same CallType of outbound and the inbound data file has the value of inbound.&amp;nbsp; They want to merge these&amp;nbsp;disparate&amp;nbsp;files and also lookup the AgentID from another source that lists all their agents with their corresponding IDs, this way on their report they can list the agent name instead of their ID.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;SOLUTION&lt;/b&gt;&amp;nbsp;- Pentaho Data Integration and Pentaho Report Designer&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Pentaho Data Integration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;What I have done is use PDI to bring all the data together and make it available for Report Designer.&amp;nbsp; The transformation is made up of the following steps:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;CSV file input - This is the outbound call records&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Excel Input - This is the inbound call records&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Append Streams - This merges the outbound and inbound records into one data set&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Stream Lookup - This step looks up the value of AgentID in order to get the Agent Name&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;CSV file input 2 - This step contains the AgentID along with the corresponding Agent Name&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Sort rows - This sorts the rows by Agent Name&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Unique Rows - This returns a list of Unique Agent Names use in the parameter list within our report&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Create Parameter - This defines a parameter that will be used to filter the results&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Filter rows - This will use the parameter to filter out the desired results&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Filtered Results - Displays all the desired results&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Non Matching Results - Displays all the results that were not selected&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Once this transformation is created then it needs to be exported as an .ktr (xml) file and is now ready to be consumed by Report Designer.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Pentaho Report Designer&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Once in Report Designer I can create a report and add a Pentaho Data Integration data source.&amp;nbsp; All I will need to do is point to that transformation location (this is the .ktr file that you exported from Pentaho Data Integration).&amp;nbsp; When you bring that transformation into Report Designer, it will ask you to select which step to utilize.&amp;nbsp; This give you the ability to report from any point within the data integration step listed above.&amp;nbsp; For this example, we will consume information from the Filtered Results step.&amp;nbsp; In this report, we are also building a parameter which allows end users of this report to select which Agent they want to view the data for.&amp;nbsp; We are dynamically building this list by selecting the Unique Rows step in our data integration transformation.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;In order to get this example to work in your environment, you will need to download the files here, these files include:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin-bottom: 0.5em; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0px; padding-left: 2.5em; padding-right: 2.5em; padding-top: 0px;"&gt;&lt;li style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Multiple Sources with Parameter.ktr - Transformation&lt;/span&gt;&lt;/li&gt;
&lt;li style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Sample Report from three Sources with Parm.prpt - Report&lt;/span&gt;&lt;/li&gt;
&lt;li style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;outbound.csv - Contains outbound call log data&lt;/span&gt;&lt;/li&gt;
&lt;li style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;inbound.xls - Contains inbound call log data&lt;/span&gt;&lt;/li&gt;
&lt;li style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;agentLookup.csv - Contains Agent Name lookup by AgentID Data&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Make the following modifications to the Multiple Sources with Parameter.ktr file:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Open the Multiple Sources with Parameter.ktr by going into Pentaho Data Integration and selecting File -&amp;gt; Import from an XML File&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Edit the following steps and point them to the files you downloaded:&lt;/span&gt;&lt;/li&gt;
&lt;ol&gt;&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;CSV file input - point to outbound.csv&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Excel Input - point to inbound.xls&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;CSV file input 2 - point to agentLookup.csv&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Save transformation (this will save it to your repository)&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Export the transformation to the location where you saved the original (you can overwrite the original)&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Make the following changes in the Sample Report from three Sources with Parm.prpt in Report Designer:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="text-indent: -24px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Open the Report in Report Designer&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Click on the "Data" tab on the right side of Report Designer&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Double Click "Agent List" under the Pentaho Data Integration Data Set, browse to your recently saved and exported transformation and select the "Unique rows" step in the steps list.&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Double Click "Query 1" under the Pentaho Data Integration Data Set, browse to your recently saved and exported transformation and select the "Filtered Results" step in the steps list.&lt;/span&gt;&lt;/li&gt;
&lt;li style="margin-bottom: 0.25em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Click on the preview button to see it work.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="text-indent: -24px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;h3 style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; margin-bottom: 0in; margin-left: 0in; margin-right: 0in; margin-top: 0in; position: relative;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;Keep in mind that if you want to publish this report to your BI Server you will have to bring the Multiple Sources with Parameter.ktr as a report resource, for more information on this, please see the&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: normal;"&gt;&lt;a href="http://arubawayne.blogspot.com/2011/05/using-pentaho-data-integration-data.html" style="color: #336699; text-decoration: none;"&gt;Using a Pentaho Data Integration Data Source with the Pentaho Report Designer&lt;/a&gt;&amp;nbsp;blog entry I did back in May&lt;span class="Apple-style-span"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: medium;"&gt;&lt;a href="https://pentaho.box.net/s/6oqv5jt5joeyo12kpphv" style="color: #336699; text-decoration: none;" target="_blank"&gt;&lt;b&gt;Download Example Files Here&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-g9q2jw0vxpM/TsQBO8uNE5I/AAAAAAAAATw/wdP_LaiCnUQ/s1600/Transformation.GIF" imageanchor="1" style="color: #336699; margin-left: 1em; margin-right: 1em; text-decoration: none;"&gt;&lt;img border="0" height="210" src="http://4.bp.blogspot.com/-g9q2jw0vxpM/TsQBO8uNE5I/AAAAAAAAATw/wdP_LaiCnUQ/s400/Transformation.GIF" style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; position: relative;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-c79LEMKOPhY/TsQBP38eulI/AAAAAAAAAT4/ueCQA4z3qSU/s1600/RD+Edit.png" imageanchor="1" style="color: #336699; margin-left: 1em; margin-right: 1em; text-decoration: none;"&gt;&lt;img border="0" height="218" src="http://3.bp.blogspot.com/-c79LEMKOPhY/TsQBP38eulI/AAAAAAAAAT4/ueCQA4z3qSU/s400/RD+Edit.png" style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; position: relative;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 15px; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-EEOex97leig/TsQBQAVmNOI/AAAAAAAAAUA/rObNOfZ2uVk/s1600/RD+Preview.png" imageanchor="1" style="color: #33aaff; margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="368" src="http://3.bp.blogspot.com/-EEOex97leig/TsQBQAVmNOI/AAAAAAAAAUA/rObNOfZ2uVk/s400/RD+Preview.png" style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; position: relative;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/rvuQNAz-aOo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/5644904560356389850/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=5644904560356389850&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5644904560356389850?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/5644904560356389850?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/rvuQNAz-aOo/reporting-from-multiple-disparate-data.html" title="Reporting from Multiple Disparate Data Sources" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-g9q2jw0vxpM/TsQBO8uNE5I/AAAAAAAAATw/wdP_LaiCnUQ/s72-c/Transformation.GIF" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/11/reporting-from-multiple-disparate-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8HQXg4fSp7ImA9WhRSE08.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-3964176474504308968</id><published>2011-11-14T18:40:00.000-08:00</published><updated>2011-11-14T18:40:30.635-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-14T18:40:30.635-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Json" /><category scheme="http://www.blogger.com/atom/ns#" term="XML" /><category scheme="http://www.blogger.com/atom/ns#" term="Application Integration" /><category scheme="http://www.blogger.com/atom/ns#" term="Pentaho data Integration" /><title>Application Integration using Pentaho Data Integration</title><content type="html">&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Last week I was on a call where the person wanted to be able to easily access their data base and make that data available to other applications via both xml and Json.&amp;nbsp; Some of their other applications require XML but they have a few that also use Json and as an organization, they are moving toward consuming Json as well.&amp;nbsp; This will show an example on how you can easily use Pentaho Data Integration to gain access to any data source (for this example we will use the sample database that comes with Pentaho).&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Use Case Example - Customer Payment Information&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Currently Acme Company has all of their customer payment information in a database and they want to expose that information to a new application financial forecasting system that will help them better forecast:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;How likely a particular customer is in making future payments&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Segment customer based on their Accounts Receivables Turnover&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;What is the trend in Accounts Receivables Turnover&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;This new financial forecasting application can accept data via either XML or Json.&amp;nbsp; The first step is to build a simple transformation made up of three steps.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Table Input Step - This step will pull back data from the database&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;XML Output Step - This step will convert the data into a XML format&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Json Output Step - This step will convert the data into a Json format&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;The answer to how Pentaho can do this is similar to the famous quote from Fried Green Tomatoes, "The secret is in the sauce." &amp;nbsp;In both the XML Output and the Json Output, Pentaho has a very cool feature that is enabled by a simple check box, it is the "Pass output to servlet" checkbox.&amp;nbsp; In other words, this exposes Pentaho Data Integration data over a web service.&amp;nbsp; Matt Casters has also documented this on his blog &lt;a href="http://www.ibridge.be/?p=199" target="_blank"&gt;here&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;In order to test the example, simply import the .ktr in the link below into Pentaho Data Integration and save it to your Pentaho Data Integration Enterprise Repository and access via a simple url call:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;http://localhost:9080/pentaho-di/kettle/executeTrans/?rep=Enterprise%20Repository&amp;amp;user=joe&amp;amp;pass=password&amp;amp;trans=/home/joe/json1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;The transformation gives you two options for XML or Json Output.&amp;nbsp; To switch between the two different output formats, open the transformation and enable/disable the appropriate hop.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: 11pt; line-height: 115%;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;NOTE: This url call is specific to a generic installation of Pentaho Enterprise Edition.&amp;nbsp; The default installation port number is 9080, yours may vary depending on your installation&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;Download Transformation &lt;a href="https://pentaho.box.net/s/zf4ax8b1p12sk99gsi76" target="_blank"&gt;Here&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-q3js1tdhiaI/TsHQOQneASI/AAAAAAAAATc/vGnWvNnzq2U/s1600/transformation.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="456" src="http://2.bp.blogspot.com/-q3js1tdhiaI/TsHQOQneASI/AAAAAAAAATc/vGnWvNnzq2U/s640/transformation.GIF" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-LFUdLbIIYnM/TsHQOxT3lRI/AAAAAAAAATk/xEwptd8GzbA/s1600/XML+Output.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="578" src="http://4.bp.blogspot.com/-LFUdLbIIYnM/TsHQOxT3lRI/AAAAAAAAATk/xEwptd8GzbA/s640/XML+Output.GIF" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-VPIwJMeN1xk/TsHQOJYnCXI/AAAAAAAAATU/RgcuUEf3CyY/s1600/Json+Output.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="331" src="http://3.bp.blogspot.com/-VPIwJMeN1xk/TsHQOJYnCXI/AAAAAAAAATU/RgcuUEf3CyY/s640/Json+Output.GIF" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style="font-size: 11pt; line-height: 115%;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: 11pt; line-height: 115%;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/YNMr-w9piuI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/3964176474504308968/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=3964176474504308968&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3964176474504308968?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3964176474504308968?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/YNMr-w9piuI/application-integration-using-pentaho.html" title="Application Integration using Pentaho Data Integration" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-q3js1tdhiaI/TsHQOQneASI/AAAAAAAAATc/vGnWvNnzq2U/s72-c/transformation.GIF" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/11/application-integration-using-pentaho.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8FRng7eCp7ImA9WhdbGUs.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-2158488798394412885</id><published>2011-10-18T13:13:00.000-07:00</published><updated>2011-10-18T13:13:37.600-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-18T13:13:37.600-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Business Intelligence" /><category scheme="http://www.blogger.com/atom/ns#" term="Time Grouping" /><category scheme="http://www.blogger.com/atom/ns#" term="Use Case" /><category scheme="http://www.blogger.com/atom/ns#" term="Call Center" /><title>Use Case: Grouping by Time, A Call Center Story</title><content type="html">&lt;div class="MsoNormal"&gt;Recently a company that operates a rather large call center came to Pentaho to help them be able to better analyze their data and gain better insight to the performance and efficiency of their agents.&lt;span&gt;&amp;nbsp; &lt;/span&gt;One of the issues they had was that they wanted to see their call center data grouped by particular time categories so that they can better manage staffing for peak hours of the day as well as view who are the top performing agents in terms of volume.&lt;span&gt;&amp;nbsp; &lt;/span&gt;They had some basic information but the problem was that they wanted to have the grouping within the database so that they can gain some additional performance in pre-aggregating the data, due to the large volume of calls that are occurring.&lt;span&gt;&amp;nbsp; &lt;/span&gt;Here is a sample of what the data looked like (the sample below is only sample data generated by a sample data generator).&lt;/div&gt;&lt;div align="center" class="MsoNormal" style="text-align: center;"&gt;&lt;span&gt;&lt;br /&gt;
&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Ei6O5Tq_3CE/Tp3csYV_AqI/AAAAAAAAASc/NUi8YpsTL08/s1600/csv+file.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="215" src="http://3.bp.blogspot.com/-Ei6O5Tq_3CE/Tp3csYV_AqI/AAAAAAAAASc/NUi8YpsTL08/s400/csv+file.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="center" class="MsoNormal" style="text-align: center;"&gt;&lt;span&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div align="center" class="MsoNormal" style="text-align: center;"&gt;&lt;span&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;The first step in this process is to make the data "BI Ready", in other words take the data and convert to information by enriching it and grouping it by the designated time buckets, for this particular example they want to bucket their time in 15 minute increments starting from 8:00 to 5:00 (the operating hours of the call center).&lt;span&gt;&amp;nbsp; &lt;/span&gt;In this example, I am only using a snapshot of data ranging from 8:00 AM to 9:00 AM.&lt;span&gt;&amp;nbsp; &lt;/span&gt;This will allow them to answer questions like &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;During what time span (within 15 minutes) is the call volume the highest?&lt;/li&gt;
&lt;li&gt;What time categories have the highest volume of incoming calls?&lt;/li&gt;
&lt;li&gt;What time categories have the highest volume of outbound calls?&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;The end transformation looks like this:&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-4CsYeLpV9aA/Tp3cs1SGfUI/AAAAAAAAASs/RFyMkh-t9yY/s1600/transform+image.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://2.bp.blogspot.com/-4CsYeLpV9aA/Tp3cs1SGfUI/AAAAAAAAASs/RFyMkh-t9yY/s640/transform+image.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="center" class="MsoNormal" style="text-align: center;"&gt;&lt;span&gt;&lt;br /&gt;
&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 14.0pt; line-height: 115%; mso-bidi-font-size: 11.0pt;"&gt;Transformation Detailed Description&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 14.0pt; line-height: 115%; mso-bidi-font-size: 11.0pt;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Read Call Center Data from CSV&lt;/b&gt; - This is a csv Input Step that reads in the data from the CSV file.&lt;span&gt;&amp;nbsp; &lt;/span&gt;This does not have to be a csv file but can be almost any flat file, database, web service, etc.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Convert Date-Time to String&lt;/b&gt; - This is a Select Values step that allows you to rename or change the type of any of your fields, in this step we are converting the date-time&lt;span&gt;&amp;nbsp; &lt;/span&gt;to a string in order to split it into two different fields, one field that contains only date and the other only time.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Split Date-Time Field&lt;/b&gt; - Field Splitter allows you to split any string field based on a common requirement.&lt;span&gt;&amp;nbsp; &lt;/span&gt;In this example because the date-time field called BeginDate in our csv file has a date-time field that is a format where the date and time are separated by a space, we use that as the delimiter to split the field.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Convert Time to Number&lt;/b&gt; - The convert time to number is used to convert the Time field that we created in the previous step to a number in order to do our grouping into time ranges.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Create Time Range&lt;/b&gt; - This step will create a new column called TimeGroup, read in the rows of data, look at the time field set the appropriate value to the newly created field.&lt;span&gt;&amp;nbsp; &lt;/span&gt;For this example we are creating four groups:&lt;span&gt;&amp;nbsp; &lt;/span&gt;8:00 AM to 8:15 AM, 8:15 AM to 8:30 AM, 8:30 AM to 8:45 AM, and 8:45 AM to 9:00 AM.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Convert Time to Time Format&lt;/b&gt; - This step converts the time field back to the time data type for reporting purposes.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Dummy (do nothing)&lt;/b&gt; - this step, as it implies does nothing, at this point you can load the data directly into a database, flat file, etc.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;The end result of this transformation looks like this:&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-2wUajvP0DoM/Tp3cssos3bI/AAAAAAAAASk/9jER48QMRnA/s1600/final+output.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="272" src="http://3.bp.blogspot.com/-2wUajvP0DoM/Tp3cssos3bI/AAAAAAAAASk/9jER48QMRnA/s640/final+output.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span&gt;&lt;br /&gt;
&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B82Bz-g7xC00YmJjZTFiNzQtZDk5ZS00MzRkLTk2ZjAtY2M2MGJmYzk1ZmM5&amp;amp;hl=en_US"&gt;Download the zip file here for youto run this transformation&lt;/a&gt;.&lt;span&gt;&amp;nbsp; &lt;/span&gt;In order for it to work, you will need to import the .ktr file and then make sure to change the path of the csv file in the first step to the location of where you saved the csv file that is included in the .zip file.&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/htmTkSzK7gA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/2158488798394412885/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=2158488798394412885&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2158488798394412885?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2158488798394412885?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/htmTkSzK7gA/use-case-grouping-by-time-call-center.html" title="Use Case: Grouping by Time, A Call Center Story" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-Ei6O5Tq_3CE/Tp3csYV_AqI/AAAAAAAAASc/NUi8YpsTL08/s72-c/csv+file.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/10/use-case-grouping-by-time-call-center.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04HRXo_cCp7ImA9WhdbGUk.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-6144159563153260162</id><published>2011-10-18T06:52:00.000-07:00</published><updated>2011-10-18T06:52:14.448-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-18T06:52:14.448-07:00</app:edited><title>Pentaho Data Integration Sample Library</title><content type="html">&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
When you download Pentaho and run our Data Integration
client tool (also known as Spoon), you also get a huge library of sample
transformations that can help you build out your solution.&amp;nbsp; The great thing about these sample
transformation and jobs is that they are all working samples, so you can test
and learn by following the entire flow.&amp;nbsp;
There are over 150 working sample transformation and over 40 working
jobs.&amp;nbsp; You can access these
transformation and jobs anytime by going to the following directory:&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
[Install Directory]\pentaho\design-tools\data-integration\samples&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
To use any of these transformation in Pentaho Data
Integration follow these three easy steps:&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;Start Pentaho Data Integration Client Tool (Spoon)&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;Go to File &amp;gt; Import from an XML File&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-LHrs2s7cHnU/Tp2D2cnUkCI/AAAAAAAAASU/jab4usYtl3A/s1600/Import+from+an+XML+file.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-LHrs2s7cHnU/Tp2D2cnUkCI/AAAAAAAAASU/jab4usYtl3A/s1600/Import+from+an+XML+file.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;Browse to the samples library location stated
above and select the sample you wish to view and run.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/8QcgKFgEORQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/6144159563153260162/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=6144159563153260162&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/6144159563153260162?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/6144159563153260162?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/8QcgKFgEORQ/pentaho-data-integration-sample-library.html" title="Pentaho Data Integration Sample Library" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-LHrs2s7cHnU/Tp2D2cnUkCI/AAAAAAAAASU/jab4usYtl3A/s72-c/Import+from+an+XML+file.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/10/pentaho-data-integration-sample-library.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUYAQ34_fCp7ImA9WhdUF0g.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-8156702744185736214</id><published>2011-10-04T12:39:00.000-07:00</published><updated>2011-10-04T12:39:02.044-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-04T12:39:02.044-07:00</app:edited><title>At Pentaho, the best just keeps getting better!!!</title><content type="html">At Pentaho, the best just keeps getting better:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.marketwire.com/press-release/-1568941.htm"&gt;http://www.marketwire.com/press-release/-1568941.htm&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/HO91e5WqJBk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/8156702744185736214/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=8156702744185736214&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/8156702744185736214?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/8156702744185736214?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/HO91e5WqJBk/at-pentaho-best-just-keeps-getting.html" title="At Pentaho, the best just keeps getting better!!!" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/10/at-pentaho-best-just-keeps-getting.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcDRHc7fyp7ImA9WhdVE0Q.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-3431037430355621851</id><published>2011-09-18T19:07:00.000-07:00</published><updated>2011-09-18T19:07:55.907-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-18T19:07:55.907-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Pentaho" /><category scheme="http://www.blogger.com/atom/ns#" term="JDBC Performance" /><category scheme="http://www.blogger.com/atom/ns#" term="Data Integration" /><category scheme="http://www.blogger.com/atom/ns#" term="Oracle" /><category scheme="http://www.blogger.com/atom/ns#" term="PDI" /><title>Improving Performance with Pentaho Data Integration Table Input and Oracle</title><content type="html">When using Pentaho Data Integration Table Input step to connect to Oracle via a JDBC connection there is a setting in your connection information that you can specify that can dramatically improve your performance in&amp;nbsp;retrieving&amp;nbsp;data. &amp;nbsp;This property is the defaultRowprefetch. &amp;nbsp;Oracle JDBC drivers allow you to  set the number of rows to prefetch from the server while the result set  is being populated during a query. Prefetching row data into the client&lt;b&gt;  reduces the number of round trips&lt;/b&gt; to the server. The default value for  this property is 10.&lt;br /&gt;
&lt;br /&gt;
In the table input step, edit your connection, click on the options tab and then enter in your defaultRowprefetch specification:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-StyO6TuVWyI/TnajwUGZKdI/AAAAAAAAARw/FwepAAvOO38/s1600/PDI+-+Oracle+defaultRowPrefetch.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://2.bp.blogspot.com/-StyO6TuVWyI/TnajwUGZKdI/AAAAAAAAARw/FwepAAvOO38/s640/PDI+-+Oracle+defaultRowPrefetch.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/wW812YZIeJc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/3431037430355621851/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=3431037430355621851&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3431037430355621851?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/3431037430355621851?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/wW812YZIeJc/improving-performance-with-pentaho-data.html" title="Improving Performance with Pentaho Data Integration Table Input and Oracle" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-StyO6TuVWyI/TnajwUGZKdI/AAAAAAAAARw/FwepAAvOO38/s72-c/PDI+-+Oracle+defaultRowPrefetch.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/09/improving-performance-with-pentaho-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEBSHo6cCp7ImA9WhdXF0w.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-1477712627653810745</id><published>2011-08-29T18:06:00.000-07:00</published><updated>2011-08-30T06:24:19.418-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-30T06:24:19.418-07:00</app:edited><title>Creating drill down on charts within Report Designer</title><content type="html">Report Designer has the capability of creating charts which you can link the individual values to other reports, creating a drill down chart. This document will help you to create a working example of this using the sample data that comes with Pentaho in addition to a canned sample report that comes with Pentaho (the Order Status report located under the Steel Wheels &amp;gt; Reporting solution folder).&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Create a new report with Report Designer and add a JDBC connection with the Sample Data and enter the following SQL into the Query Dialog Box.SELECT "ORDERFACT"."STATUS", sum("CUSTOMER_W_TER"."CREDITLIMIT") AS Sales FROM "ORDERFACT" INNER JOIN "CUSTOMER_W_TER" ON "ORDERFACT"."CUSTOMERNUMBER" = "CUSTOMER_W_TER"."CUSTOMERNUMBER" WHERE "ORDERFACT"."STATUS" NOT LIKE 'Shipped' GROUP BY "ORDERFACT"."STATUS" ORDER BY "ORDERFACT"."STATUS" ASC&lt;br /&gt;
&lt;br /&gt;
&lt;img alt="" src="http://arubawayne.files.wordpress.com/2011/08/083011_0057_creatingdri11.png" /&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;Add a chart to the Report Header in your new Report and configure it to be a bar chart showing the sales per order status&lt;img alt="" src="http://arubawayne.files.wordpress.com/2011/08/083011_0057_creatingdri21.png" /&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;Link to the existing Order Status report located on the BI Server under Steel Wheels\Reporting folder&lt;img alt="" src="http://arubawayne.files.wordpress.com/2011/08/083011_0057_creatingdri31.png" /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;img alt="" src="http://arubawayne.files.wordpress.com/2011/08/083011_0057_creatingdri41.png" /&gt;&lt;br /&gt;
&lt;br /&gt;
Make sure the formula reads as follows:&lt;br /&gt;
&lt;br /&gt;
=DRILLDOWN("local-prpt"; NA(); {"oStatus"; ["chart::category-key"] | "showParameters"; [STATUS] | "solution"; "steel-wheels" | "path"; "reports" | "name"; "Order Status.prpt"})&lt;/li&gt;
&lt;/ol&gt;Preview the Report in HTML and click on the "On Hold" bar to see the drilldown action:&lt;br /&gt;
&lt;br /&gt;
&lt;img alt="" src="http://arubawayne.files.wordpress.com/2011/08/083011_0057_creatingdri51.png" /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;img alt="" src="http://arubawayne.files.wordpress.com/2011/08/083011_0057_creatingdri61.png" /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: center;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;a href="https://docs.google.com/leaf?id=0B82Bz-g7xC00MTFlYmJmMjEtOWE0NS00ODIxLWI2YWEtZGUzNGU3OThmOGE4&amp;amp;hl=en_US"&gt;Download the sample .prpt file by clicking here.&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;or watch the demonstration:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt; &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;iframe allowfullscreen="" frameborder="0" height="545" src="http://www.youtube.com/embed/IxPpU0tf_hk?hl=en&amp;amp;fs=1" width="625"&gt;&lt;/iframe&gt; &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/QYhr1PUR2ug" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/1477712627653810745/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=1477712627653810745&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/1477712627653810745?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/1477712627653810745?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/QYhr1PUR2ug/creating-drill-down-on-charts-within.html" title="Creating drill down on charts within Report Designer" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/IxPpU0tf_hk/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/08/creating-drill-down-on-charts-within.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU4MRn06fip7ImA9WhdXFEo.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-2192322873164679810</id><published>2011-08-25T19:07:00.000-07:00</published><updated>2011-08-27T12:39:47.316-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-27T12:39:47.316-07:00</app:edited><title>Pentaho reporting and canned reports for distributed solutions</title><content type="html">So recently I came across a use case that I helped someone work through that I thought my audience would find useful.  Here it is;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Use Case&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;A company wants to offer Pentaho as the BI Application with their current solution.  As part of this solution they want to create some canned reports that has the logo of the customer that is using their solution.  Each customer will have the same report, because it is a report that is common across all their customers, however, they want the logo on the report to be that of the customer.  Additionally, the solution is installed on premise at each individual customer site so the location of their solution in relation to the web application will be different for each customer (in other words, the installation and configuration of the Pentaho BI Server is different at each customer).  In order to accomplish this in Report Designer, they must do the following steps:
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Place an image in the report
&lt;br /&gt;
&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Put the location of that image as an Open Formula consisting of:&lt;span style="font-family:courier new;"&gt; =[env::serverBaseURL] &amp;amp; &lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt;&lt;span style="color: rgb(0, 0, 0);font-family:courier new;font-size:100%;"  &gt;&lt;span style="font-size:11pt;"&gt;"/pentaho/GetResource?resource=solution/folder_path/image_name.png&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;solution style="font-family: courier new;"&gt;&lt;/solution&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;img src="file:///C:/Presales/Screenshots/RD%20-%20dynamic%20image%20url%20based%20on%20baseurl.png" alt="" /&gt;
&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-r-Fvq1SHLnk/TlcCfzvOLbI/AAAAAAAAARs/_wKemNUYoFM/s1600/RD%2B-%2Bdynamic%2Bimage%2Burl%2Bbased%2Bon%2Bbaseurl.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 320px;" src="http://3.bp.blogspot.com/-r-Fvq1SHLnk/TlcCfzvOLbI/AAAAAAAAARs/_wKemNUYoFM/s400/RD%2B-%2Bdynamic%2Bimage%2Burl%2Bbased%2Bon%2Bbaseurl.png" alt="" id="BLOGGER_PHOTO_ID_5644983403419676082" border="0" /&gt;&lt;/a&gt;
&lt;br /&gt;Here is a video presentation demonstrating this:
&lt;br /&gt;
&lt;br /&gt;&lt;div style="text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;
&lt;br /&gt;&lt;div style="text-align: center;"&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div align="center"&gt;&lt;div style="text-align: center;"&gt;&lt;iframe src="http://www.youtube.com/embed/_Iu_Vlvqnm0" allowfullscreen="" width="600" frameborder="0" height="545"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/rlqxJtdbWIU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/2192322873164679810/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=2192322873164679810&amp;isPopup=true" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2192322873164679810?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2192322873164679810?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/rlqxJtdbWIU/pentaho-reporting-and-canned-reports.html" title="Pentaho reporting and canned reports for distributed solutions" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-r-Fvq1SHLnk/TlcCfzvOLbI/AAAAAAAAARs/_wKemNUYoFM/s72-c/RD%2B-%2Bdynamic%2Bimage%2Burl%2Bbased%2Bon%2Bbaseurl.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/08/pentaho-reporting-and-canned-reports.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QARHc7eip7ImA9WhZaEk0.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-1073935235473871466</id><published>2011-06-27T11:44:00.001-07:00</published><updated>2011-06-27T12:02:25.902-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-27T12:02:25.902-07:00</app:edited><title>Pentaho 4.0 - Bursting in Pentaho Data Integration</title><content type="html">&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/0kIHZUQlCXw?hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/0kIHZUQlCXw?hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a target="_blank" href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B82Bz-g7xC00MDU5NzY0MzMtOGZiMS00MTA3LWE1ZDktYjhmNDQ1YmU2NmM1&amp;amp;hl=en_US"&gt;Download instructions on customizing the Transformation &lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a target="_blank" href="https://docs.google.com/leaf?id=0B82Bz-g7xC00NTgyNzQzYTYtMjJiZS00NmYyLWIxMzItZTQzYjI1Nzk0OGNk&amp;amp;hl=en_US"&gt;Download the transformation here&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;For more information on the new Pentaho BI Suite 4.0, please visit &lt;a target="_blank" href="http://www.pentaho.com/"&gt;Pentaho.com&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/MbLr-IoPs4I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/1073935235473871466/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=1073935235473871466&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/1073935235473871466?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/1073935235473871466?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/MbLr-IoPs4I/pentaho-40-bursting-in-pentaho-data.html" title="Pentaho 4.0 - Bursting in Pentaho Data Integration" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/06/pentaho-40-bursting-in-pentaho-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYBQ3kyfyp7ImA9WhZWE0w.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-541889892056767323</id><published>2011-05-12T12:37:00.000-07:00</published><updated>2011-05-13T13:22:32.797-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-13T13:22:32.797-07:00</app:edited><title>AgileBI with Pentaho Business Intelligence</title><content type="html">This is about a 9 minute demonstration on AgileBi using Pentaho Data Integration...&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;iframe width="425" height="349" src="http://www.youtube.com/embed/tPMxDcxRnaE" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/3ZckVg6yuLE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/541889892056767323/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=541889892056767323&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/541889892056767323?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/541889892056767323?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/3ZckVg6yuLE/agilebi-with-pentaho-business.html" title="AgileBI with Pentaho Business Intelligence" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/tPMxDcxRnaE/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/05/agilebi-with-pentaho-business.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0AHR3czfip7ImA9WhZWEEg.&quot;"><id>tag:blogger.com,1999:blog-13547658.post-2267179616293366520</id><published>2011-05-10T11:19:00.000-07:00</published><updated>2011-05-10T11:22:16.986-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-10T11:22:16.986-07:00</app:edited><title>Pentaho LDAP Integration</title><content type="html">In this short video I give a quick demonstration of Pentaho integrated with a 3rd Party LDAP.  I will be working on creating a cheat sheet on how to configure what I show in the video, but for now...for your viewing enjoyment...I give you the video:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;iframe width="425" height="349" src="http://www.youtube.com/embed/DqQK9i5OTBM" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/iKdBm/~4/3waH5jV1rbA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://arubawayne.blogspot.com/feeds/2267179616293366520/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=13547658&amp;postID=2267179616293366520&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2267179616293366520?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/13547658/posts/default/2267179616293366520?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/iKdBm/~3/3waH5jV1rbA/pentaho-ldap-integration.html" title="Pentaho LDAP Integration" /><author><name>Wayne Johnson</name><uri>https://plus.google.com/108424310126870625501</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-IKvEx8dVCnk/AAAAAAAAAAI/AAAAAAAAAAA/D83pv6APOtY/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/DqQK9i5OTBM/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://arubawayne.blogspot.com/2011/05/pentaho-ldap-integration.html</feedburner:origLink></entry></feed>
