<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>HIDEN.org &#187; Open-Jacob</title>
	<atom:link href="http://hiden.org/category/open-jacob/feed/" rel="self" type="application/rss+xml" />
	<link>http://hiden.org</link>
	<description>EDV mit System</description>
	<lastBuildDate>Wed, 28 Jul 2010 14:33:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Birt Reports with OpenJacob</title>
		<link>http://hiden.org/open-jacob/birt-reports-with-openjacob/</link>
		<comments>http://hiden.org/open-jacob/birt-reports-with-openjacob/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 06:19:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Open-Jacob]]></category>

		<guid isPermaLink="false">http://hiden.org/?p=339</guid>
		<description><![CDATA[Integrating Birt Reports into OpenJacob is quite straightforward but note that (at the time of this writing) you need Birt Version 2.5 !

When creating the report&#8217;s datasource you have to use the same name you use in your jACOB application. Otherwise jACOB will not be able to use your Report.
Create your report and specify the [...]]]></description>
			<content:encoded><![CDATA[<p>Integrating Birt Reports into OpenJacob is quite straightforward but note that (at the time of this writing) you need Birt Version 2.5 !</p>
<ol>
<li>When creating the report&#8217;s datasource you have to use the same name you use in your jACOB application. Otherwise jACOB will not be able to use your Report.</li>
<li>Create your report and specify the required parameters.</li>
<li>When having finished your report, upload the .rptdesign file to a document field in your application. (e.g. a config table)</li>
<li>The following code opens the report, hands over a parameter and returns a .pdf</li>
</ol>
<pre>	BirtReport rpt = new BirtReport(cnfrec.getDocumentValue("report"));
	rpt.setParameterValue("mypar", currentRecord.getStringValue("pkey"));
	byte[] barr = rpt.createPDF();
	context.createDocumentDialog(null, "doc.pdf", barr).show();</pre>
<img src="http://hiden.org/wp-content/plugins/pixelstats/trackingpixel.php?post_id=339&amp;ts=1280501851" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://hiden.org/open-jacob/birt-reports-with-openjacob/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jACOB 2.9 has been released</title>
		<link>http://hiden.org/open-jacob/jacob2/</link>
		<comments>http://hiden.org/open-jacob/jacob2/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 17:31:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Open-Jacob]]></category>

		<guid isPermaLink="false">http://hiden.org/?p=300</guid>
		<description><![CDATA[With Open-jACOB 2.9 tarragon-software.com made another big step forward.
The new version contains many many improvements compared to the previous official release like:

 Tree browser with drag and drop.
 Radio buttons to select functions.
 Hideable Forms
 Enum fields with I18N
 Tooltips. A combination of error messages and tips on how to correct.
 Foreign fields as combo [...]]]></description>
			<content:encoded><![CDATA[<p>With Open-jACOB 2.9 <a href="http://www.tarragon-software.com">tarragon-software.com</a> made another big step forward.<br />
The new version contains many many improvements compared to the previous official release like:</p>
<ul>
<li> Tree browser with drag and drop.</li>
<li> Radio buttons to select functions.</li>
<li> Hideable Forms</li>
<li> Enum fields with I18N</li>
<li> Tooltips. A combination of error messages and tips on how to correct.</li>
<li> Foreign fields as combo box.</li>
<li> Breadcrumb control.</li>
<li> Single sign on functionality through CAS.</li>
<li> Embedded transactions</li>
<li> Dynamic changeable forms.</li>
<li> Full text search on long text fields.</li>
<li> Distinguish between primary and secondary DB’s in multiple databases, dependent on who owns the data.</li>
</ul>
<p>Installation instructions can be found at <a href="http://www.openjacob.org/">openjacob.org</a></p>
<p>The Java Docs are <a href="http://www.tarragon-software.com/wiki/javadoc/index.html">here</a>.</p>
<img src="http://hiden.org/wp-content/plugins/pixelstats/trackingpixel.php?post_id=300&amp;ts=1280501851" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://hiden.org/open-jacob/jacob2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open-Jacob CommandEntryPoints and Encoding</title>
		<link>http://hiden.org/open-jacob/open-jacob-commandentrypoints-and-encoding/</link>
		<comments>http://hiden.org/open-jacob/open-jacob-commandentrypoints-and-encoding/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 17:49:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Open-Jacob]]></category>

		<guid isPermaLink="false">http://hiden.org/?p=253</guid>
		<description><![CDATA[I&#8217;ve written a small servlet that communicates with a Jacob Application through CommandEntry Points. Not the most elegant solution for sure but _very_ flexible.
When the servlet calls the entry point&#8217;s Url then we have everything UTF-8 encoded and additionally used URLEncoder.encode(URL).
On the jacob side the Data arrives as ISO8859-1 although everything in Jacob appears to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve written a small servlet that communicates with a Jacob Application through CommandEntry Points. Not the most elegant solution for sure but _very_ flexible.</p>
<p>When the servlet calls the entry point&#8217;s Url then we have everything UTF-8 encoded and additionally used URLEncoder.encode(URL).</p>
<p>On the jacob side the Data arrives as ISO8859-1 although everything in Jacob appears to be UTF-8. But a simple</p>
<pre>String data1= new String(properties.getProperty("data1").getBytes("ISO8859-1"),"UTF-8");</pre>
<p>does the job.</p>
<img src="http://hiden.org/wp-content/plugins/pixelstats/trackingpixel.php?post_id=253&amp;ts=1280501851" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://hiden.org/open-jacob/open-jacob-commandentrypoints-and-encoding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open-Jacob and cascading deletes</title>
		<link>http://hiden.org/open-jacob/open-jacob-and-cascading-deletes/</link>
		<comments>http://hiden.org/open-jacob/open-jacob-and-cascading-deletes/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 14:55:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Open-Jacob]]></category>

		<guid isPermaLink="false">http://hiden.org/?p=181</guid>
		<description><![CDATA[Open-Jacob (currently) does not support cascading deletes. Depending on the database used you could implement this at the database level but this would be no good idea since Open-Jacob itself keeps track of the data and could stumble when records are getting modified from another side.
Let&#8217;s assume the following database schema


We want to be able [...]]]></description>
			<content:encoded><![CDATA[<p>Open-Jacob (currently) does not support cascading deletes. Depending on the database used you could implement this at the database level but this would be no good idea since Open-Jacob itself keeps track of the data and could stumble when records are getting modified from another side.</p>
<p>Let&#8217;s assume the following database schema</p>
<p style="text-align: center;"><img class="size-full wp-image-182 aligncenter" title="relations" src="http://hiden.org/wp-content/uploads/2009/09/relations.jpeg" alt="relations" width="235" height="172" /></p>
<p><span id="more-181"></span></p>
<p>We want to be able to delete records from the tables <strong>hauptprf</strong> and/or <strong>teilprf</strong>. Therefore we need to  add some code to the classes <strong>HauptprfTableRecord</strong> and <strong>TeilprfTableRecord</strong> both attached to the respective tablealias.</p>
<p><strong>HauptprfTableRecord</strong></p>
<blockquote><p>public void afterDeleteAction(IDataTableRecord tableRecord, IDataTransaction transaction) throws Exception<br />
{<br />
IDataTable hprdet = tableRecord.getAccessor().getTable(Hauptprfdet.NAME);<br />
hprdet.qbeSetKeyValue(Hauptprfdet.hauptprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
hprdet.fastDelete(transaction);</p>
<p>IDataTable hprdok = tableRecord.getAccessor().getTable(Hauptprfdok.NAME);<br />
hprdok.qbeSetKeyValue(Hauptprfdok.hauptprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
hprdok.fastDelete(transaction);</p>
<p>IDataTable hprgeb = tableRecord.getAccessor().getTable(Hauptprfgeb.NAME);<br />
hprgeb.qbeSetKeyValue(Hauptprfgeb.hauptprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
hprgeb.fastDelete(transaction);</p>
<p>IDataTable teilprf = tableRecord.getAccessor().getTable(Teilprf.NAME);<br />
teilprf.qbeSetKeyValue(Teilprf.hauptprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
teilprf.searchAndDelete(transaction);<br />
}
</p></blockquote>
<p><strong>TeilprfTableRecord</strong></p>
<blockquote><p>public void afterDeleteAction(IDataTableRecord tableRecord, IDataTransaction transaction) throws Exception<br />
{<br />
IDataTable teildet = tableRecord.getAccessor().getTable(Teilprfdet.NAME);<br />
teildet.qbeSetKeyValue(Teilprfdet.teilprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
teildet.fastDelete(transaction);</p>
<p>IDataTable teildok = tableRecord.getAccessor().getTable(Teilprfdok.NAME);<br />
teildok.qbeSetKeyValue(Teilprfdok.teilprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
teildok.fastDelete(transaction);</p>
<p>IDataTable colldat = tableRecord.getAccessor().getTable(Collecteddata.NAME);<br />
colldat .qbeSetKeyValue(Collecteddata.teilprf_key, tableRecord.getValue(&#8220;pkey&#8221;));<br />
colldat .fastDelete(transaction);<br />
}
</p></blockquote>
<p>The only important thing is that fastDelete offers great performance but DOES NOT trigger any other hooks. Therefore deleting the teilprf data from the hauptprf  function contains the searchAndDelete function ! All the other delete operations can be done using fastDelete since the respective tables are the last in the hierarchy.</p>
<img src="http://hiden.org/wp-content/plugins/pixelstats/trackingpixel.php?post_id=181&amp;ts=1280501851" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://hiden.org/open-jacob/open-jacob-and-cascading-deletes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reverse Engeneering a Database for Open-Jacob</title>
		<link>http://hiden.org/open-jacob/reverse-engeneering-a-database/</link>
		<comments>http://hiden.org/open-jacob/reverse-engeneering-a-database/#comments</comments>
		<pubDate>Sat, 01 Aug 2009 19:51:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Open-Jacob]]></category>

		<guid isPermaLink="false">http://hiserver/hiden.org/?p=112</guid>
		<description><![CDATA[In order to reverse engineer a existing database you can use the FetchDatasourceSchemaInfo Entry Point.
1. Create a new blank jACOB Application
2. Create a datasource in the jACOB Admin Application that points to the desired database you want to reverese engineer.
3. Call the entry point
http://localhost:8080/jacob/cmdenter?entry=FetchDatasourceSchemaInfo&#38;app=admin&#38;user=USERNAME&#38;pwd=PASSWORD&#38;dataSource=DATASOURCE&#38;newapp=NEWAPP
Where you replace localhost:8080 with the real jACOB-server name and port.
Replace DATASOURCE [...]]]></description>
			<content:encoded><![CDATA[<p>In order to reverse engineer a existing database you can use the <strong>FetchDatasourceSchemaInfo</strong> Entry Point.<span id="more-112"></span></p>
<p>1. Create a new blank jACOB Application</p>
<p>2. Create a datasource in the jACOB Admin Application that points to the desired database you want to reverese engineer.</p>
<p>3. Call the entry point<br />
<a title="http://localhost:8080/jacob/cmdenter?entry=FetchDatasourceSchemaInfo&amp;app=admin&amp;user=USERNAME&amp;pwd=PASSWORD&amp;dataSource=DATASOURCE&amp;newapp=NEWAPP" rel="nofollow" href="http://localhost:8080/jacob/cmdenter?entry=FetchDatasourceSchemaInfo&amp;app=admin&amp;user=USERNAME&amp;pwd=PASSWORD&amp;dataSource=DATASOURCE&amp;newapp=NEWAPP">http://localhost:8080/jacob/cmdenter?entry=FetchDatasourceSchemaInfo&amp;app=admin&amp;user=USERNAME&amp;pwd=PASSWORD&amp;dataSource=DATASOURCE&amp;newapp=NEWAPP</a><br />
Where you replace <em>localhost:8080</em> with the real jACOB-server name and port.<br />
Replace <em>DATASOURCE</em> in the url with the name of the data source schema information should be fetched from.<br />
Replace <em>NEWAPP</em> in the url with the desired application name of the generated JAD file.</p>
<p>4. If everything works then your browser shows the new JAD.</p>
<p>Now show the source code of this page and paste the content into your application.jad</p>
<img src="http://hiden.org/wp-content/plugins/pixelstats/trackingpixel.php?post_id=112&amp;ts=1280501851" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://hiden.org/open-jacob/reverse-engeneering-a-database/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Modern Odyssey</title>
		<link>http://hiden.org/open-jacob/a-modern-odyssey/</link>
		<comments>http://hiden.org/open-jacob/a-modern-odyssey/#comments</comments>
		<pubDate>Sat, 01 Aug 2009 19:16:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Open-Jacob]]></category>

		<guid isPermaLink="false">http://hiserver/hiden.org/?p=104</guid>
		<description><![CDATA[I have been developing M$-Access based solutions for about a decade. The more I dug deeper the more I&#8217;ve been dissatisfied. Therefore I started to look around for a new development tool. 
I should &#8220;only&#8221; meet a few requirements.

Open Source &#8211; not because I didn&#8217;t want to spend money but because I wantet to be [...]]]></description>
			<content:encoded><![CDATA[<p>I have been developing M$-Access based solutions for about a decade. The more I dug deeper the more I&#8217;ve been dissatisfied. Therefore I started to look around for a new development tool. <span id="more-104"></span></p>
<p>I should &#8220;only&#8221; meet a few requirements.</p>
<ol>
<li>Open Source &#8211; not because I didn&#8217;t want to spend money but because I wantet to be free.</li>
<li>Web based &#8211; I was tired of hassling aoround with all sorts of dependencies.</li>
<li>Platform idependent &#8211; both for development and runtime.</li>
<li>Multilanguage</li>
<li>a GUI Designer</li>
</ol>
<p>What I&#8217;ve been using (or tried to use)  for all sorts of small apps from around 2005 was:</p>
<ul>
<li><a href="http://www.devdata.de/ccstudio.php">CodeCharge Studio</a> -misses 1,3,4</li>
<li>ActiveGrid &#8211; missed 4 &#8211; and was discontinued &#8211; successor WaveMaker</li>
<li><a href="http://wavemaker.com/">Wavemaker</a> &#8211; missed only 4 &#8211; but sloooow designer</li>
<li>RubyOnRails &#8211; missed 4, 5</li>
<li><a href="http://awareim.com/">AwareIM</a> &#8211; missed 4 &#8211; nice tool, easy to learn, solid apps but _very_ hard to extend</li>
<li>Not to mention those that promised a lot but took hours to install&#8230;..</li>
</ul>
<p><small>I don&#8217;t know if any of my unmet requirements from the above products have changed in the meantime.</small></p>
<p>But someday in spring 2008 I stumpled upon <a href="http://www.openjacob.org/">Open-Jacob</a>. It was some sort of &#8220;love at the first sight&#8221;. It simply does everything I wanted to have.</p>
<p>The first <a href="http://www.baula.at">application</a> built with Open-Jacob had its go-live yesterday and more are to come.</p>
<p><strong>Thanks a lot to <a href="http://www.tarragon-software.com/">Tarragon-Software</a>, Achim Böken, Andreas Sonntag and Andreas Herz for building such a great tool !</strong></p>
<img src="http://hiden.org/wp-content/plugins/pixelstats/trackingpixel.php?post_id=104&amp;ts=1280501851" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://hiden.org/open-jacob/a-modern-odyssey/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	<img style='margin:0;padding:0;border:0;' width='1px' height='1px' src="http://hiden.org/wp-content/plugins/mystat/mystat.php?act=time_load&id=54292&rnd=1664062461" /></channel>
</rss>
