<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>Main</title>
  <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506" />
  <subtitle />
  <entry>
    <title>Using Inforama Service with .Net Clients 1.2</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Dylan Lacey</name>
    </author>
    <updated>2010-08-04T00:36:52Z</updated>
    <published>2010-08-04T00:36:52Z</published>
    <summary type="html">== Using Inforama Service with .Net Clients ==

=== WCF ===
When using a WCF client to connect to Inforama Service, you may encounter errors about missing doc parts:

//{... Error reading body: System.Xml.XmlException: MIME part with Content-ID 'cid:f985237a-cf1a-439e-81aa-a0998e7d8e4d@http%3A%2F%2Fcxf.apache.org%2F' not found. ...}//

The issue is often caused by the use of [[http://en.wikipedia.org/wiki/MTOM|MTOM]] encoding from Inforama Server.  To fix the issue:

=== Under Tomcat ===
Make the following changes in:

* DocumentManagerImpl
* RepositoryManagerImpl
* DocumentGeneratorImpl

in the namespace ///org/in4ama/documentservice//

# Remove the @MTOM Annotation above the @WebService declaration
# Recompile
# Redeploy</summary>
    <dc:creator>Dylan Lacey</dc:creator>
    <dc:date>2010-08-04T00:36:52Z</dc:date>
  </entry>
  <entry>
    <title>Integrating Inforama with SugarCRM 1.7 (minor-edit)</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2010-04-28T11:15:16Z</updated>
    <published>2010-04-28T11:15:16Z</published>
    <summary type="html">&lt;p&gt;&lt;span style="font-size: larger;"&gt;The new Rest services in Inforama now make it even easier to call Inforama from PHP based systems such as SugarCRM or Moodle. In this example we will show how easy it is to start producing documents from Inforama templates via the SugarCRM interface. We'll use the SugarCRM &lt;/span&gt;&lt;br /&gt; &lt;b&gt;&lt;span style="font-size: larger;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;&lt;span style="font-size: larger;"&gt;Getting Started&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;Anyone who is familiar with SugarCRM will know that its default installation uses a MySQL database and sets up a contacts table which allows users to instantly start recording contact information. Within Inforama Studio create a new project and define a new connection to the SugarCRM database. &lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;br /&gt; &amp;nbsp;&lt;img alt="" src="http://www.inforama.org/resources/wiki/technical/sugarintegration/dbconn.jpg" /&gt;&lt;/p&gt; &lt;p&gt;&lt;i&gt;Connecting to the SugarCRM database in Inforama Studio&lt;/i&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;Next create a dataset which will return the details of a particular contact based on the unique id field.&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;img alt="" src="http://www.inforama.org/resources/wiki/technical/sugarintegration/dataset.jpg" /&gt;&lt;/p&gt; &lt;p&gt;&lt;i&gt;Define the dataset that will be used in letter templates&lt;/i&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;This project has a '&lt;code&gt;contact_id&lt;/code&gt;' parameter defined in it which will be passed to the Inforama engine when generating contact correspondence. The query which is used is &amp;quot;&lt;code&gt;SELECT id, first_name, last_name FROM contacts WHERE id = '$P{contact_id}'&lt;/code&gt;&amp;quot;.&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;Next create letter templates that you wish to make available from SugarCRM. As usual the fields defined in the data frame on the right of the Studio are listed and can be double-clicked in order to insert the data bindings into the template.&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;img alt="" src="http://www.inforama.org/resources/wiki/technical/sugarintegration/template.jpg" /&gt;&lt;/p&gt; &lt;p&gt;&lt;i&gt;Define a letter template&lt;/i&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;&lt;b&gt;Setup on Inforama Enterprise&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;Now that the basics of the project have been created it can be deployed to the server running Inforama Enterprise. Click the Project - Compile menu item and then the Project - Deploy&lt;/span&gt;.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.inforama.org/resources/wiki/technical/sugarintegration/deploydialog.jpg" alt="" /&gt;&lt;/p&gt; &lt;p&gt;&lt;i&gt;The Studio deployment dialog&lt;/i&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;Now in the Inforama Enterprise you will see the project listed.&lt;/span&gt;&lt;br /&gt; &amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.inforama.org/resources/wiki/technical/sugarintegration/inforamaenterprise.jpg" alt="" /&gt;&lt;/p&gt; &lt;p&gt;&lt;i&gt;The project within Inforama Enterprise&lt;/i&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;b&gt;&lt;span style="font-size: larger;"&gt;Customisation of SugarCRM&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: larger;"&gt;The project has been deployed to Inforama Enterprise and is ready to be called from SugarCRM. In this example we want to print Inforama documents from the contact details page so we need to create a custom button on that page. Begin by editing the file 'sugarcrm\custom\modules\Contacts\metadata\detailviewdefs.php'. This file is created by the studio in SugarCRM whenever customisations are made to the application. The following code shows how a print button is added to the list of buttons at the top of the page.&lt;/span&gt;&lt;br /&gt; &amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array (&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 =&amp;gt; 'EDIT',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 =&amp;gt; 'DUPLICATE',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 =&amp;gt; 'DELETE',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 =&amp;gt; 'FIND_DUPLICATES',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 =&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; array (&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 'customCode' =&amp;gt; '&amp;amp;lt;input title=&amp;quot;Print Document&amp;quot; class=&amp;quot;button&amp;quot; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; onclick=&amp;quot;javascript:printDoc(\'{$fields.id.value}\');return false;&amp;quot; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; type=&amp;quot;submit&amp;quot; name=&amp;quot;Print Document&amp;quot; value=&amp;quot;Print Document&amp;quot;&amp;amp;gt;',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ),&lt;/code&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: larger;"&gt;This code creates a new custom print button on the contacts details page as shown below.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.inforama.org/resources/wiki/technical/sugarintegration/printbutton.jpg" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;The custom print button in the Contact details page&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: larger;"&gt;The customCode element in the array defines a new input button and attaches a javascript handler to it for click events. The printDoc javascript event is defined in the following HTML code. This code is copied to the top of the sugarcrm\modules\Contacts\views\view.detail.php file so that it's available for each contact.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;&lt;code&gt;&amp;lt;div id=&amp;quot;inforamaDiv&amp;quot; style=&amp;quot;width:300px; height:200px; background-color:#FFFFFF; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; visibility:hidden;position:absolute;top:100px;left:100px; border:1px solid #AAAAAA&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style=&amp;quot;background-color:#3333AA; color:#FFFFFF; padding:3px&amp;quot;&amp;gt;Select a document&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style=&amp;quot;padding:10px&amp;quot;&amp;gt;&lt;/code&gt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;&lt;code&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style=&amp;quot;padding-bottom:2px&amp;quot;&amp;gt;Available documents&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;select id=&amp;quot;documentList&amp;quot; size=&amp;quot;8&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&amp;lt;/select&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style=&amp;quot;width:100%; padding-top:5px; text-align:right&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Print&amp;quot; onclick=&amp;quot;javascript:generateDoc();&amp;quot;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Cancel&amp;quot; onclick=&amp;quot;javascript:cancel();&amp;quot;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;script&amp;gt;&lt;br /&gt;var currentContactId;&lt;br /&gt;var inforamaDiv = document.getElementById( 'inforamaDiv' );&lt;br /&gt;var documentList = document.getElementById( 'documentList' );&lt;br /&gt;&lt;br /&gt;function cancel()&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; inforamaDiv.style.visibility = &amp;quot;hidden&amp;quot;;&lt;br /&gt;}&lt;br /&gt;function printDoc( contactId )&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; currentContactId = contactId;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var url = &amp;quot;inforama.php?action=gettemplates&amp;quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var resp = null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp=new XMLHttpRequest();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.open(&amp;quot;GET&amp;quot;,url,false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.send(null);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; resp = xmlhttp.responseText;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {// code for IE6, IE5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp=new ActiveXObject(&amp;quot;Microsoft.XMLHTTP&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.open(&amp;quot;GET&amp;quot;,url,false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.send();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; resp = xmlhttp.responseText;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var docs = resp.split( &amp;quot;,&amp;quot; );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; documentList.options.length = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for ( var i = 0; i &amp;amp;lt; docs.length; i++ )&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var elOptNew = document.createElement('option');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; elOptNew.text = docs[ i ];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; elOptNew.value = docs[ i ];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; documentList.add(elOptNew, null); // standards compliant; doesn't work in IE&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch(ex) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; documentList.add(elOptNew); // IE only&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; inforamaDiv.style.visibility = &amp;quot;visible&amp;quot;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function generateDoc()&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var url = &amp;quot;inforama.php?contactid=&amp;quot; + currentContactId + &amp;quot;&amp;amp;doc=&amp;quot; + documentList.selectedItem;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var resp = null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp=new XMLHttpRequest();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.open(&amp;quot;GET&amp;quot;,url,false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.send(null);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; resp = xmlhttp.responseText;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {// code for IE6, IE5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp=new ActiveXObject(&amp;quot;Microsoft.XMLHTTP&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.open(&amp;quot;GET&amp;quot;,url,false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; xmlhttp.send();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; resp = xmlhttp.responseText;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; inforamaDiv.style.visibility = &amp;quot;hidden&amp;quot;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: larger;"&gt;At the beginning of this HTML there is a div defined which contains a list which will display the documents available on the Inforama server. The printDoc function calls the inforama.php file which resides in the root sugarcrm directory and is shown below.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;&lt;code&gt;&amp;lt;?php&lt;br /&gt;$action = $_GET[ &amp;quot;action&amp;quot; ];&lt;br /&gt;if ( $action == 'gettemplates' )&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; getTemplates();&lt;br /&gt;} else {&lt;br /&gt;	$printDestination = &amp;quot;&amp;quot;;&lt;br /&gt;	$customerId = $_GET[ &amp;quot;contactid&amp;quot; ];&lt;br /&gt;	$doc = $_GET[ &amp;quot;doc&amp;quot; ];&lt;br /&gt;&lt;br /&gt;	$requestStr = '{&amp;quot;request&amp;quot;:{&amp;quot;project_name&amp;quot;:&amp;quot;SugarTest&amp;quot;,&amp;quot;document_requests&amp;quot;:[{&amp;quot;parameters&amp;quot;:[{&amp;quot;value&amp;quot;:&amp;quot;' . $customerId;&lt;br /&gt;	$requestStr .= '&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;contact_id&amp;quot;}],&amp;quot;output_type&amp;quot;:&amp;quot;pdf&amp;quot;,&amp;quot;input_type&amp;quot;:&amp;quot;Compound&amp;quot;,&lt;br /&gt;		&amp;quot;actions&amp;quot;:[{&amp;quot;properties&amp;quot;:[{&amp;quot;value&amp;quot;:&amp;quot;' . $printDestination;&lt;br /&gt;	$requestStr .= '&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;printdestination&amp;quot;}],&amp;quot;name&amp;quot;:&amp;quot;print&amp;quot;}],&amp;quot;template_name&amp;quot;:&amp;quot;' . $doc . '&amp;quot;}],&amp;quot;type&amp;quot;:&amp;quot;&amp;quot;}}';&lt;br /&gt;	callInforama( $requestStr );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function callInforama( $requestStr )&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $ch = curl_init();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_URL, 'http://localhost:8080/Inforama/restful/requests');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_USERPWD, 'admin:password');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_POST, 1); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_POSTFIELDS, $requestStr);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json', 'Content-Type: application/json')); &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $data = curl_exec($ch);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_close($ch);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function getTemplates()&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $ch = curl_init();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_URL, 'http://localhost:8080/Inforama/restful/projects/SugarTest/templates');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_setopt($ch, CURLOPT_USERPWD, 'admin:password');&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $data = curl_exec($ch);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_close($ch);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $jsonResp = json_decode($data);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $resp = &amp;quot;&amp;quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $iCount = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach ($jsonResp as $value)&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; foreach ($value as $value2)&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if ( $iCount &amp;gt; 0 )&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $resp .= &amp;quot;,&amp;quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $resp .= $value2-&amp;gt;{'name'};&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $iCount++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo $resp;&lt;br /&gt;}&lt;br /&gt;?&amp;gt;&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: larger;"&gt;Now when the print button is clicked the div appears with the list of documents in Inforama as shown below.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.inforama.org/resources/wiki/technical/sugarintegration/lettersdialog.jpg" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;Letters available for printing are listed in the new custom dialog&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: larger;"&gt;Now when the user selects a document template and clicks the print button the generateDoc function is called with the contact id and the template name. This example simply prints the resulting document to the default printer but it could easily be changed to print to specific printers or to email to the contact's email address.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="resources/wiki/technical/sugarintegration/dbconn.jpg" alt="" /&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2010-04-28T11:15:16Z</dc:date>
  </entry>
  <entry>
    <title>Roadmap 2.2</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2010-03-10T17:34:12Z</updated>
    <published>2010-03-10T17:34:12Z</published>
    <summary type="html">{{http://www.in4ama.org/images/roadmap.png}}

== 2.0 ==
* Storage of projects in Alfresco. This is a significant change to the way Inforama projects are stored. By storing Inforama project files in Alfresco, project editors can access the same projects from the central repository.

* CMIS interface - In the same way as generated documents are stored via the JSR 170 interface, they can also be stored using the new CMIS interface. This will open up integrations with a wider range of CMS systems including Sharepoint.

== 1.6 ==

=== Studio ===
* Addition of UI component for CSV datasources
* New XML Datasource allowing datasources to be defined from xml and schema files
* Change data frame table to a tree to allow heirarchy of XML and Hibernate datasources to be expanded and selected
* New reference functionality which allows long expressions to be referred to throughout a project using shorter expressions within documents

== 1.5 ==

=== Studio ===
* New installer for the Studio
* Launcher to run Studio from executable
* Google Docs plug-in which will allow documents to be generated from the contents of a Google Docs spreadsheet

=== Enterprise ===
* JConsole addition to monitor Inforama Enterprise - remotely monitor jobs as they are processed and how memory and other metrics are behaving.
* New Rest API as an alternative to the SOAP API
* Improved error reporting

== 1.4 ==

=== Studio ===
* Ability to merge OpenOffice documents on the server and export to multiple formats including .pdf and .doc
* Addition of a CSV datasource similar to the spreadsheet datasource

=== Enterprise ===
* More advanced user rights management using Spring

* Change to Ajax browser interface using the Spring DWR library

== 1.3 ==
=== Studio ===
* Make data sets, fragments, templates, etc. more reusable. [[Resource Reuse|Click here for more information on this feature.]]

* Change to the syntax for referring to documents. [[Document Reference|Click here for more on this feature.]]

* New mailshot dialog which makes it easier to select datasets to be iterated and email fields to be used

* Ability to save mailshots as scripts which can be rerun again

* Mailshot events which can be triggered before and after documents and packs are emailed or printed

* Enhancements to the plug-in architecture to allow for more integrations with the Studio

* Early version of the Salesforce plug-in allowing documents to be generated from Salesforce contact data

=== Enterprise ===
* Improved font handling. Addition of a page on the Enterprise version which will allow Fonts to be added to the FOP engine. [[Font Handing|Click here for more on this feature.]]

* Support for multiple document providers. [[Multiple document providers|Click here for more on this feature.]]

== 1.2 ==
=== Studio ===
* Hibernate and POJOs integration. Ability to load data thru a set of Hibernate POJOs and create document bindings. [Click here for more information on setting up POJOs as a data source|Java Beans]

* Excel integration. Similar to the Hibernate integration, ability to create bindings from a spreadsheet. Particularly useful for mailshots where lists of users with names and email addresses have been stored or exported to a spreadsheet. [Click here for more information on this feature|Spreadsheet documents]

* Refactoring of codebase to allow documents to be created in a more generic way.

* Localisation support. Languages supported out of the box are English and Polish. Other language can be added easily

* New projects structure that allows easier document migration between projects as well as overriding document properties in web service calls. [Click here for more information|New Inforama project structure, version 1.2]

=== Enterprise ===
* Extended document generation formats. Ability to deploy a project with an OpenOffice document, request that document and return it as a modified OpenOffice document. The returned document will be populated with the bound data with any tables created. This does not require OpenOffice to be installed on the server. [[New types of document generation formats|Click here for more information on this feature.]]

* Localisation support. Languages supported out of the box are English and Polish. Other language can be added easily

== 1.1 ==

=== Studio ===
* Update to work with both OpenOffice 2.x and 3.x.

* Improvements to the UI. Trees to categorise document types for larger projects.

* More advanced table creation. Ability to create tables with dynamic row and column counts. Customise table content and styles through custom Java classes. Table templates to help with reuse. [[Tables|Click here for more on this feature.]]

* Introduction of the Office2fO transformation project to help create more accurate XSL-FO documents from the OpenOffice ODF formats.

=== Enterprise ===
* Integration with Alfresco and Jackrabbit via JSR170. [[http://in4ama.org/web/guest/news/-/blogs/inforama-meets-alfresco?_33_redirect=%2Fweb%2Fguest%2Fnews|Click here for more on this feature.]]</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2010-03-10T17:34:12Z</dc:date>
  </entry>
  <entry>
    <title>Using Data from a Google Docs Spreadsheet 1.4</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2010-01-25T21:48:48Z</updated>
    <published>2010-01-25T21:48:48Z</published>
    <summary type="html">&lt;p&gt;&lt;span style="font-size: medium;"&gt;With the release of 1.5 we have included a plug-in for Google Docs&lt;span style="font-size: small;"&gt;&lt;sup&gt;tm&lt;/sup&gt;&lt;/span&gt; which will allow you to use data directly from a Google spreadsheet. As you may or may not know Google have developed a neat way of gathering form and survey information into a Google spreadsheet. For a quick overview of the technology take a look at this video...&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=IzgaUOW6GIs"&gt;&lt;span style="font-size: medium;"&gt;http://www.youtube.com/watch?v=IzgaUOW6GIs&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;or this article from the Google Docs site...&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://googledocs.blogspot.com/2008/02/stop-sharing-spreadsheets-start.html"&gt;&lt;span style="font-size: medium;"&gt;http://googledocs.blogspot.com/2008/02/stop-sharing-spreadsheets-start.html&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;&amp;nbsp;&lt;br type="_moz" /&gt;&lt;/span&gt;&lt;span style="font-size: medium;"&gt;You might also want to take a look at the introductory webcast for this plug-in at&lt;/span&gt; &lt;a href="http://www.inforama.org/web/guest/resources/webcasts"&gt;&lt;span style="font-size: medium;"&gt;http://www.inforama.org/web/guest/resources/webcasts&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;In this example we will show how to work with the data that's been collected in the 'User Registrations' spreadsheet shown in figure 1 below.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://www.inforama.org/resources/wiki/tutorials/GoogleSpreadsheets/spreadsheet.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: small;"&gt;Figure 1 - The User Registrations spreadsheet&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;You can see an example of the form that was used to gather this data here. Feel free to fill it out if you want to keep updated about Inforama and the Google Docs integration as it progresses.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h2&gt;Getting Started&lt;/h2&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;In order to get started with the Google Docs plug-in download version 1.5 of Inforama from SourceForge at &lt;a href="http://sourceforge.net/projects/inforama/files/"&gt;http://sourceforge.net/projects/inforama/files/&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;Once installed you will see a 'plugins' folder in the Inforama application directory. Download the Google Docs plug-in zip file from SourceForge and extract it to the plugins directory. If Inforama is already running close it, restart it and create a new project.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h2&gt;Create a data source&lt;/h2&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;Click the Data - Connections/Datasources... menu item to open the DataSources dialog shown in figure 2 below&lt;/span&gt;.&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.inforama.org/resources/wiki/tutorials/GoogleSpreadsheets/DatasourceType.png" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: small;"&gt;Figure 2 - The Google Docs data source&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;The Google Docs data source now appears in the list of available datasources. Select the Google Docs datasource type and click the next button.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;The next dialog shown in figure 3 shows where you enter details of the Google Docs spreadsheet that you wish to use. Begin by giving your data source a name that will be used in your Inforama project. Next enter your Google Docs username and password. Click the List Spreadsheets button and all of the spreadsheets available in your Google Docs account will be listed.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.inforama.org/resources/wiki/tutorials/GoogleSpreadsheets/NewDatasource.png" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: small;"&gt;Figure 3 - Selecting the spreadsheet which will be used&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h2&gt;Create a dataset&lt;/h2&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;Next you want to create a dataset that will retrieve a subset of the data from your data source. To do this open the datasets dialog shown in figure 4. In this case we're going to mailshot all of the users in the spreadsheet so you can just enter a name for the dataset and click the execute button. A list of fields from the spreadsheet will be returned in the list on the right of the dialog. Click the save button to save the dataset.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://www.inforama.org/resources/wiki/tutorials/GoogleSpreadsheets/Dataset.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: small;"&gt;Figure 4 - Creating a dataset to be used in the project documents&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;This new Google Docs dataset can be used in the same way as any other dataset in Inforama.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;If you want to filter the data in the spreadsheet you can enter a simple clause in the SQL field in the dialog. For example you could use the clause &lt;b&gt;&lt;code&gt;email=info@inforama.org&lt;/code&gt;&lt;/b&gt; or &lt;b&gt;&lt;code&gt;index=${index}&lt;/code&gt;&lt;/b&gt;. In this case &lt;b&gt;&lt;code&gt;${index}&lt;/code&gt;&lt;/b&gt; is a parameter that will be provided to the Inforama engine prior to processing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;You can use it to run mailshots with or without PDF attachments as described in the tutorial at &lt;a href="http://www.inforama.org/web/guest/community/wiki/-/wiki/Main/1.3+Mailshot+Dialog"&gt;http://www.inforama.org/web/guest/community/wiki/-/wiki/Main/1.3+Mailshot+Dialog&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;You can use it to create dynamic tables in your documents as described in the tutorial at &lt;a href="http://www.inforama.org/web/guest/community/wiki/-/wiki/Main/6+-+Table+Iterations"&gt;http://www.inforama.org/web/guest/community/wiki/-/wiki/Main/6+-+Table+Iterations&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;This is our first step in working with Google Docs and we intend to develop more integrations with it in upcoming versions of Inforama. We created this plug-in for Inforama using Inforama's plug-in architecture. You may be interested in downloading the source code for this plug-in in order to see how the Inforama plug-in architecture is used or to see how to work with Google Docs from Java.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;If you're interested in getting more information about this plug-in and further integration with Google Docs click the link at the bottom of this page and fill out the Google Form.&lt;/span&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2010-01-25T21:48:48Z</dc:date>
  </entry>
  <entry>
    <title>Google Docs Sample Form 1.0</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2010-01-25T21:43:28Z</updated>
    <published>2010-01-25T21:43:28Z</published>
    <summary type="html">&lt;p&gt;&lt;iframe height="970" frameborder="0" width="760" src="http://spreadsheets.google.com/embeddedform?key=0AlqbQ_RbmIdTdDZLOXVjV2k3endMeHI1REVtQXVvclE" marginheight="0" marginwidth="0"&gt;Loading...&lt;/iframe&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2010-01-25T21:43:28Z</dc:date>
  </entry>
  <entry>
    <title>1.3 Mailshot Dialog 1.9</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2010-01-22T17:38:57Z</updated>
    <published>2010-01-22T17:38:57Z</published>
    <summary type="html">===Introduction===
Version 1.2 of Inforama introduced the ability to send mailshots which has proven very popular and effective in generating personalised PDFs for lists of recipients. In version 1.3 we have improved this functionality with a dedicated mailshot wizard.

===Getting Started===
To get started with this improved version of the mailshot wizard create a project with a letter template which you would like to generate. If you want to get started quickly with a sample project you can download the SampleSpreadsheet project from [[http://sourceforge.net/projects/inforama/files|SourceForge]]. This project generates its documents from a spreadsheet which is included in the download.

Once opened, the new mailshot dialog can be launched by clicking the 'Project - Run a mailshot...' menu item. The dialog shown in figure 1 will appear.
{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot1.jpg|Figure 1 - The new mailshot dialog}}

From the list of documents and packs in the left-hand list, select the document(s) or pack(s) that you wish to generate and move them to the select list on the right. Click the next button to proceed to the screen shown in figure 2.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot2.jpg|Figure 2 - Select the dataset to iterate}}

In this screen select the dataset which contains the list of recipients to whom you wish to send the mailshot. If the mailshot is to be emailed then the dataset should contain an email address field. Once the dataset is selected click the next button to proceed to the screen shown in figure 3.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot3.jpg|Figure 3 - Specify actions to be carried out}}

In this screen you select which actions should be carried out with the generated documents. In this example the generated documents will be emailed to the contacts in the dataset. In order to use the email address within the dataset click the button to the right of the 'To' address field. A dialog will appear with a list of fields in the dataset. Select the field name which contains the email address and click OK.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot4.jpg|Figure 4 - Specify actions to be carried out}}

The 'To' address will automatically populate with a reference to the email address field as shown in figure 4. Click the next button to proceed to the screen shown in figure 5.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot5.jpg|Figure 5 - Carry out additional tasks using the mailshot events}}

This screen is designed to carry out additional tasks as mailshot items are processed. In many cases it would be desirable to record the action which is carried out in a database for example. The screenshot shows a query being executed against a database datasource within the project. Click the next button to proceed to the screen shown in figure 6.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot6.jpg|Figure 6 - Apply a document name format}}

This screen allows you to apply a format or mask to the generated document names. This can be useful in cases where you wish to archive the generated documents and want to have a unique identifier as part of the file name. This will be come evident on the last screen where you have the option to save the entire mailshot. Click the next button to continue to the screen shown in figure 7.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot7.jpg|Figure 7 - Specify parameters to be used}}

This screen allows you to specify parameters which should be sent to the document generation job. In this example there are no parameters so there are none prompted for but you may wish to limit your mailshot to users in a particular region or age bracked for example. Click the next button to proceed to the screen shown in figure 8.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot8.jpg|Figure 8 - Preview of the generated documents}}

When this screen first appears it contains a list of all the rows which were used in the dataset to generate the mailshot PDFs. The actions specified earlier have not yet been carried out at this point. This first appearance of this screen allows you to preview the generated PDFs and emails which will be used when the next button is clicked.

On this screen you can also choose to save the documents which have been generated. You can do this by clicking the 'Save documents' button. A dialog will appear prompting you for a location to save them to. Choose an empty directory and the documents will be saved. If you specified a file name mask in step 6 the files will be saved using this format.

You can also choose to save the mailshot steps as a script which can be reused. You can do this by clicking the 'Save mailshot script' button and you will be prompted to provide a name as shown in figure 9 below.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot9.jpg|Figure 9 - Name the mailshot script}}

You can preview individual documents which have been generated by double-clicking an item in the list. The dialog shown in figure 10 below will appear.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot10.jpg|Figure 10 - Details of an individual mailshot}}

From this dialog click the 'Show document' button to preview the PDF. An example of a generated PDF is shown in figure 11 below.

{{http://www.in4ama.org/resources/wiki/tutorials/mailshots1.3/mailshot11.jpg|Figure 11 - A generated PDF}}</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2010-01-22T17:38:57Z</dc:date>
  </entry>
  <entry>
    <title>Building Inforama on Linux 1.1</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Jakub Jonik</name>
    </author>
    <updated>2010-01-21T12:29:48Z</updated>
    <published>2010-01-21T12:29:48Z</published>
    <summary type="html">The following dependencies need to be installed in order to build the //Inforama// and //Inforama// Installer

* **OpenOffice.org**  - on //Ubuntu// the package can be installed by executing command "**sudo apt-get install openoffice.org**" 
* **OpenOffice.org Office Bean** - on //Ubuntu// the package can be installed by executing command **"sudo apt-get install openoffice.org-officebean"**
* **IzPack** - available at http://izpack.org
* **Launch4j** - available at http://launch4j.sourceforge.net

In order to build the //Inforama//, variables **openoffice.lib** and **openoffice.lib2**, which are configured in Ant's configuration files (e.g. //DocumentEditor/build.properties//) need to point to the //Open Office// installation folder.
On //Ubuntu Linux// the variables can be set as follows: **openoffice.lib=/usr/lib/openoffice/basis-link/program/classes** and **openoffice.lib2=/usr/share/java/openoffice**.

In order to build the //Inforama Installer// the locations of //IzPack// and //Launch4j// need to be specified in the //Installer/build.properties// file (e.g. **izpack.dir=/usr/lib/IzPack** and **launch4j.dir=/usr/lib/launch4j**). The installer can be started by executing **java -jar install.jar** in the //Installer/dist// folder.

In order to start the //Inforama// the //run-oo2.sh// (OpenOffice 2.x) or //run-oo3.sh// need to be amended to point to the correct //OpenOffice// installation folder. The default locations work for //OpenOffice// installed as //Ubuntu// package. Before starting //Inforama// the script files need to be make executable (e.g. **chmod +x *.sh**). Once this is done the //Inforama// can be started by executing //run-oo3.sh// or //run-oo2.sh// dependeing on the version of OpenOffice that is installed.</summary>
    <dc:creator>Jakub Jonik</dc:creator>
    <dc:date>2010-01-21T12:29:48Z</dc:date>
  </entry>
  <entry>
    <title>CSV Files 1.5</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-11-05T18:11:00Z</updated>
    <published>2009-11-05T18:11:00Z</published>
    <summary type="html">==CSV Data Source==

The description below shows how to configure //Inforama// project to use **CSV Files** as a data source.

===CSV Data Source configuration===
In order to make the **CSV** data source available in the project the following entry should be added to the **datasources.cfg.xml** file.
{{{
&lt;datasources&gt;
	...
	&lt;datasource name="csv_datasource" type="ds.csv"/&gt;
	...
&lt;/datasources&gt;
}}}

The data source definition doesn't take any configuration properties, it just indicates that the **CSV** data source should be available under the name specified by the **name** attribute. (//csv_datasource// in the example above).

===CSV Data Set configuration===
In order to configure a **CSV** data set the following properties needs to be specified:
* **filepath** - points to a CSV file that should be used.
* **firstrowcols** - indicates whether the first row of the CSV file should act as column names. The value of this property should be specified as either //true// or //false//.
* **separator** - the value of this property specified a separator character (e.g. "," or "\t") used in the CSV file.
* **query** - this property specifies a SQL-like query used to retrieve the data from a CSV file.

A sample data set configuration is shown below.

{{{
&lt;datasets&gt;
...
&lt;dataset datasource="csv_datasource" name="csv"&gt;
	&lt;property name="filepath" value="$P{csvFileName}.csv" valueClass="java.lang.String"/&gt;
	&lt;property name="firstrowcols" value="true" valueClass="java.lang.String"/&gt;
	&lt;property name="query" value="select *" valueClass="java.lang.String"/&gt;
	&lt;property name="separator" value="," valueClass="java.lang.String"/&gt;
&lt;/dataset&gt;
....
&lt;/datasets&gt;
}}}

The example above specifies the data set named "csv" created from the "csv_datasource" data source. The path to a CSV file should be provided in a "csvFileName" parameter. The first row from a CSV file should act as column names. The specified query "select *" means that the entire content of the file should be used as data set and, finally, values in a CSV file should be separeted by a "," character.

===The "query" property===

The "query" property from a data set definition specifies whith part of the CSV file should be used to build the data set.
The query should be in the form:  **select //column_names// where //conditions//**

* **column_names** - a list of comma separated column names or '*' character meaning "all columns". The columns can be referenced using indexes enclosed within square brackets (e.g. ~[2] - means second column) or column names (works only when the first row of the associated CSV file acts as column names). So, for example, query: //select ~[1],~[2]// will built a data  set only from the first two columns from a CSV file.
* **conditions** - list of conditions filtering a data set that will be built. For example query: //select first_name, last_name where city='Dublin'// will be build a data set only from rows whose "city" columns' value equals "Dublin".

===Accessing a CSV data set within a document===
There are two ways of referring to a CSV data set within a document.
* The 'standard' way, which is: $F{~[data_set_name].~[column_name]}, for example: $F{csv.first_name} - will get the value from the "first_name" column. 
* Using column indexes: For example: $F{csv.~[3]} will retrieve the value from the third column.

The first (standard) way will work only when the first row of the associated CSV file acts as column names (i.e. "firstrowcols" property is set to "true").

Sample Inforama Project using a CSV data source (CsvProject.zip) and a sample WebService client application using the project are in the attachemt.

You can download the following sample files which demonstrate how to use this datasource...

*[[http://www.inforama.org/resources/wiki/technical/csv/CsvProject.zip|CsvProject.zip]] - A sample Inforama project
*[[http://www.inforama.org/resources/wiki/technical/csv/TestClient.zip|TestClient.zip]] - A sample client application which invokes the Inforama Enterprise web service
*[[http://www.inforama.org/resources/wiki/technical/csv/TestClientEclipseProject.zip|TestClientEclipseProject.zip]] - The sample code for the project which invokes the web service. This is an Eclipse project.</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-11-05T18:11:00Z</dc:date>
  </entry>
  <entry>
    <title>Configuring Eclipse for Editing and Debugging 1.5 (minor-edit)</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-10-01T19:36:16Z</updated>
    <published>2009-10-01T19:36:16Z</published>
    <summary type="html">&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Setting up the Eclipse development environment for Inforama Community Edition&lt;/h1&gt; &lt;p style="margin-bottom: 0cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h2 class="western"&gt;Check the code from the SVN repository&lt;/h2&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Check out the project suite from the SourceForge.net subversion repository. The address of the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;server is &amp;ldquo;&lt;font color="#000081"&gt;https://inforama/svn.sourceforge.net&lt;/font&gt;&amp;rdquo; and respository path is &amp;ldquo;svnroot/inforama/trunk&amp;rdquo;. This&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;can be done with the following instruction of the Subversion command line client: &amp;ldquo;svn co&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000081"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;https://inforama.svn.sourceforge.net/svnroot/inforama/trunk &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;inforama&amp;rdquo;.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;If you're using an SVN client such as SmartSVN (&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;a href="http://www.syntevo.com/smartsvn/index.html"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;http://www.syntevo.com/smartsvn/index.html&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;) th&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;e dialog to create the will look similar to that shown in figure 1.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/smartsvnconfig.png" alt="" /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: Configuring the connection to the SVN repository using SmartSVN&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Enter your SourceForge user id and password along with the SVN paths.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Project &amp;ndash; Check out...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; menu item, select the Inforama repository you created and click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Next&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; button. If you are only interested in checking out a particular version of Inforama you can use the next screen to select this as shown in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/smartsvnselectbranch.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Select the version of Inforama&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;The different branches in SVN relate to the Inforama versions. Select the branch you are interested in and click the Next button to view the screen shown in figure 3.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/smartsvnselectlocation.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: Specify the location for the checked out code&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;On this screen select the location on your filesystem to which the checked out code will be copied. Click the Next button and the screen shown in figure 4 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/smartsvnselectproject.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: Specify a project name&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		TD P { margin-bottom: 0cm }
		P { margin-bottom: 0.21cm }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;The default action here is to check the source code out and manage it as a project. To do this enter the name you wish to give the project. Click the Next button and on the next page click the Finish button to complete the wizard.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;You can update your local copy of the code from the repository by right-clicking the project in the SmartSVN explorer and clicking the Update popup menu item. When you first update from the repository five directories will be downloaded to your local project location. These are...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="4" bordercolor="#000000" border="1" width="100%"&gt; 	&lt;col width="61*" /&gt; 	&lt;col width="195*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#e6e6ff" width="24%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Directory&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6ff" width="76%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Descripiton&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="24%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;DataSourceManager&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="76%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This project 			manages dataconnections via JDBC and to spreadsheets and can be 			extended to connect to custom datasources.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="24%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;DocumentAutomator&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="76%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This project 			manages the actions which are carried out on projects such as 			emailing, printing and returning.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="24%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;DocumentEditor&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="76%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is the studio 			and contains code for creating the UI, managing projects, etc.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="24%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;DocumentEngine&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="76%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This project 			controls the generation of documents from templates, merging data 			from datasets into PDFs and other formats&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="24%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;lib&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="76%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This directory 			contains all of the jar files which are required by the various 			projects.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h2 class="western"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="4"&gt;Install OpenOffice&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;These instructions assume that version 2.4 of OpenOffice is being used. If you wish to configure Inforama to use version 3.x of OpenOffice please refer to the specific instructions on the Inforama Wiki at &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;a href="../../../../../web/guest/community/wiki/-/wiki/Main/Building+Inforama+with+Open+Office+3.x+in+Eclipse+IDE"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;http://www.in4ama.org/web/guest/community/wiki/-/wiki/Main/Building+Inforama+with+Open+Office+3.x+in+Eclipse+IDE&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;h2 class="western"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="4"&gt;Setting up the Eclipse environment&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;These instructions are based on Eclipse version 3.2.2. Download Eclips&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;e from &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;a href="http://www.eclipse.org/downloads/"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;http://www.eclipse.org/downloads/&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt; an&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;d start it up. Create a workspace in the root directory which you specified as your Inforama project location in figure 3 earlier. Click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;File &amp;ndash; Import...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; menu item in Eclipse and in the resulting dialog shown in figure 5 select the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Existing Projects into Workspace&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; item.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/eclipseimportdialog.png" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: Import project dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Next&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; button and in the next screen locate the DataSourceManager project. Click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Finish&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; button and the project will appear in the workspace frame. Right click the project in the workspace frame and click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Properties&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; menu item. Select the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Java Build Path&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; node from the tree on the left and select the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Libraries&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; tab. Click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Add Variable...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; button and in the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;New Variable Classpath Entry&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; dialog click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Configure Variables...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; button. In the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Preferences&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; dialog click the &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;New...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt; button to display the dialog shown in figure 6.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/in4amalibvar.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: Specifying the variable folder path&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Now build the project by clicking the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Clean...&lt;/font&gt; menu item in Eclipse. Select the DataSourceManager and it should build without errors. You can now build the project using the build.xml file in the DataSourceManager folder. Before doing this make sure that the build.properties file exists in the directory above this.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;In Eclipse, right-click the build.xml file and select the &lt;font face="Courier New, monospace"&gt;Run As &amp;ndash; Ant Build...&lt;/font&gt; menu option. In the build dialog select the &lt;font face="Courier New, monospace"&gt;clean&lt;/font&gt;, &lt;font face="Courier New, monospace"&gt;compile&lt;/font&gt; and &lt;font face="Courier New, monospace"&gt;jar&lt;/font&gt; targets and make sure they are configured to build in that order. Click the Run button to run the Ant build. The resulting &lt;font face="Courier New, monospace"&gt;DataSourceManager.jar &lt;/font&gt;file will be created in the &lt;font face="Courier New, monospace"&gt;dist&lt;/font&gt; folder.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Now you can import the &lt;font face="Courier New, monospace"&gt;DocumentAutomator&lt;/font&gt; project into Eclipse. Once imported rebuild it and it should build without errors.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Next import the &lt;font face="Courier New, monospace"&gt;DocumentEngine&lt;/font&gt; project and once import right-click it and select &lt;font face="Courier New, monospace"&gt;Properties&lt;/font&gt; from the menu. Select the &lt;font face="Courier New, monospace"&gt;Java Build Path&lt;/font&gt; node from the tree on the leftm select the &lt;font face="Courier New, monospace"&gt;Projects&lt;/font&gt; tab and make sure that the &lt;font face="Courier New, monospace"&gt;DataSourceManager&lt;/font&gt; and &lt;font face="Courier New, monospace"&gt;DocumentAutomator&lt;/font&gt; projects are included as shown in figure 7.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/documentenginepprojects.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: Project dependancies for the DocumentEngine&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Now switch to the &lt;font face="Courier New, monospace"&gt;Libraries&lt;/font&gt; tab and click the &lt;font face="Courier New, monospace"&gt;Add Variable...&lt;/font&gt; button. Next click the &lt;font face="Courier New, monospace"&gt;Configure Variables...&lt;/font&gt; button and then the &lt;font face="Courier New, monospace"&gt;New...&lt;/font&gt; button. In the dialog enter the value &lt;font face="Courier New, monospace"&gt;openoffice_lib&lt;/font&gt; in the &lt;font face="Courier New, monospace"&gt;Name&lt;/font&gt; field and the path to the classes folder for OpenOffice in the &lt;font face="Courier New, monospace"&gt;Path&lt;/font&gt; field. In OpenOffice 2.4 the classes folder can be found in the program folder which in turn is in the default root installation directory for OpenOffice. Click the &lt;font face="Courier New, monospace"&gt;OK&lt;/font&gt; button to save the variable.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/openoffice_lib_variable.png" alt="" /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: Adding the openoffice_lib path variable&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;You should now be able to build the &lt;font face="Courier New, monospace"&gt;DocumentEngine&lt;/font&gt; project without errors.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;h2 class="western"&gt;Running Inforama Studio&lt;/h2&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;The final project you need to import is the &lt;font face="Courier New, monospace"&gt;DocumentEditor&lt;/font&gt; project. Once imported the project should build without errors. Next select the &lt;font face="Courier New, monospace"&gt;DocumentEditor&lt;/font&gt; project and click the &lt;font face="Courier New, monospace"&gt;Run &amp;ndash; Open Run Dialog...&lt;/font&gt; menu item to display the run dialog shown in figure 9.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/studiorundialog.png" alt="" /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: The Inforama Studio run configuration&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Select the &lt;font face="Courier New, monospace"&gt;Java Application&lt;/font&gt; node in the tree on the left of the dialog and click the &lt;font face="Courier New, monospace"&gt;New launch configuration&lt;/font&gt; button as indicated by the red circle in figure 9. Enter a name for the configuration and make sure that the &lt;font face="Courier New, monospace"&gt;DocumentEditor&lt;/font&gt; project is selected as the project. Enter the value &lt;font face="Courier New, monospace"&gt;org.in4ama.editor.xui.Launcher&lt;/font&gt; as the main class.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Now select the Arguments tab as shown in figure 10.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/technical/eclipsesetup/studiorunarguments.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: Specifying arguments for the launch configuration&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;In the Program arguments field enter the path to the OpenOffice installation directory followed by the value '2' indicating that version OpenOffice 2.x is to be used.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="ArialMT, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;font face="Courier New, monospace"&gt;Run&lt;/font&gt; button to run the Studio for the first time.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-10-01T19:36:16Z</dc:date>
  </entry>
  <entry>
    <title>Building Inforama with Open Office 3.x in Eclipse IDE 1.0</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Jakub Jonik</name>
    </author>
    <updated>2009-10-01T10:42:20Z</updated>
    <published>2009-10-01T10:42:20Z</published>
    <summary type="html">Steps below describe how to configure //Inforama// with //Open Office 3.x// in //Eclipse// IDE.

==== Configure **Document Editor** project's build path. ====

Right-click the **DocumentEditor** project and select **Properties**. Go to **Java Build Path** and remove all references to the jar files pointed to by the **openoffice_lib** variable. Click **Add External JARs...** and select all jar files from directories: //openoffice_folder/Basis/program/classes// (e.g. //C:\Program Files\OpenOffice.org 3\Basis\program\classes//) and //openoffice_folder/URE/java// (e.g. //C:\Program Files\OpenOffice.org 3\URE\java//).
{{http://www.in4ama.org/resources/blog/wiki/eclipse_with_oo3/screen1.jpg|configure the build path}}

==== Create the **Launch configuration**. ====

In the **Document Editor** project properties dialog select **Run/Debug Settings**, choose **Java Application** and click **OK**. In the **Launch configuration properties** dialog specify as follows: 

- **Main** Tab
Specify the **main class** as //org.in4ama.editor.xui.Launcher//.
{{http://www.in4ama.org/resources/blog/wiki/eclipse_with_oo3/screen2.jpg|specify the main class}}

- **Arguments** Tab
Specify the **Program arguments** as //"openoffice_folder" 3// (e.g. //"C:\Program Files\OpenOffice.org" 3//).
{{http://www.in4ama.org/resources/blog/wiki/eclipse_with_oo3/screen3.jpg|specify the program arguments}}

- **Environment** Tab
Add a new variable named **UNO_PATH** and sets its value to //openoffice_folder/program// (e.g. //C:\Program Files\OpenOffice.org\program//).
{{http://www.in4ama.org/resources/blog/wiki/eclipse_with_oo3/screen4.jpg|specify UNO_PATH variable}}

==== Rebuild the DocumentEditor project ====</summary>
    <dc:creator>Jakub Jonik</dc:creator>
    <dc:date>2009-10-01T10:42:20Z</dc:date>
  </entry>
  <entry>
    <title>Building and Debugging 1.0</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Jakub Jonik</name>
    </author>
    <updated>2009-10-01T09:53:26Z</updated>
    <published>2009-10-01T09:53:26Z</published>
    <summary type="html">This section contains building and debugging tips for **Inforama**.</summary>
    <dc:creator>Jakub Jonik</dc:creator>
    <dc:date>2009-10-01T09:53:26Z</dc:date>
  </entry>
  <entry>
    <title>4 - Creating and working with PDF forms 1.7 (minor-edit)</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-11T15:40:31Z</updated>
    <published>2009-09-11T15:40:31Z</published>
    <summary type="html">&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;i&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Inforama allows you to create new PDF forms within the Studio using the embedded OpenOffice editor. Alternatively, you can import existing PDF forms into your Inforama project.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;Creating a PDF form from an OpenOffice document&lt;/h3&gt; &lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;To create the document click the &lt;font face="Courier New, monospace"&gt;File &amp;ndash; New document...&lt;/font&gt; menu item and the new document dialog will appear.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/newooacroformdoc.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: Creating a new AcroForm from Document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In this case we're creating a change of address form which needs to be printed out and signed by customers of Dividy Films. Enter the name &lt;font face="Courier New, monospace"&gt;ChangeOfAddressForm&lt;/font&gt; and select &lt;font face="Courier New, monospace"&gt;AcroForm from Document&lt;/font&gt; from the &lt;font face="Courier New, monospace"&gt;Document type&lt;/font&gt; dropdown list. Click the &lt;font face="Courier New, monospace"&gt;Create&lt;/font&gt; button and the new document will appear in the &lt;font face="Courier New, monospace"&gt;Document frame&lt;/font&gt; tree and the new document will open for editing in the OpenOffice editor.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When this document is saved it will be automatically converted to a PDF. In order to make form fields appear in the resulting PDF it's necessary to insert OpenOffice form controls into the document. To see the OpenOffice form controls toolbar make the OpenOffice menu bar visible and click the &lt;font face="Courier New, monospace"&gt;View &amp;ndash; Toolbars &amp;ndash; Form Controls&lt;/font&gt; menu item as shown in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/formcontrolsmenu.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Enabling the form controls toolbar&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The toolbar shown in figure 3 below shows the form control toolbar.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/formcontroltoolbar.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: The form control toolbar&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Begin creating the form by opening the new &lt;font face="Courier New, monospace"&gt;ChangeOfAddressForm&lt;/font&gt; document. Insert a frame into the document using the &lt;font face="Courier New, monospace"&gt;Insert &amp;ndash; Frame&lt;/font&gt; OpenOffice menu item. Resize the frame so that it appears about 4cm from the top of the document, is about 4cm in height and spans the width of the document. Now create a new 2 column x 5 row table in the frame. In the right hand columns we want to create text fields. First make sure design mode is switched on in OpenOffice by toggling the button indicated by the number &lt;font face="Courier New, monospace"&gt;1&lt;/font&gt; in figure 3. Next click the new Text Box button as indicated by the number 3 in figure 3. Draw the Text Box in the second column on the second row of the table.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Double-click the new Text Box to display the form control properties dialog as shown in figure 4. Change the default name of the Text Box and also change the &lt;font face="Courier New, monospace"&gt;Border&lt;/font&gt; property to &lt;font face="Courier New, monospace"&gt;Flat.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font face="Courier New, monospace"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/formcontrolproperties.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: Form control properties dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Continue to add the form controls and prompts until the table looks like that shown in figure 5 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/customerdetailsframe.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: The customer details frame&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Binding data to the PDF form&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In order to create the PDF form and bind data to it we now need to switch the view of the document. First save your changes and click the &lt;font face="Courier New, monospace"&gt;Switch to AcroForm&lt;/font&gt; button shown in figure 6.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/switchtoacroformbutton.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: Switch to acroform button&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The document is automatically converted to a PDF form as shown in figure 7.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/convertedpdf.png" /&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;font size="3"&gt;&lt;i&gt;Figure 7: The document converted to PDF&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The Text Box controls which were created in the OpenOffice editor are converted to PDF form fields and are listed in the &lt;font face="Courier New, monospace"&gt;Components Frame&lt;/font&gt; at the bottom left of the Studio. If you click on one of the names in the Component Frame the component will highlight in red in the editor. It is also possible to add new PDF form fields in this view but this is not recommended as the PDF document is generated from the OpenOffice document and any changes to the layout, etc. should be made in this.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In order to bind data from the database to the form fields expand the Data Frame, select the form field you wish to bind to and double-click the field which should appear there. The mapping will appear in the &lt;font face="Courier New, monospace"&gt;Data&lt;/font&gt; text box in the &lt;font face="Courier New, monospace"&gt;Components Frame&lt;/font&gt;. Continue to create your mappings and preview the document by clicking the &lt;font face="Courier New, monospace"&gt;Document Manager&lt;/font&gt; toolbar button. In the &lt;font face="Courier New, monospace"&gt;Document Manager&lt;/font&gt; dialog click the &lt;font face="Courier New, monospace"&gt;Preview&lt;/font&gt; button and the document will appear as in figure 8.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/previewooacroform.png" /&gt;&lt;/p&gt; &lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: Preview of the document with data merged&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Create a PDF letterhead&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Using this type of document it's possible to create a letterhead which can be applied to documents. To demonstrate this we'll create a new document of type AcroForm from Document with the name Letterhead. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When this document opens for editing insert logos and address information at the top and bottom of the document to produce something like that shown in figure 9.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/letterheadtemplate.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: Sample letterhead document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now to apply this letterhead to a document we need to create a compound document which we can do in the Letter Manager dialog. But first re-open the WelcomeLetter document and move the entire body of the letter down by about 6 lines in order to accommodate the header.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now click the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Manage documents...&lt;/font&gt; menu item and move the &lt;font face="Courier New, monospace"&gt;WelcomeLetter&lt;/font&gt; to the &lt;font face="Courier New, monospace"&gt;Selected fragments&lt;/font&gt; list. In the &lt;font face="Courier New, monospace"&gt;Background&lt;/font&gt; dropdown list select the &lt;font face="Courier New, monospace"&gt;Letterhead&lt;/font&gt; document and now click the &lt;font face="Courier New, monospace"&gt;Preview&lt;/font&gt; button. The document will appear as shown in figure 10.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/letterheadpreview.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: Previewing the letterhead document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Importing existing PDF forms&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In Inforama Studio it's possible to import and modify existing PDF forms. In this example Dividy Films have hired an external design company to create their application form. To import this form click the &lt;font face="Courier New, monospace"&gt;File &amp;ndash; Import a document... &lt;/font&gt;menu item and the import dialog will appear as in figure 11.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/importpdfdialog.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 11: Importing an existing PDF form&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Select &lt;font face="Courier New, monospace"&gt;PDF&lt;/font&gt; as the &lt;font face="Courier New, monospace"&gt;Document type&lt;/font&gt; from the dropdown list and locate the PDF on the filesystem. The &lt;font face="Courier New, monospace"&gt;Import as&lt;/font&gt; field will automatically default to the current file name but this can be changed if you want to import the document under a different name. Click the &lt;font face="Courier New, monospace"&gt;Import&lt;/font&gt; button and the document will appear in the tree in the Documents frame and will open for editing in the main editor.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/importedpdfeditor.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 12: The imported PDF form&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You can see that the PDF editor is similar to the one used when switching from the OpenOffice document earlier in this step. Once again, the PDF fields are listed in the &lt;font face="Courier New, monospace"&gt;Components frame&lt;/font&gt; on the bottom left of the Studio and data can be bound by double-clicking the fields in the &lt;font face="Courier New, monospace"&gt;Data frame&lt;/font&gt;. So we can go ahead and create the bindings as before and preview the document using the Letter manager dialog. The document will preview as shown below in figure 13&lt;/font&gt;&lt;/font&gt;.&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/pdfformpreview.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 13: Previewing the PDF form with merged data&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Modifying PDF forms&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In many cases the PDF documents which you import don't have form fields embedded within them or there may be more information which you would like to add. If this is the case then it's possible to add fields using Inforama Studio.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/pdftoolbar.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 14: The PDF editor toolbar&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		TD P { margin-bottom: 0cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Figure 14 shows the PDF editor toolbar which can be used to add and remove form fields&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="4" bordercolor="#000000" border="1" width="100%"&gt; 	&lt;col width="29*" /&gt; 	&lt;col width="227*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#e6e6e6" width="11%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Item&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6e6" width="89%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="1" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Zoom in on the PDF 			document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="2" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Zoom out from the 			PDF document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="3" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Select the page to 			edit in the document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="4" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Remove a component 			from the document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="5" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Unlock the 			document. If locked, components cannot be resized or moved&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="6" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Add a text field to 			the document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="7" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Add a bar code to 			the document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="8" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;8&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Add an image to the 			document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="9" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;9&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Add a checkbox to 			the document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="11%" sdval="10" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;10&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="89%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Preview the 			document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;As an example imagine that the form needed an amendment to include the customer reference. Unlock the form by clicking toolbar button &lt;font face="Courier New, monospace"&gt;5&lt;/font&gt; above. Add a text field to the document by clicking toolbar button &lt;font face="Courier New, monospace"&gt;6&lt;/font&gt; and clicking the form where you want it to appear. Resize the text component and set the background and border colours.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/textcompsettings.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 15: The text component properties&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now create the binding with the following text.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Reference : $F{customerDS.customer_id}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now preview the document and it will appear as shown in figure 16.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/PDFForms/pdfcontrolpreview.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 16: The custom text field previewing with merged data&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-11T15:40:31Z</dc:date>
  </entry>
  <entry>
    <title>3 - Datasources and Datasets 1.7</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-11T15:39:19Z</updated>
    <published>2009-09-11T15:39:19Z</published>
    <summary type="html">&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;   &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;i&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;h3 class="western"&gt;Importing the MySQL JDBC driver&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In this tutorial we are working with the Sakila database which runs on MySQL. In order to connect to this database we need to use a JDBC driver which is compatible with MySQL. You can download a MySQL JDBC driver from the MySQL site at &lt;a href="http://dev.mysql.com/downloads/connector/j/5.1.html"&gt;http://dev.mysql.com/downloads/connector/j/5.1.html&lt;/a&gt;.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Once downloaded, you can reference the jar file by clicking the &lt;font face="Courier New, monospace"&gt;Options &amp;ndash; Classpath editor...&lt;/font&gt; menu item and the Classpath dialog will appear as shown in figure 1.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/classpathdialog.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: The classpath dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;font face="Courier New, monospace"&gt;Add a JAR&lt;/font&gt; button and you will be asked to locate the jar file. Select the jar file and the path to it will appear in the list. Click the &lt;font face="Courier New, monospace"&gt;Save classpath&lt;/font&gt; button to save your changes.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="4"&gt;Creating a MySQL DataSource&lt;/font&gt;&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now that the JDBC driver has been referenced it's possible to connect to the Sakila database. To do this click the &lt;font face="Courier New, monospace"&gt;Data &amp;ndash; Connections/Datasources...&lt;/font&gt; menu item and the wizard shown on the left of figure 2 will be displayed. Click the New button and the screen shown on the right of figure 2 will appear.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/newjdbcconn.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Wizard to add JDBC connection&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Select &lt;font face="Courier New, monospace"&gt;JDBC Connection&lt;/font&gt; from the list and click the &lt;font face="Courier New, monospace"&gt;Next&lt;/font&gt; button. The next screen is where the database connection is established.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/jdbcsettings.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: Configuring the JDBC connection&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="4" bordercolor="#000000" border="1" width="100%"&gt; 	&lt;col width="34*" /&gt; 	&lt;col width="77*" /&gt; 	&lt;col width="144*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#e6e6e6" width="13%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Field&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6e6" width="30%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Value&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6e6" width="56%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="13%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Name&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="30%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;sakilaDB&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="56%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is the name of 			the connection being created and will be use throughout Inforama 			as a reference&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="13%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Database&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="30%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;MySQL&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="56%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is a dropdown 			list for convenience. Select the MySQL driver and the following 			fields will be populated with template configurations&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="13%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Driver&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="30%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;com.mysql.jdbc.Driver&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="56%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is the name of 			the JDBC class file which is used to register the MySQL JDBC 			driver&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="13%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;URL&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="30%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;jdbc:mysql://[server]/sakila&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="56%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is the URL to 			the database. Replace the servername with localhost if the 			database is running on the local machine&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="13%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;User&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="30%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;[MySQL User]&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="56%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is a valid 			MySQL user&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="13%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Password&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="30%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;[MySQL Password]&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="56%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is the 			password for the MySQL user&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;br /&gt;&amp;nbsp;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When the connection information has been entered click the &lt;font face="Our"&gt;Test connection&lt;/font&gt; button and you wil see the message &lt;font face="Courier New, monospace"&gt;Connection succeeded&lt;/font&gt; if everything has been configured correctly. Click the &lt;font face="Courier New, monospace"&gt;Save&lt;/font&gt; button to save this connection.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Creating a MySQL Dataset&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now that the dataconnection has been created it's possible to define a query which will retrieve data from the database. To do this click the &lt;font face="Courier New, monospace"&gt;Data &amp;ndash; Datasets...&lt;/font&gt; menu item. The Datasets dialog will appear as in figure 4.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/datasetquery.png" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: Datasets dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In this case there is only one Datasource configured for the project &amp;ndash; sakilaDB. It's possible to have more so make sure that the correct datasource is selected. Enter a name for the new Dataset &amp;ndash; in this case were calling it customerDS. Enter the query into the main query area. The query being used is...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;SELECT customer_id, first_name, last_name, email, cust_addr.address, cust_addr.address2, cust_addr.district, cust_addr.postal_code, cust_addr.phone, city.city, country.country FROM customer, address as cust_addr, city, country WHERE customer.address_id = cust_addr.address_id AND city.city_id = cust_addr.city_id AND country.country_id = city.country_id&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;font face="Courier New, monospace"&gt;Execute&lt;/font&gt; button and a list of the fields returned by the query will appear on the list on the right of the dialog. Click the &lt;font face="Courier New, monospace"&gt;Save&lt;/font&gt; button to save the dataset and the &lt;font face="Courier New, monospace"&gt;Close&lt;/font&gt; button to dismiss the dialog.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This new dataset can now be accessed from the &lt;font face="Courier New, monospace"&gt;Data frame&lt;/font&gt; in the editor. To see this expand the &lt;font face="Courier New, monospace"&gt;Data frame&lt;/font&gt; as shown in figure 5.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/dataframe.png" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: Previewing a dataset in the data frame&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="4" bordercolor="#000000" border="1" width="100%"&gt; 	&lt;col width="26*" /&gt; 	&lt;col width="230*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#e6e6e6" width="10%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Item&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6e6" width="90%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="1"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Launch the Dataset 			editor&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="2"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Display the fields 			from the dataset selected in 4 below&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="3"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Prefix field names 			with their corresponding table names&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="4"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Menu to allow the 			dataset to be switched&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="5"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;List of field names 			retrieved from the dataset&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="6"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Preview of data in 			the dataset&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="7"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Show parameters 			dialog to preview a specific row in the dataset where parameters 			are used&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="8"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;8&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Insert the selected 			field into the current document with formatting applied&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="10%" sdnum="6153;" sdval="9"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;9&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="90%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Insert a text box 			acro field into the current document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the down arrow icon identified by the number 2 to preview the fields in the dataset. Click the table icon identified by the number 3 to prefix the field names with their corresponding table names. This is useful where fields from different tables have the same name. Click the button identified by the number 7 to launch the parameter dialog and preview the data in the dataset.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;We now want to start merging the data from this Dataset into documents within our project. Re-open the WelcomeLetter document template which was created in the previous step in the tutorial and where it said 'Dear Subscriber', delete the word 'Subscriber', place the cursor after the word 'Dear' and double-click the field &lt;font face="Courier New, monospace"&gt;first_name&lt;/font&gt; in the &lt;font face="Courier New, monospace"&gt;Data frame&lt;/font&gt;. The field name will be inserted into the document as shown in figure 6 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/fieldplaceholder.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: Field placeholder within the document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now preview the document as described in the previous section of this tutorial and the generated document will appear as shown in figure 7 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/previewdata.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: Previewing the document with merged data field&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;&lt;/style&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Specifying Parameters for Datasets&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;So far we have merged data with the document in such a way that the first row from the dataset is used. Naturally we want to control what row is used by applying a filter to the dataset query. This is achieved by using a parameter.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Create a new parameter as described in the previous section called &lt;font face="Courier New, monospace"&gt;customer_id&lt;/font&gt;. Once again open the Dataset dialog shown in figure 4 and select the Dataset &lt;font face="Courier New, monospace"&gt;customerDS&lt;/font&gt;. Change the query to add this clause to the end...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;AND country.country_id = city.country_id and customer.customer_id = '$P{customer_id}'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;As a convenience you can automatically insert the parameter by clicking the &lt;font face="Courier New, monospace"&gt;Add a parameter&lt;/font&gt; button. The dialog shown in figure 8 below will be displayed. Select the parameter you wish to insert and click the &lt;font face="Courier New, monospace"&gt;OK&lt;/font&gt; button.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/addparamdialog.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: Adding a parameter automatically&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now when we go to preview the document again we can supply the new &lt;font face="Courier New, monospace"&gt;customer_id&lt;/font&gt; parameter in order to filter on the row we require.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/parameterpreview.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: Previewing filtered data&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Creating a Spreadsheet Datasource&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In many instances, customer and other data is stored in spreadsheets so it can be very convenient to work directly with these spreadsheets. Since Inforama version 1.2 data from spreadsheets can be used in much the same way as database data.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In order to demonstrate this feature of Inforama we will export the data from the staff table to a spreadsheet. Run the following query to generate a CSV file from the staff table...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;SELECT &amp;quot;staff_id&amp;quot;, &amp;quot;first_name&amp;quot;, &amp;quot;last_name&amp;quot;, &amp;quot;email&amp;quot;, &amp;quot;username&amp;quot; FROM staff&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Union SELECT staff_id, first_name, last_name, email, username FROM staff&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;INTO OUTFILE 'c:/temp/staff.csv'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;FIELDS TERMINATED BY ','&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;ENCLOSED BY '&amp;quot;'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;LINES TERMINATED BY '\n'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Note the path to the csv file as specified by the line beginning &lt;/font&gt;INTO OUTFILE&lt;font face="Arial, sans-serif"&gt;.  Open the generated csv file in Excel or Calc and save as a .xls file. A preview of the spreadsheet can be seen in figure 10 below.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/staffspreadsheet.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: The exported staff spreadsheet&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Now we need to create a Datasource from the spreadsheet as before. Open the Datasource dialog shown in figure 2 by clicking the &lt;/font&gt;Data &amp;ndash; Connections/Datasources...&lt;font face="Arial, sans-serif"&gt; menu item. On the next page in the wizard select Spreadsheet from the list, click next and the screen shown in figure 11 will appear.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/spreadsheetdatasource.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 11: Creating the spreadsheet datasource&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Again, give the datasource a name &amp;ndash; in this case we have called it &lt;/font&gt;staffSheet.&lt;font face="Arial, sans-serif"&gt; Locate the spreadsheet file on the filesystem and click the &lt;/font&gt;Save&lt;font face="Arial, sans-serif"&gt; button to complete this step.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Now we need to create a Dataset from this spreadsheet which will filter on the staff_id. Using the &lt;/font&gt;parameters frame&lt;font face="Arial, sans-serif"&gt; create the parameter &lt;/font&gt;staff_id&lt;font face="Arial, sans-serif"&gt;. Click the &lt;/font&gt;Data &amp;ndash; Datasets...&lt;font face="Arial, sans-serif"&gt; menu item. The Datasets dialog will appear as in figure 4. Select the staffSheet Datasource from the list of datasources and enter the following query into the query editor...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;SELECT * FROM staff where staff_id = '$P{staff_id}'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the Dataset name &lt;font face="Courier New, monospace"&gt;staff_ss_DS&lt;/font&gt;, click &lt;font face="Courier New, monospace"&gt;Execute&lt;/font&gt; and then &lt;font face="Courier New, monospace"&gt;Save&lt;/font&gt; to complete. The dataset configuration will appear as in figure 12.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/ssdatasetquery.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 12: Spreadsheet dataset setup&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now create a new letter called StaffWelcome and insert data placeholders from the  &lt;font face="Courier New, monospace"&gt;staff_ss_DS&lt;/font&gt;, dataset as shown in figure 13.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/staffletter.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 13: Creating a letter template with spreadsheet data placeholders&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now preview the document and enter a value for the staff_id. The document will preview as shown below in figure 14.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DatasourcesDatasets/spreadsheetpreview.png" /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 14: Preview the document merged with spreadsheet data&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-11T15:39:19Z</dc:date>
  </entry>
  <entry>
    <title>6 - Table Iterations 1.4 (minor-edit)</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-11T15:38:12Z</updated>
    <published>2009-09-11T15:38:12Z</published>
    <summary type="html">&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span style="font-size: small;"&gt;&lt;i&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Inforama has the ability to iterate datasets to duplicate document elements such as tables. This can be useful where a list of items relating to a customer or account need to be listed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;Simple Table Iterations&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In this example we'll create a simple list of films filtered by rating. To begin with, create a new parameter called &lt;font face="Courier New, monospace"&gt;file_rating&lt;/font&gt; and a new dataset called &lt;font face="Courier New, monospace"&gt;film_by_rating&lt;/font&gt; with the following SQL statement...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;SELECT title, length, rental_rate, special_features FROM film WHERE rating = '$P{film_rating}'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;And now create a new letter template called &lt;font face="Courier New, monospace"&gt;FilmsByRating&lt;/font&gt;. Add an introduction paragraph at the top of the document and follow it will a new 4 column by 1 row table as shown in figure 1.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/simpletablecommand.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: Simple table iteration command&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;As you can see the table is preceeded by the command &lt;font face="Courier New, monospace"&gt;$iterateRows{film_by_rating}&lt;/font&gt; which tells the Inforama engine to iterate the following table with the dataset between the braces which in this case is &lt;font face="Courier New, monospace"&gt;film_by_rating&lt;/font&gt;. When this document is previewed it will appear as in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/simpletablepreview.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Simple table iteration preview&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is a very basic table and it would be nice to add a header row which shows the column names. Create a new row in the table before the existing row and enter the column names in this new row. You can also format this new row in whatever way you want it to appear as shown in figure 3.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/simpletablecommandheader.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: Simple table command with header&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The command has now been changed to &lt;font face="Courier New, monospace"&gt;$iterateRows{film_by_rating, 2}&lt;/font&gt;. The second parameter in this command indicates that the second row in the table needs to be iterated when generating the table. We have also changed the &lt;font face="Rou"&gt;length&lt;/font&gt; and &lt;font face="Rou"&gt;rental_rate&lt;/font&gt; columns to align their data to the right. The &lt;font face="Courier New, monospace"&gt;length&lt;/font&gt; field also includes the text mins after the value and the &lt;font face="Courier New, monospace"&gt;rental_rate&lt;/font&gt; field is preceded by the euro symbol.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now when previewed the document will appear as shown in figure 4.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/simpletablepreviewheader.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: Simple header table iteration preview&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;&lt;/style&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Sub Tables&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In many cases it's necessary to have tables within tables and this is possible with Inforama. Begin by creating a new parameter called &lt;font face="Courier New, monospace"&gt;numInCategory&lt;/font&gt; in the project. Next create a new dataset called &lt;font face="Courier New, monospace"&gt;allCategories&lt;/font&gt; with the following SQL Statement...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;select * from category&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Create another new dataset called &lt;font face="Courier New, monospace"&gt;filmsInCategory&lt;/font&gt; with the following SQL Statement...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;select film.* from film, film_category where film.film_id=film_category.film_id and film_category.category_id = $F{allCategories.category_id} limit 0, $P{numInCategory}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The second dataset refers to the first in the where clause and limits the output of films in the category to the number specified by the &lt;font face="Courier New, monospace"&gt;numInCategory&lt;/font&gt; parameter.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now you can create the document template which will include the table as shown in figure 5.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/subtabletemplate.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: Sub table template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The first table has a single cell and is preceded by the command&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; font-weight: normal; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; font-weight: normal; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="3"&gt;$iterateRows{allCategories}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; font-weight: normal; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; font-weight: normal; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Within the cell, the name of the current category is displayed and after this another 3 column by 2 row table is created. The instruction before this table is &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; font-weight: normal; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; font-weight: normal; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;$iterateRows{filmsInCategory, 2}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; font-weight: normal; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;span style="font-weight: normal;"&gt;When the document template is previewed it will appear as shown in figure 6.&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;span style="font-weight: normal;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/subtablepreview.png" /&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: Preview of the sub table&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;b&gt;Using Table Templates&lt;/b&gt;&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;If you intend to format several tables using the same styling you might want to consider using a table template. This will allow you to refer to the same table template from any number of documents. You can also use elements of the table templates without having to use all of them.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Begin by clicking the &lt;font face="Courier New, monospace"&gt;File &amp;ndash; New template...&lt;/font&gt; to open the new template dialog as shown in figure 7.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/newtemplatedialog.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: New template dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the name you want to give the new template in the &lt;font face="Courier New, monospace"&gt;Template name&lt;/font&gt; field and make sure that the &lt;font face="Courier New, monospace"&gt;Template type&lt;/font&gt; dropdown list has &lt;font face="Courier New, monospace"&gt;Table&lt;/font&gt; selected. Click the &lt;font face="Courier New, monospace"&gt;Create&lt;/font&gt; button and the new template will open as an OpenOffice document in the main editor and the new template will appear in the tree of documents in the &lt;font face="Courier New, monospace"&gt;documents frame&lt;/font&gt;.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In the OpenOffice document create a new 2 column by 1 row table and format the cells as shown in figure 8.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/tabletemplate.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: The table template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The text in the first column has red text and we'll use this to display information in a table in another document. Create a new dataset called &lt;font face="Courier New, monospace"&gt;customerRentals&lt;/font&gt; with the following SQL Statement.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;select film.film_id, film.title, rental.rental_date, film.rental_duration, rental.return_date from film, rental, inventory where film.film_id=inventory.film_id and inventory.inventory_id=rental.inventory_id and rental.customer_id = '$P{customerId}' order by rental.rental_date&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;And create another dataset called customer with the following SQL Statement.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;select customer.first_name, customer.last_name, customer.email, city.city, address.address, address.address2, address.phone from customer, address, city where customer.address_id=address.address_id and city.city_id=address.city_id and customer.customer_id = '$P{customerId}'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Next create a new letter fragment called &lt;font face="Courier New, monospace"&gt;customerDesc&lt;/font&gt; as shown in figure 9.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/customerpara.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: Customer paragraph&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;And follow this by creating a new letter template &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/tablelettertemplate.png" alt="" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: The main letter template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The first line in this document tells the Inforama engine to include the customerDesc fragment. The second line outputs the customer id and the third line before the table is the following instruction.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;$createTable{ customerRentals, $template{ *.*-&amp;gt;customerRentals.value('return_date') == null ? rentalCells.at(0,0) : rentalCells.at(1,0) } }&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The first parameter to this call is the name of the dataset to be used to create the table. The second parameter checks if the &lt;font face="Courier New, monospace"&gt;return_date&lt;/font&gt; field in the &lt;font face="Courier New, monospace"&gt;customerRentals&lt;/font&gt; dataset is null. If it is then the first cell in the  &lt;font face="Courier New, monospace"&gt;rentalCells&lt;/font&gt; template should be used otherwise the second one should be used. The resulting document will appear as shown in figure 11.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/TableIterations/tabletemplatepreview.png" alt="" /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 11: The table template preview&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;As you can see we've set one of the rental rows to have a null &lt;font face="Courier New, monospace"&gt;return_date&lt;/font&gt; value with the result that the row uses the first column in the table template and the text is displayed in red.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;Customising Table Output from Java&lt;/h3&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;As you imagine, the code required to be used in-line in the letter templates can get quite verbose if there are a number of checks to be made in order to determine what template to use. In these cases it's useful to create a custom Java class which will take care of the code to apply the formatting.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;To begin this example create a new Java class called &lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;CustomTableFormatter&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; as listed below&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;package&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; org.inforama.formatters;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;import&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; java.util.Enumeration;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;import&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; java.util.Properties;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;import&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; org.in4ama.documentautomator.DocumentRepository;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;import&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; org.in4ama.documentautomator.documents.xslfo.templates.XslFoTableTemplate;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;import&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; org.in4ama.documentengine.format.table.DataSetTableFormatter;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;class&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; CustomTableFormatter &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;extends&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; DataSetTableFormatter {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;Don't&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;include&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;ID&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;column&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;in&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;result&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;table&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#646464"&gt;@Override&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;boolean&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; isCurrentIncluded() {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp; &lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; currentCol = getCurrDSCol();&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp; &lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; (!&lt;/font&gt;&lt;font color="#0000c0"&gt;dataSet&lt;/font&gt;&lt;font color="#000000"&gt;.getColumnName(currentCol).equalsIgnoreCase(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;film.film_id&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;Gets&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;of&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;columns&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;that&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;should&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;appear,&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;since&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;we&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;don't&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;include&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;id&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;column,&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;subtract&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;from&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;what&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;would&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;be&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;returned&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;by&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;default.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#646464"&gt;@Override&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; getNumCols() {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;super&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.getNumCols() - 1;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;Change&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;column&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;widths&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;of&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;first&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;and&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;fourth&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;column&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;(column&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;indexes&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;with&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;0,&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;hence&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;and&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;0&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;in&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;conditions)&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#646464"&gt;@Override&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; Properties getColumnProperties(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; colIdx) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp; Properties properties = &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;super&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.getColumnProperties(colIdx);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; (colIdx == 2) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;			properties.put(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;column-width&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;3cm&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		} &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; (colIdx == 0) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;			properties.put(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;column-width&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;8cm&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;		}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; properties;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;Change&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;properties&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;of&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;cell&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;contents&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;in&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;first&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;column,&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;use&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;rentalCells&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;template's&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;first&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;cell.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#646464"&gt;@Override&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; Properties getCurrentContentProperties() {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp; Properties properties = &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;super&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.getCurrentContentProperties();&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;		&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		DocumentRepository documentRepository = &lt;/font&gt;&lt;font color="#0000c0"&gt;evaluationContext&lt;/font&gt;&lt;font color="#000000"&gt;.getProjectContext().getDocumentRepository();&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		XslFoTableTemplate template = (XslFoTableTemplate)documentRepository.getDocument(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;rentalCells&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;,&amp;nbsp; XslFoTableTemplate.&lt;/font&gt;&lt;font color="#0000c0"&gt;&lt;i&gt;TYPE&lt;/i&gt;&lt;/font&gt;&lt;font color="#000000"&gt;);				&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;		&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; (getCurrentColumn() == 0) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;			properties = template.getContentProperties(0, 0);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;			&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;		}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; properties;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;Change&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;properties&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;of&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;cells&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;in&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;first&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;column,&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;use&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;rentalCells&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;template's&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;first&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;cell.&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;For&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;other&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;cells&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;use&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;properties&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;of&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;first&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;row's&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;last&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;cell&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;in&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;&amp;quot;myTemplate1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#3f5fbf"&gt;template.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	 &lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#646464"&gt;@Override&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; Properties getCurrentCellProperties() {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		Properties properties = &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;super&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.getCurrentCellProperties();&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;		&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		DocumentRepository documentRepository = &lt;/font&gt;&lt;font color="#0000c0"&gt;evaluationContext&lt;/font&gt;&lt;font color="#000000"&gt;.getProjectContext().getDocumentRepository();&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		XslFoTableTemplate template = (XslFoTableTemplate)documentRepository.getDocument(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;rentalCells&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;,&amp;nbsp; XslFoTableTemplate.&lt;/font&gt;&lt;font color="#0000c0"&gt;&lt;i&gt;TYPE&lt;/i&gt;&lt;/font&gt;&lt;font color="#000000"&gt;);		&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;			&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; (getCurrentColumn() == 0) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;			properties = template.getCellProperties(0, 0);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		} &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; properties = template.getCellProperties(1,0);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;		}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; properties;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	}	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;This custom class extends the Inforama &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;DataSetTableFormatter&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; class and which, in turn, implements the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;TableFormatter&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; interface. If you look at the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;getNumCols&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; method you'll see that we will display all of the fields less one as we don't want the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;film_id&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; field to appear in the resulting table. Now take a look at the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;isCurrentIncluded&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;  field and you'll see that if the class is processing the column who's name is film.film_id it will return false indicating that the field shouldn't appear.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;The &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;getColumnProperties&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; method shows how the individual cell properties can be set. In this case the cells in columns 0 and 2 are set to non-default values and the others are left as the default values. In the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;getCurrentCellProperties&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; method it's possible you can see that the table template we created earlier is used to load the properties for the cell.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;In order to reference this class from the document templates you will need to use the following command.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: rgb(230, 230, 230) none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;$createCustomTable{org.inforama.formatters.CustomTableFormatter, customerRentals}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;This simplifies the template command quite a bit and moves the logic into the Java class where it can be reused if necessary.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-11T15:38:12Z</dc:date>
  </entry>
  <entry>
    <title>8 - Sending Mailshots 1.6 (minor-edit)</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-11T15:36:45Z</updated>
    <published>2009-09-11T15:36:45Z</published>
    <summary type="html">&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;&lt;p&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;i&gt;&lt;span style="font-size: small;"&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In version 1.3 a dedicated mailshot wizard dialog was introduced into Inforama Studio. This has given greater control over how mailshots are sent. In this step we're going to create an email template using OpenOffice and attach a rental history PDF document to the email.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;&lt;font color="#000000"&gt;Create the Datasets&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;To begin with we'll create the main dataset containing the customers which we wish to target with the mailshot. We will only be targeting customers in a single district so you will also need to create a parameter called &lt;font face="Courier New, monospace"&gt;district&lt;/font&gt;.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Open the dataset dialog and create a dataset called &lt;font face="Courier New, monospace"&gt;customer_district&lt;/font&gt; with the following SQL statement.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: 1px solid rgb(230, 230, 230); padding: 0.15cm; background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;select customer_id, first_name, last_name, email from customer, address where address.district = '$P{district}' and customer.address_id = address.address_id&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Next we need to create the dataset which will produce the rental history table so create another new dataset called customer_rentals_list with the following SQL statement.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: 1px solid rgb(230, 230, 230); padding: 0.15cm; background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;select film.film_id, film.title, rental.rental_date, film.rental_duration, rental.return_date from film, rental, inventory where film.film_id=inventory.film_id and inventory.inventory_id=rental.inventory_id and rental.customer_id = $F{customer_district.customer_id} order by rental.rental_date&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: rgb(255, 255, 255) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;As you can see the second dataset references the first, using the &lt;font face="Courier New, monospace"&gt;customer_district.customer_id&lt;/font&gt; field to produce the table for the correct customer.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;Create the Documents&lt;/h3&gt; &lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Create a new letter template called &lt;font face="Courier New, monospace"&gt;MailshotCustomerRentals&lt;/font&gt; similar to that shown in figure 1.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/rentalstemplate.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: The rental history letter template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The first line simply outputs the customer's first and last names. The second line is the instruction to create the table using the &lt;font face="Courier New, monospace"&gt;customer_rentals_list&lt;/font&gt; dataset and the single cell table simply outputs the fields in the dataset. If you preview this document now it will appear as shown in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/rentaldocpreview.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Preview of the rental history document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Next create an email body template called &lt;font face="Courier New, monospace"&gt;RentalsEmail &lt;/font&gt;as shown in figure 3.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/emailtemplate.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: The email template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Note that we use the same dataset, &lt;font face="Courier New, monospace"&gt;customer_district&lt;/font&gt;, that's being iterated.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Next create the compound document, &lt;font face="Courier New, monospace"&gt;CustomerRentalsEmail&lt;/font&gt;, that includes these documents by opening the &lt;font face="Courier New, monospace"&gt;Document manager&lt;/font&gt; dialog as shown in figure 4.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/compounddocument.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: Select the document to be sent&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Move the CustomerRentalsEmail document to the list to be sent and click the Next button to display the screen shown in figure 6.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_selectdataset.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: Select the dataset to iterate&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Select the customer_district dataset that we created earlier and click the Next button to display the screen shown in figure 7.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_selectemailfield.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: Select the email field from the dataset&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click OK on the dialog and the To email field will populate automatically as shown in figure 8.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_selectedemailfield.png" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: The To email field populated&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The &lt;font face="Courier New, monospace"&gt;To&lt;/font&gt; email field is automatically populated with the required syntax in order to send the emails to the email field from the dataset.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the Next button to proceed to the screen in figure 9.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_events.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: Specifying actions for the mailshot&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;After each email in the mailshot is sent we want to insert a row into the &lt;font face="Courier New, monospace"&gt;mailshot_history&lt;/font&gt; table that we created earlier. The syntax we use for this is the following.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: 1px solid rgb(230, 230, 230); padding: 0.15cm; background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;sakilaDB.execute(&amp;quot;INSERT INTO mailshot_history (customer_id, mailshot_id, date_sent) VALUES ( $F{customer_district.customer_id}, 3, now())&amp;quot;)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;We use the &lt;font face="Courier New, monospace"&gt;sakilaDB&lt;/font&gt; datasource as the database connection in order to execute the SQL statement. The current &lt;font face="Courier New, monospace"&gt;customer_district.customer_id&lt;/font&gt; field value is used as the value to insert into the table.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the Next button and the screen shown in figure 10 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/maildocnames.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: Specifying the generated document filename format&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This screen allows you to specify the format for the filename of the generated documents. We'll see how this can be used later when the documents have been created. In this case the format is the following&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: 1px solid rgb(230, 230, 230); padding: 0.15cm; background: rgb(230, 230, 230) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;$F{customer_district.customer_id}-$document&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In this case we want the document name to begin with the value in the &lt;font face="Courier New, monospace"&gt;customer_district.customer_id&lt;/font&gt; field.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the Next button to proceed to the screen shown in figure 11.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_parameters.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 11: Specifying parameters for the mailshot&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This screen allows you to specify the parameters which are required to generate the documents. In this example we're going to send the mailshot to all users located in the &lt;font face="Courier New, monospace"&gt;district&lt;/font&gt; of Texas.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click &lt;font face="Courier New, monospace"&gt;Next&lt;/font&gt; and the mailshot documents will generate and display in the list shown in figure 12.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_generatedlist.png" alt="" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 12: List of the generated documents&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This screen has a list of mailshot recipients with an entry for each row in the filtered dataset. The mailshot has not yet been processed and this screen allows you to preview the documents before they are sent. Before we preview the documents click the &lt;font face="Courier New, monospace"&gt;Save script&lt;/font&gt; button and the dialog shown in figure 13 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/save_script.png" alt="" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 13: Save the mailshot script&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter a name for the script and click the &lt;font face="Courier New, monospace"&gt;OK&lt;/font&gt; button to save the script.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Double-click a row in the table in figure 12 and the dialog shown in figure 14 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mailshotdetails.png" alt="" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 14: Mailshot details dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The &lt;font face="Courier New, monospace"&gt;To&lt;/font&gt; address contains the email address to which the email will be sent. Now click the &lt;font face="Courier New, monospace"&gt;Show Document&lt;/font&gt; button and a preview of the document will be displayed as shown in figure 15.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_documentpreview.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 15: Preview the generated document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now click the Show Email button in figure 14 and the email preview will display with the plain text version of the email as shown in figure 16.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_emailpreview.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 16: Email preview dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now click the Show events button in figure 14 and the dialog shown in figure 17 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/mail_eventpreview.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 17: Preview the generated events&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You can see that the SQL statement which inserts into the &lt;font face="Courier New, monospace"&gt;mailshot_history&lt;/font&gt; table is generated with the correct value for the &lt;font face="Courier New, monospace"&gt;customer_id&lt;/font&gt; field.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Next click the &lt;font face="Courier New, monospace"&gt;Save Documents&lt;/font&gt; button in figure 12 and select an empty directory to save the documents into. The documents will be saved with the name format we specified in figure 10. Figure 18 shows the saved documents in windows explorer.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/saveddocuments.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 18: The saved documents&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now we'll go ahead and process the mailshot by clicking the Next button in figure 12. The list in the mailshot dialog will update as each email is sent as shown in figure 19.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/sendmailshot.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 19: Sending the mailshot&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The emails are sent and will appear in the recipients inbox as shown in figure 20.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/Mailshots/receivedemail.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 20: The delivered email&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;That completes the mailshot so now close the mailshot dialog and reopen it. In the screen shown in figure 5 click the &lt;font face="Courier New, monospace"&gt;Open Script&lt;/font&gt; button and select the &lt;font face="Courier New, monospace"&gt;district_script&lt;/font&gt; from the list presented. Now go through the mailshot again by clicking &lt;font face="Courier New, monospace"&gt;Next&lt;/font&gt; on each screen and you will see the values in the screen populate automatically.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-11T15:36:45Z</dc:date>
  </entry>
  <entry>
    <title>7 - Email Templates, Compound Documents and Packs 1.3 (minor-edit)</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-09T11:55:09Z</updated>
    <published>2009-09-09T11:55:09Z</published>
    <summary type="html">&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;   &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;i&gt;&lt;span style="font-size: small;"&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Once letter templates have been setup it's possible to email them. In doing so the email body which will be addressed to the user needs to be defined. Once again OpenOffice is used to create these templates.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;Configuring the SMTP Settings&lt;/h3&gt; &lt;p style="background: transparent none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Before you send emails you will need to configure your Inforama project with valid SMTP settings. Click the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Properties...&lt;/font&gt; menu item to display the &lt;font face="Courier New, monospace"&gt;Project settings&lt;/font&gt; dialog as shown in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="background: transparent none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="background: transparent none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/emailsettings.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="background: transparent none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: The project settings dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Select the email node from the tree on the left of the dialog and enter some valid SMTP settings similar to those shown in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;Create an Email Template&lt;/h3&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now to create the email template click the &lt;font face="Courier New, monospace"&gt;File &amp;ndash; New document...&lt;/font&gt; menu item to show the &lt;font face="Courier New, monospace"&gt;New document&lt;/font&gt; dialog shown in figure 2.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/newemaildialog.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Create a new email template with the new document dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the name of the email template you wish to create &amp;ndash; in this case the name is &lt;font face="Courier New, monospace"&gt;WelcomeMail&lt;/font&gt;. Select &lt;font face="Courier New, monospace"&gt;Email&lt;/font&gt; as the document type from the dropdown list. The new template will appear in the tree in the document frame in the editor and will also open in the OpenOffice editor.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Create the email template with whatever datafields and parameters you want within the email body. An example email template is shown in figure 3 below.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/emailtemplate.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: The email template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This template contains an image. This image needs to be inserted into the document as a linked image and not embedded within the document. To make sure that it's done in this way click the button indicated by the toolbar button 1 in figure 3.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now it's possible to test how this email template will appear when it's emailed to a customer. Click the button indicated by the toolbar button 2 in figure 3 and the dialog shown in figure 4 will appear.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/emailparamsdialog.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: The email parameter dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the email address to which you want to send the email and also enter a sample email subject. Any parameters which are required by the email can be entered in this dialog. When the information has been entered click the &lt;font face="Courier New, monospace"&gt;Send an email&lt;/font&gt; button to send it and it will arrive in your email client as shown in figure 5.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/receivedemail.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: The test email viewed in the email client&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Creating a compound document&lt;/h3&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You can create a compound document which will consist of several different elements using the &lt;font face="Courier New, monospace"&gt;Letter manager&lt;/font&gt; dialog. Click the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Manage documents...&lt;/font&gt; menu item to display the &lt;font face="Courier New, monospace"&gt;Letter manager&lt;/font&gt; dialog shown in figure 6.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/lettermanager.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: The letter manager dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Add the &lt;font face="Courier New, monospace"&gt;CustomerRentalsClass&lt;/font&gt; letter template to the list of selected fragments and select the &lt;font face="Courier New, monospace"&gt;WelcomeMail&lt;/font&gt; Email template from the dropdown list. Enter a name for the compound document you want to create and also enter the email subject which is going to appear when the email arrives. Click the &lt;font face="Courier New, monospace"&gt;Save&lt;/font&gt; document button to save the compound document.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You can test the email process within the Studio using the &lt;font face="Courier New, monospace"&gt;Documents and Packs Generator&lt;/font&gt; dialog. Click the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Generate documents and packs...&lt;/font&gt; menu item. The dialog shown in the first page of figure 7 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/docgen1.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: Steps 1 &amp;amp; 2 of the document generator&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Leave the &lt;font face="Courier New, monospace"&gt;request type&lt;/font&gt; as the default &lt;font face="Arial, sans-serif"&gt;Normal&lt;/font&gt; and select the &lt;font face="Courier New, monospace"&gt;CustomerRentalsEmail&lt;/font&gt; document from the list of avaliable documents. Click the &lt;font face="Courier New, monospace"&gt;Next&lt;/font&gt; button and on the second page select the &lt;font face="Courier New, monospace"&gt;CustomerRentalsEmail&lt;/font&gt;. Select th&lt;font face="Arial, sans-serif"&gt;e Email parameters checkbox and &lt;/font&gt;enter the email address to which the email should be sent. Click the Next button and the first screen shown in figure 8 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/docgen2.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: Steps 3 &amp;amp; 4 of the document generator&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the parameters required for the generation process and click the Next button. The email will be sent and finally the second screen shown in figure 8 will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/emailedletter.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: The emailed letter&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This time when the email arrives the generated letter will be attached and can be opened by the recipient.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;Creating Packs&lt;/h3&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;If you want to send multiple documents in a single email you can organise several documents into a pack. Click the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Manage packs... &lt;/font&gt;menu item to display the dialog shown in figure 10.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/EmailCompPacks/packmanager.png" alt="" /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: Creating a pack with the pack manager&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Move the documents you want to include as part of this pack to the selected documents list on the right of the dialog. Enter a name for the pack, select the &lt;font face="Courier New, monospace"&gt;WelcomeMail&lt;/font&gt; email template and enter an email subject. Click the &lt;font face="Courier New, monospace"&gt;Save pack&lt;/font&gt; button to save it and close the dialog.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;font face="Courier New, monospace"&gt;Project &amp;ndash; Generate documents and packs...&lt;/font&gt; menu item once again to display dialog shown in the first page of figure 7. This time the new pack will be displayed in the dialog and when you send it by email it will have the two pack documents attached.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-09T11:55:09Z</dc:date>
  </entry>
  <entry>
    <title>5 - Data formatting and expressions 1.4</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-09T09:53:24Z</updated>
    <published>2009-09-09T09:53:24Z</published>
    <summary type="html">&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span style="font-size: small;"&gt;&lt;i&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;So far we have merged data directly into the generated documents as is, but in many cases it's desirable to manipluate the data before it gets inserted. It may also be required to check data values in order to set the state on checkboxes. In this section we'll look at how the built-in data formatters can be used to automatically format data and also how custom formatters can be created in Java and introduced into your projects.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Basic formatting&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;To begin with, we'll look at how you might want to format string, numeric, currency and date data. Before doing so we'll amend the customer query to include the fields &lt;font face="Courier New, monospace"&gt;create_date, last_update&lt;/font&gt; and &lt;font face="Courier New, monospace"&gt;active&lt;/font&gt;.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;SELECT customer_id, first_name, last_name, email, cust_addr.address, cust_addr.address2, cust_addr.district, cust_addr.postal_code, cust_addr.phone, city.city, country.country, create_date, customer.last_update, active FROM customer, address as cust_addr, city, country WHERE customer.address_id = cust_addr.address_id AND city.city_id = cust_addr.city_id AND country.country_id = city.country_id and customer.customer_id = '$P{customer_id}'&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter this query in the Datasets dialog and save it. Open the WelcomeLetter where we'll enter a line about the registration date as shown in figure 1.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/basicdatebinding.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: Data binding&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Immediately below the binding is the generated PDF and as you can see the date isn't in the format that we would want to send to a customer. In order to rectify this we can use the built-in date formatter. In the Data frame shown in figure 2 below, select the field that you wish to insert into the template and click the bottom toolbar button indicated to display the data formatter dialog shown in figure 3.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/dataframe.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: The data frame&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/dataformatdlg.png" /&gt;&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: The data formatter dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		TD P { margin-bottom: 0cm }
		A:link { so-language: zxx }
	--&gt;
&lt;/style&gt;  &lt;table cellspacing="0" cellpadding="4" bordercolor="#000000" border="1" width="100%"&gt; 	&lt;col width="45*" /&gt; 	&lt;col width="211*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#e6e6e6" width="18%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Item&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6e6" width="82%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="18%" sdval="1" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="82%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;List of built-in 			formatters&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="18%" sdval="2" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="82%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Easy to read 			preview of the formatter mask. This shown how the formatted data 			will appear when documents are generated&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="18%" sdval="3" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="82%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Actual mask to be 			applied to the formatter. This varies depending on the formatter 			type&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="18%" sdval="4" sdnum="6153;"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="82%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The expression 			which will be used in the document to apply the mask to the data&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Select the Date formatter from the list indicated by the number 1 in figure 3. This will automatically fill the list indicated by the number 2 in figure 3 with easy to read format masks. Select the format that you would like the date field to appear in and the actual format mask will appear in the text box indicated by the number 3 in figure 3. If you wish to change the value in this text box you can so and the expression in the text area indicated by the number 4 in figure 3 will automatically change to reflect this.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;These format masks use standard Java formatting. For more on how to use these format masks have a look at the Java documentation at &lt;a href="http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html"&gt;http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html&lt;/a&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When you are happy with the format that will be applied to the data click OK in the data formatter dialog and the formatting expression will be inserted into the document as follows.&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;$E{$V{DateFormatter}.format($F{customerDS.create_date}, &amp;quot;dd MMM yyyy&amp;quot;)}&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The beginning of this expression, &lt;font face="Courier New, monospace"&gt;$E{$V{DateFormatter},&lt;/font&gt; uses a built in variable which refers to a formatter Java class. Passed to this variable are the data to be formatted and the mask to be applied to the data. More on this will be explored when we look at creating custom data formatters.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now when we preview the document the date value will appear in the generated document using the format we specified as shown in figure 4.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/previewdateformat.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: Preview the formatted date&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 class="western"&gt;Using expressions to implement basic logic&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;To demonstrate how we can implement some basic logic we'll assume that we have had our application form modified to indicate whether a customer is active or not. We've added a checkbox to the application form which we will turn on or off depending on the value of the &lt;font face="Courier New, monospace"&gt;active&lt;/font&gt; field in the &lt;font face="Courier New, monospace"&gt;customer&lt;/font&gt; table of the database. Select the new active checkbox in the editor and double-click the active field in the Data frame to create the binding to the checkbox as shown in figure 5.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/checkboxbinding.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: Binding data to a checkbox&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Preview the document and depending on the value of the &lt;font face="Courier New, monospace"&gt;active&lt;/font&gt; flag in the database the checkbox state will toggle as shown in figure 6.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/activeflagpreview.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: Preview the checkbox data binding&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;More advanced expressions&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In the previous example we simply used the value of the active field in the database to determine state of the checkbox. There may be cases where data in several fields needs to be checked in order to set the state. This is where expressions come into play and this will require more advanced bindings to be created. Say for example that we wanted to check the active flag and also check that the customer's profile has been updated after a certain date we could do the following.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;$E{$F{customerDS.active} &amp;amp;&amp;amp; ($F{customerDS.last_update}.getYear() + 1900)&amp;gt;2006}&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Expressions contained within the tag &lt;font face="Courier New, monospace"&gt;$E{ ... } &lt;/font&gt;will get processed as Java expressions using the Groovy runtime interpreter. Before the expression is evaluated any fields or parameters will be replaced with the actual values so that the data is worked upon.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;For more on the Groovy scripting language go to the Groovy homepage at &lt;a href="http://groovy.codehaus.org/"&gt;http://groovy.codehaus.org/&lt;/a&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now when you preview the document the checkbox won't get checked. Try changing the year to 2005 in the expression and when the document is previewed it will be checked.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now we can try changing some text in a letter depending on the value of a parameter. To do this open the WelcomeLetter document template and enter the paragraph shown in figure 7.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/levelparampara.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: Returning different string depending on data values&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;We have added the &lt;font face="Courier New, monospace"&gt;subscription_level&lt;/font&gt; parameter and the following expression tests this parameter to control the text that is displayed within the paragraph.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
&lt;/style&gt;  &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;$E{ if ( $P{subscription_level}.equals(&amp;quot;1&amp;quot;) ) { return &amp;quot;Silver&amp;quot; } else if ($P{subscription_level}.equals(&amp;quot;2&amp;quot;)) { return &amp;quot;Gold&amp;quot; } else if ($P{subscription_level}.equals(&amp;quot;3&amp;quot;)) { return &amp;quot;Platinum&amp;quot; } }&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now when we preview the document and set the subscription_level parameter it generates with the correct text value in the paragraph as shown in figure 8.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/previewsubscriptionlevel.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: Previewing the subscription level conditional text&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;Creating a custom formatter&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When formatting expression are getting lengthy and complex it may be a good idea to create a custom Java class which can also be reused thoughout a project. To demonstrate this we'll replace the somewhat unwieldy code used earlier to display the subscription level. Begin by creating the custom class below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;package&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; org.inforama.formatters;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;class&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; CustomFormatter {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;	&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;static&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; String getLevel( String level ) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; ( level.equals( &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; ) ) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;	&amp;nbsp;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;Silver&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;		} &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; ( level.equals( &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; ) ) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;			&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;Gold&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;		} &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; ( level.equals( &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;3&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt; ) ) {&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;			&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;Platinum&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;			&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;	&amp;nbsp;	}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;		&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;		&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&amp;nbsp;	}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;	&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;As you can see the code is doing the same as earlier code was doing. Compile the class and create a jar file. Open the classpath dialog by clicking the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;Options &amp;ndash; Classpath editor...&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; menu item as shown in figure 9.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/classpathdialog.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: Referencing the custom library from Inforama&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;Click the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;Add a JAR&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; button, locate the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;CustomFormatter.jar&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; file and it will appear in the list of jars referenced. Click the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;Save classpath&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; button to save your changes. Now open the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;WelcomeLetter&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; template and replace the line original line which output the subscription level to the following.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;$E{ org.inforama.formatters.CustomFormatter.getLevel($P{subscription_level}) }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;&lt;font color="#000000"&gt;Registering the formatter as a variable&lt;/font&gt;&lt;/h3&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;It's possible to make the reference to the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;CustomFormatter&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; class within the document even cleaner. All of the built-in formatters are registered by using the &lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face="Courier New, monospace"&gt;variables.xml&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt; file in the project directory. Open this file in a text editor and add the line shown in red below.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;lt;variables&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&amp;lt;variable name=&amp;quot;DateFormatter&amp;quot; class=&amp;quot;org.in4ama.documentengine.format.DateFormatter&amp;quot;/&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	...&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;	&lt;/font&gt;&lt;font color="#ff0000"&gt;&lt;b&gt;&amp;lt;variable name=&amp;quot;CustomFormatter&amp;quot; class=&amp;quot;org.inforama.formatters.CustomFormatter&amp;quot;/&amp;gt;&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&amp;lt;/variables&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;You will need to restart the Studio in order for this change to be picked up. When the Studio has restarted open the project again and once again open the WelcomeLetter template. Now change the line outputting the subscription level to.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;$E{ $V{CustomFormatter}.getLevel($P{subscription_level}) } &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;This isn't a dramatic change to what we had earlier but it does make it easier to reference the class from numerous templates if necessary. The document should now look like that shown in figure 10.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/DataFormatting/customclasspara.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: The modified paragraph referencing the custom formatter class&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-09T09:53:24Z</dc:date>
  </entry>
  <entry>
    <title>2 - Working with letter templates 1.8</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-09T09:13:28Z</updated>
    <published>2009-09-09T09:13:28Z</published>
    <summary type="html">&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt;&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;i&gt;You can download the Inforama project files for this example by clicking the attachments link at the bottom of this page.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3 class="western"&gt;Creating a new letter template&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You can create a new letter template by clicking the &lt;font face="Courier New, monospace"&gt;File &amp;ndash; New document...&lt;/font&gt; menu item and the dialog shown in figure  will be displayed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/newdocumentdialog.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: New document dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the name that you want to give the document, select &lt;font face="Courier New, monospace"&gt;Letter&lt;/font&gt; from the &lt;font face="Courier New, monospace"&gt;Document type&lt;/font&gt; list and click the &lt;font face="Courier New, monospace"&gt;Create&lt;/font&gt; button. The new letter template will appear in the &lt;font face="Courier New, monospace"&gt;Documents&lt;/font&gt; frame and the new letter template will appear in the main document frame as an OpenOffice document as shown in figure 2 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/newletterstudio.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: The new letter template within the Studio&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You can now start creating the template in the OpenOffice editor. As you can see in the screenshot the entire OpenOffice application is embedded within Inforama Studio. The OpenOffice menu can be toggled on and off by clicking the toolbar button marked as 1 in figure 3 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/ooeditormenu.png" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: The OpenOffice editor toolbar&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the button marked 3 in figure 3 and the Letter Manager dialog will appear as in figure 4&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/lettermanagerdlg.png" alt="" /&gt;&lt;/p&gt; &lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 4: The letter manger dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Click the &lt;font face="Courier New, monospace"&gt;Preview&lt;/font&gt; button and the document will render in the Document preview dialog as shown in figure 5 below. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/documentpreviewdlg.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 5: Previewing the document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		TD P { margin-bottom: 0cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The Document preview dialog has a number of features which are listed in the following table...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="4" bordercolor="#000000" border="1" width="100%"&gt; 	&lt;col width="128*" /&gt; 	&lt;col width="128*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#e6e6e6" width="50%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Item&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#e6e6e6" width="50%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;1 &amp;ndash; Refresh 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Generate the PDF 			again from the template&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;2 &amp;ndash; Print button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Print the generated 			PDF. This will only work if a print output method is specified in 			the project options&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;3 &amp;ndash; Save button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Save the PDF 			document to file. You will be prompted for the location to save 			the generated document to&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;4 &amp;ndash; Show PDF 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Display the saved 			PDF in the default system PDF viewer. This button will become 			enabled after the PDF is saved using the save button above&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;5 &amp;ndash; Fit width 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Fit the PDF into 			the width of the preview area&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;6 &amp;ndash; Fit height 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Fit the PDF into 			the height of the preview area&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;7 &amp;ndash; Full size 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Display the PDF in 			it's full size&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;8 &amp;ndash; Zoom in 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Zoom in on the PDF&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;9 &amp;ndash; Zoom out 			button&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Zoom out of the PDF&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;10 &amp;ndash; Page list&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Lists the pages in 			the generated PDF. Select a page from this list to change the page 			being preview in the preview area&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;11 &amp;ndash; Preview area&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="50%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is where the 			generated PDF is displayed&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="4"&gt;Passing parameters to the letter&lt;/font&gt;&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Parameters can be sent to the Inforama document generation engine for a number of reasons including filtering on a dataset, display conditions, etc. but parameters can also be displayed within the document as text. In order to pass a parameter to a document the parameter name needs to be declared within the Inforama project. To do this expand the Parameters frame shown in figure 6 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/parametersframe.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 6: The parameters frame&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Click the button marked &lt;/font&gt;&lt;font face="Cout"&gt;1&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; in the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Parameters frame&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; and you will be prompted to input a name for the new parameter. In this example the parameter name has been specified as &lt;/font&gt;&lt;font face="Cout"&gt;dividy_username&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt;. Click OK in the dialog and the new parameter name will appear in the parameters list marked as &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;3&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; in the screenshot. Now to make a placeholder for this parameter in your document template, open the template and remove the name at the bottom of the template. Place the cursor where you want the parameter to appear and double-click the parameter name in the Parameters frame. The parameter name will appear in the template as shown in figure 7.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/docparameter.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 7: The parameter within the document template&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;nce again click the button marked 3 in figure 3 and the Preview button in the resulting &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Letter Manager dialog&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt;. This time when the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Document preview dialog&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; appears the document won't generate automatically. Instead, in the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Required parameters&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; section on the bottom left of the dialog the parameter will appear with the text &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;&amp;lt;not specified&amp;gt;&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt;. Select the parameter by clicking it in the list and click the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Modify parameters&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; button. You will be asked for a parameter value in the resulting dialog and when all parameters have been completed the document will generate as shown in figure 8.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/parameterdocpreveiw.png" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 8: Displaying the parameter in the document preview dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The screenshot shows that the parameter value which was input replaced the parameter placeholder in the document template. Whatever parameter value was last input on this dialog will appear automatically whenever this project is used.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;Working with letter fragments&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;There may be cases where you wish to construct a compound document out of a series of standard paragraphs or fragments. This can be achieved by using letter fragments within Inforama. Start by clicking the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;File &amp;ndash; New document...&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; menu item. In the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;New document dialog&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; enter the name of the letter fragment you want to create and select &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Letter Fragment&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; from the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Document type&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; dropdown list as shown in figure 9.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/newfragmentdialog.png" alt="" /&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 9: Creating a new letter fragment&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Click the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Create&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; button and the new letter fragment will appear in the list of documents in the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Documents frame&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; as well as opening for editing within the embedded OpenOffice editor. In this case we're creating a standard conditions paragraph which will appear at the bottom of certain documents. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When the document appears in the OpenOffice editor enter the text that you would like to appear. Now re-open the WelcomeLetter document template and place the following text at the bottom...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="3"&gt;$fragment{StandardConditions} &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;This is shown in the screenshot in figure 10 below.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/fragmentinclude.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 10: Including the fragment in a document&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Now when you preview the document the fragment content will be included in at the bottom of the main document as shown in figure 11.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/fragmentincludepreview.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 11: Previewing the document with the fragment included&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;It's also possible to merge a number of document fragments. Create a new fragment which we will call &lt;font face="Courier New, monospace"&gt;Intro&lt;/font&gt;. Next, open the &lt;font face="Courier New, monospace"&gt;Letter manager dialog&lt;/font&gt; and click the checkbox &lt;font face="Courier New, monospace"&gt;From fragments&lt;/font&gt;. Move the two fragments to the right-hand list and click the &lt;font face="Courier New, monospace"&gt;Preview&lt;/font&gt; button. The fragments will merge to create a single document.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="4"&gt;Applying conditions to letter fragments&lt;/font&gt;&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You may not always want fragments to be included in generated documents and the way to control this is to have them display based on conditions. In this example we will base our condition on a parameter which we will pass to the Inforama engine. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;In the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;Parameters frame&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; create a new parameter called &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;include_conditions&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt;. Now re-open the &lt;/font&gt;&lt;font face="Courier New, monospace"&gt;WelcomeLetter&lt;/font&gt;&lt;font face="Arial, sans-serif"&gt; template and scroll to the bottom where the condition was inserted previously. Replace the include command with the following...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="3"&gt;$IF{$E{$P{include_conditions}}, $fragment{StandardConditions}}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;Now preview the document in the Letter manager dialog and set the &lt;/font&gt;include_conditions&lt;font face="Arial, sans-serif"&gt; parameter to the value &lt;/font&gt;true&lt;font face="Arial, sans-serif"&gt;. The fragment will display as shown in figure 12 below. By default you can supply values of &lt;/font&gt;true&lt;font face="Arial, sans-serif"&gt;, &lt;/font&gt;on&lt;font face="Arial, sans-serif"&gt;, &lt;/font&gt;yes&lt;font face="Arial, sans-serif"&gt; or &lt;/font&gt;1&lt;font face="Arial, sans-serif"&gt; to commands using this syntax in order for them to evaluate to true. If the parameter is any other value or blank the fragment will not appear.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/LetterTemplates/previewincludecondition.png" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 12: Fragment displaying depending on condition&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-09T09:13:28Z</dc:date>
  </entry>
  <entry>
    <title>1 - Introduction 2.0</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-09-09T09:07:11Z</updated>
    <published>2009-09-09T09:07:11Z</published>
    <summary type="html">&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H1 { margin-bottom: 0.21cm }
		H1.western { font-family: "Arial", sans-serif; font-size: 16pt }
		H1.cjk { font-family: "MS Mincho"; font-size: 16pt }
		H1.ctl { font-family: "Tahoma"; font-size: 16pt }
		H2 { margin-bottom: 0.21cm }
		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic }
		H2.cjk { font-family: "MS Mincho"; font-size: 14pt; font-style: italic }
		H2.ctl { font-size: 14pt; font-style: italic }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
		H4 { margin-bottom: 0.21cm }
		H4.western { font-family: "Arial", sans-serif; font-size: 11pt; font-style: italic }
		H4.cjk { font-family: "MS Mincho"; font-size: 11pt; font-style: italic }
		H4.ctl { font-size: 11pt; font-style: italic }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h1 class="western"&gt;Inforama tutorial&lt;/h1&gt; &lt;h3 class="western"&gt;Pre-Requisites&lt;/h3&gt; &lt;h4 class="western"&gt;Java Runtime&lt;/h4&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Before starting you will need to make sure that you have a Java Runtime of 1.4 or above installed on the machine which will be running Inforama Studio. If you already have a Java Runtime installed on the machine you can check the version by going to the command line and typing the following...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;java -version&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You will see the following output which will tell you the current JRE version...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;java version &amp;quot;1.6.0_13&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Java(TM) SE Runtime Environment (build 1.6.0_13-b03)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;Java HotSpot(TM) Client VM (build 11.3-b02, mixed mode)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;If the JRE isn't the correct version the latest version of the JRE can be downloaded from &lt;a href="http://www.java.com/"&gt;http://www.java.com&lt;/a&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; margin-bottom: 0cm; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h4 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;OpenOffice&lt;/font&gt;&lt;/h4&gt; &lt;p style="border: medium none ; padding: 0cm; background: transparent none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Inforama Studio uses OpenOffice as its embedded word processor to produce letter templates. Inforama Studio is compatible with OpenOffice 2.3, 2.4 and 3.x. If not already installed download OpenOffice from &lt;a href="http://www.openoffice.org/"&gt;http://www.openoffice.org&lt;/a&gt;. &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;  &lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;Installing Inforama Studio&lt;/font&gt;&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Download the latest version on Inforama Studio from SourceForce at &lt;a href="http://sourceforge.net/projects/inforama/files/"&gt;http://sourceforge.net/projects/inforama/files/.&lt;/a&gt; The downloaded file is a zip format and should be extracted to an empty directory.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h4 class="western"&gt;Windows Users&lt;/h4&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;For users of OpenOffice 2.x, open the file &lt;font face="Courier New, monospace"&gt;&lt;b&gt;run-oo2.bat&lt;/b&gt;&lt;/font&gt; in a text editor and set the path to the OpenOffice directory. The default entry is &lt;font face="Courier New, monospace"&gt;SET OOPATH=C:\Program Files\OpenOffice.org 2.3&lt;/font&gt;. This will need to be changed to the path where OpenOffice was installed. Now you can double click the &lt;font face="Courier New, monospace"&gt;run-oo2.bat&lt;/font&gt; file to launch Inforama studio. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;For users of OpenOffice 3.x, open the file &lt;font face="Courier New, monospace"&gt;&lt;b&gt;run-oo3.bat&lt;/b&gt;&lt;/font&gt; in a text editor and set the path to the OpenOffice directory. The default entry is &lt;font face="Courier New, monospace"&gt;SET OOPATH=C:\Program Files\OpenOffice.org 3&lt;/font&gt;. This will need to be changed to the path where OpenOffice was installed. Now you can double click the &lt;font face="Courier New, monospace"&gt;run-oo3.bat&lt;/font&gt; file to launch Inforama studio. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h4 class="western"&gt;Linux Users&lt;/h4&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;For users of OpenOffice 2.x, open the file &lt;font face="Courier New, monospace"&gt;&lt;b&gt;run-oo2.sh&lt;/b&gt;&lt;/font&gt; in a text editor and set the path to the OpenOffice directory. The default entry is &lt;font face="Courier New, monospace"&gt;OOPATH=&amp;quot;/usr/lib/openoffice&amp;quot;&lt;/font&gt;. This will need to be changed to the path where OpenOffice was installed. Now you can double click the &lt;font face="Courier New, monospace"&gt;run-oo2.bat&lt;/font&gt; file to launch Inforama studio. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;There is a problem with locating the OpenOffice program on some Linux distributions. This can be resolved by adding a symbolic link to the OpenOffice program folder from the root directory as follows...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Courier New, monospace"&gt;&lt;font size="2"&gt;ln -s /usr/lib/openoffice/program/soffice /soffice &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Work on the Linux shell script for OpenOffice 3 is underway. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Once started, the Inforama Studio application will appear as shown in Figure 1.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;img src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/introduction/studio.jpg" alt="" /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 1: Inforama Studio&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
		A:link { so-language: zxx }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;h3 class="western"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="4"&gt;Installing the sample database&lt;/font&gt;&lt;/font&gt;&lt;/h3&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;In this tutorial we will be developing a project which will use data from the Sakila database which is a sample database published by MySQL. Documentation on the Sakila database can be found in the downloadable PDF at &lt;a href="http://downloads.mysql.com/docs/sakila-en.a4.pdf"&gt;http://downloads.mysql.com/docs/sakila-en.a4.pdf.&lt;/a&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;For information on downloading and installing the Sakila database go to &lt;a href="http://dev.mysql.com/doc/sakila/en/sakila.html"&gt;http://dev.mysql.com/doc/sakila/en/sakila.html&lt;/a&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="LEFT" style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Please note that the Sakila database requires MySQL version 5.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;h3 class="western"&gt;A quick tour of Inforama Studio&lt;/h3&gt; &lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;The screenshot in figure 2 shows the main elements of the Inforama Studio application.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/introduction/editortour.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 2: Main elements of the Studio&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta name="GENERATOR" content="OpenOffice.org 3.0  (Win32)"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
		TD P { margin-bottom: 0cm }
		H3 { margin-bottom: 0.21cm }
		H3.western { font-family: "Arial", sans-serif }
		H3.cjk { font-family: "MS Mincho" }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="4" bordercolor="#e6e6e6" border="1" width="100%"&gt; 	&lt;col width="66*" /&gt; 	&lt;col width="190*" /&gt; 	&lt;tbody&gt;&lt;tr valign="TOP"&gt; 		&lt;td bgcolor="#cccccc" width="26%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Frame 			#&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td bgcolor="#cccccc" width="74%"&gt;&lt;p align="CENTER"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;1 &amp;ndash; Toolbar&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Shortcut toolbar 			for quick access to application functions.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;2 &amp;ndash; Documents 			Frame&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;List of documents 			contained in the current project. Documents can be opened for 			editing by double-clicking the document name in this frame. When a 			new document is created in the editor or is imported into the 			project it will be listed in this frame.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;3 &amp;ndash; Components 			Frame&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When editing 			Acrobat Forms, the acrobat fields contained in the Acrobat Form 			are listed in this frame. The icon beside the acrobat field 			indicates whether the acrobat field is a text field, a check box, 			an image, or a bar code. The &lt;font face="Courier New, monospace"&gt;Acrobat 			Field Value&lt;/font&gt; text area at the bottom of this frame is where 			data bindings and evaluations are defined. When a binding is 			created by double-clicking the data field list in the Data frame 			described below, it will appear in this text area.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;4 &amp;ndash; Main Document 			Editor&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When a new document 			is created or is opened by double-clicking a document in the 			documents frame described above, it will appear for editing within 			this main content frame. There are two main types of document 			which can appear in this frame &amp;ndash; OpenOffice Documents or Acrobat 			Forms. When an Acrobat Form from OpenOffice document is opened in 			this editor there is the option to switch between document and 			Acrobat Form mode.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;5 &amp;ndash; Data Frame&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Datasets defined 			within the Inforama project are listed here and can be previewed 			in the table. When bindings are required within documents the 			fields within this frame can be double-clicked in order to create 			them. This frame also contains buttons at the bottom to allow 			fields to be formatted using the data formatters within Inforama.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;6 &amp;ndash; Parameters 			Frame&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When generating 			documents, parameters are provided which are used by the datasets 			in order to retrieve the relevant datasets. These parameters are 			added and removed within this frame. Parameters can also be bound 			directly to documents allowing them to be send directly to the 			document generation engine. As with the Data frame, a button at 			the bottom of this frame allows access to the data formatter.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; 	&lt;tr valign="TOP"&gt; 		&lt;td width="26%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;7 &amp;ndash; Properties 			Frame&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 		&lt;td width="74%"&gt;&lt;p&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;When editing 			Acrobat Forms this frame is populated with Acrobat Field 			properties when an Acrobat Field within the document is selected. 			Different properties will appear depending on the type of Acrobat 			Field selected. Properties can be changed from here and will be 			applied to the document when it is saved.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; 	&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p style="margin-bottom: 0cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;h3 class="western"&gt;Creating your first Inforama Project&lt;/h3&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Whether you intend to generate documents within Inforama Studio or within Inforama Enterprise, the first step is to create a project within Inforama Studio. You can do this by clicking the &lt;font face="Courier New, monospace"&gt;File &amp;ndash; New project...&lt;/font&gt; menu item and the dialog shown in figure 3 will appear.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;img alt="" src="http://www.in4ama.org/resources/wiki/tutorials/studiotutorial/introduction/newprojectdialog.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;&lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;font size="3"&gt;&lt;i&gt;Figure 3: New project dialog&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-top: 0.21cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;title&gt;&lt;/title&gt;&lt;meta content="OpenOffice.org 3.0  (Win32)" name="GENERATOR"&gt;&lt;style type="text/css"&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt; &lt;/meta&gt;&lt;/meta&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;Enter the name that you want to give the project and also the path to an empty directory where you want the project to be created. Click the &lt;font face="Courier New, monospace"&gt;Create&lt;/font&gt; button and the basic project files will be created in the specified directory.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; line-height: 0.5cm;"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: 0.5cm;"&gt;&lt;font face="Arial, sans-serif"&gt;&lt;font size="2"&gt;You're now ready to create your datasources, document templates and other resources which will be outlined in the following section.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-09-09T09:07:11Z</dc:date>
  </entry>
  <entry>
    <title>Inforama Studio Tutorial 1.3</title>
    <link rel="alternate" href="http://www.in4ama.org/web/guest/community/wiki?p_p_id=36&amp;p_p_lifecycle=0&amp;_36_nodeId=10506&amp;_36_title=" />
    <author>
      <name>Val Cassidy</name>
    </author>
    <updated>2009-08-28T10:43:59Z</updated>
    <published>2009-08-28T10:43:59Z</published>
    <summary type="html">This tutorial will guide you through the features of Inforama Studio</summary>
    <dc:creator>Val Cassidy</dc:creator>
    <dc:date>2009-08-28T10:43:59Z</dc:date>
  </entry>
</feed>

