{"id":221,"date":"2008-02-22T07:00:20","date_gmt":"2008-02-22T06:00:20","guid":{"rendered":"http:\/\/bar-solutions.com\/wordpress\/?p=221"},"modified":"2008-02-22T07:03:26","modified_gmt":"2008-02-22T06:03:26","slug":"kc-presentation-on-codegen","status":"publish","type":"post","link":"https:\/\/blog.bar-solutions.com\/?p=221","title":{"rendered":"KC presentation on CodeGen&#8230;"},"content":{"rendered":"<p>On February 21st I did a presentation on <a title=\"Quest CodeGen Utility Community\" href=\"http:\/\/codegen.inside.quest.com\/index.jspa\" target=\"_blank\" rel=\"nofollow\">CodeGen<\/a> at <a title=\"AMIS Technology blog\" href=\"http:\/\/technology.amis.nl\/blog\/\" target=\"_blank\" rel=\"nofollow\">AMIS<\/a>. Just a short presentation on what is possible using this great tool. I have created a couple of questions for the hands-on part of the session.<\/p>\n<p><!--more--><\/p>\n<p>Assignment 1: Build a script that shows the contents (describe) of a table.<\/p>\n<div><script language=\"javascript\" type=\"text\/javascript\">function showHide(ADiv) {if (document.getElementById) {  divhandle = document.getElementById(ADiv).style;} else { if (document.layers) {  divhandle = document.ADiv;} else {  divhandle = document.all.ADiv.style; }}if (divhandle.display == \"\") { divhandle.display = \"none\";} else { divhandle.display = \"\"; } }<\/script><a href=\"javascript:showHide('ffdd8404-1bd5-4296-9fc8-32022b2faf0f')\">Resolution<\/a><\/p>\n<div id=\"ffdd8404-1bd5-4296-9fc8-32022b2faf0f\" style=\"display: none;\">\n<p>Resolution 1: This is the resolution using all the different fields of the COL array. <\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:ede06466-011f-49f8-83bf-ad7a0ec78608\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;;overflow: auto;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #000000; \">Name Type Nullable Default Comments\n-----------------------------------------------\n[FOREACH]COL\n[COLNAME] [DATA_DECLARATION] [COLNULLABLE] [DATA_DEFAULT] [COMMENTS]\n[ENDFOREACH]\n<\/span><\/div><\/pre>\n<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http:\/\/dunnhq.com --><\/div>\n<\/div>\n<\/div>\n<p>Assignment 2: Build a script to create the table.<\/p>\n<p><script language=\"javascript\" type=\"text\/javascript\"><\/p>\n<p> function showHide(ADiv) {\n   if (document.getElementById) { \/\/ DOM3 = IE5, NS6\n     divhandle = document.getElementById(ADiv).style;\n   } else {\n     if (document.layers) { \/\/ Netscape 4\n\t   divhandle = document.ADiv;\n     } else { \/\/ IE 4\n\t   divhandle = document.all.ADiv.style;\n\t }\n   }\n   if (divhandle.display == \"\") { \/\/ shown\n     divhandle.display = \"none\";\n   } else { \/\/ hidden\n     divhandle.display = \"\";\n   }\n }<\/script><br \/>\n<a href=\"javascript:showHide('{56EED78E-0E3A-4e4e-BDFF-4E7516612C79}')\">Resolution<\/a> <\/p>\n<div id=\"{56EED78E-0E3A-4e4e-BDFF-4E7516612C79}\" style=\"display: none\">\n<p>Resolution 2: <\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:b0991d4f-505c-425c-9b4d-91d786b4f671\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;;overflow: auto;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #000000; \">-- Create table\ncreate table [OBJNAME]\n(\n[FOREACH]col[BETWEEN],\n  [COLNAME] [DATA_DECLARATION]\n[ENDFOREACH]\n);<\/span><\/div><\/pre>\n<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http:\/\/dunnhq.com --><\/div>\n<\/div>\n<p>Assignment 3: Retrieve DATA from the CD-Collection table, make it into an HTML file.<\/p>\n<p><script language=\"javascript\" type=\"text\/javascript\"><\/p>\n<p> function showHide(ADiv) {\n   if (document.getElementById) { \/\/ DOM3 = IE5, NS6\n     divhandle = document.getElementById(ADiv).style;\n   } else {\n     if (document.layers) { \/\/ Netscape 4\n\t   divhandle = document.ADiv;\n     } else { \/\/ IE 4\n\t   divhandle = document.all.ADiv.style;\n\t }\n   }\n   if (divhandle.display == \"\") { \/\/ shown\n     divhandle.display = \"none\";\n   } else { \/\/ hidden\n     divhandle.display = \"\";\n   }\n }<\/script><br \/>\n<a href=\"javascript:showHide('{CE35A35D-7112-4e3a-8F86-E66D11F5D41F}')\">Resolution<\/a> <\/p>\n<div id=\"{CE35A35D-7112-4e3a-8F86-E66D11F5D41F}\" style=\"display: none\">\n<p>Resolution 3: Use DEFARRAY to create your own array <\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:ef50ef5b-0532-4df6-a1e1-7e8b193c3700\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;;overflow: auto;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #000000; \">[DEFARRAY]cdcollection[AS]\nselect COL_TITLE TITLE, COL_ARTIST ARTIST\n  from cd_collection\n[ENDDEFARRAY]\n<\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">html<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n  <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">body<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n    <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">h2<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">My CD Collection<\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">h2<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n    <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">table <\/span><span style=\"color: #FF0000; \">border<\/span><span style=\"color: #0000FF; \">=&quot;1&quot;<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n      <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">tr <\/span><span style=\"color: #FF0000; \">bgcolor<\/span><span style=\"color: #0000FF; \">=&quot;#9acd32&quot;<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n        <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">th<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">Title<\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">th<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n        <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">th<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">Artist<\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">th<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n      <\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">tr<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n      [FOREACH]cdcollection\n      <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">tr<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n        <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">td<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">[TITLE]<\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">td<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n        <\/span><span style=\"color: #0000FF; \">&lt;<\/span><span style=\"color: #800000; \">td<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">[ARTIST]<\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">td<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n      <\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">tr<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n      [ENDFOREACH]\n    <\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">table<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n  <\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">body<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n<\/span><span style=\"color: #0000FF; \">&lt;\/<\/span><span style=\"color: #800000; \">html<\/span><span style=\"color: #0000FF; \">&gt;<\/span><span style=\"color: #000000; \">\n <\/span><\/div><\/pre>\n<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http:\/\/dunnhq.com --><\/div>\n<\/div>\n<p>Assignment 4: Create JAVA classes and PL\/SQL Code for a table Example taken from: Oracle and Java Stored Procedures <a href=\"http:\/\/www.developer.com\/db\/article.php\/3337411\">http:\/\/www.developer.com\/db\/article.php\/3337411<\/a><\/p>\n<p><script language=\"javascript\" type=\"text\/javascript\"><\/p>\n<p> function showHide(ADiv) {\n   if (document.getElementById) { \/\/ DOM3 = IE5, NS6\n     divhandle = document.getElementById(ADiv).style;\n   } else {\n     if (document.layers) { \/\/ Netscape 4\n\t   divhandle = document.ADiv;\n     } else { \/\/ IE 4\n\t   divhandle = document.all.ADiv.style;\n\t }\n   }\n   if (divhandle.display == \"\") { \/\/ shown\n     divhandle.display = \"none\";\n   } else { \/\/ hidden\n     divhandle.display = \"\";\n   }\n }<\/script><br \/>\n<a href=\"javascript:showHide('{B6CE4632-65C1-4f49-8615-1FD5004E24E7}')\">Resolution<\/a> <\/p>\n<div id=\"{B6CE4632-65C1-4f49-8615-1FD5004E24E7}\" style=\"display: none\">\n<p>Resolution 4: <\/p>\n<p><strong>Script 1:<\/strong><\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:3de448d9-f279-4a94-a6a3-b1d3428cd10c\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;;overflow: auto;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">RTO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">RTOJavaType<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">AS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">coldatatype<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">VARCHAR2<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">CHAR<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">VARCHAR\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaDataType<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">String\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">coldatatype<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">NUMBER<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">FLOAT<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">DECIMAL<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">INTEGER<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">INT\n     <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaDataType<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">float\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">data_declaration<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">LIKE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">%<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">%\n      <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaDataType<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">float\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n      <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaDataType<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">int\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">coldatatype<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">DATE<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">TIMESTAMP<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">DATETIME\n     <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaDataType<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">Date\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDRTO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">RTO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">RTOJavaSet<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">AS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">coldatatype<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">VARCHAR2<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">CHAR<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">VARCHAR\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaSet<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">setString\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">coldatatype<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">NUMBER<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">FLOAT<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">DECIMAL<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">INTEGER<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">INT\n     <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaSet<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">setfloat\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">data_declaration<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">LIKE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">%<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">%\n      <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaSet<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">setfloat\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n      <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaSet<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">setint\n    <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">coldatatype<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">DATE<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">TIMESTAMP<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">DATETIME\n     <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_JavaSet<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">setDate\n  <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDRTO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n \nimport java.sql.*<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">import oracle.jdbc.*<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \"> \npublic class <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">OBJNAME<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">Manager \\{\n \n   \/\/Add a record to the database.\n   public static void add<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">OBJNAME<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">(\n   <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">FOREACH<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">col<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">BETWEEN<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">\n   <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">INCLUDE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">RTOJavaType\n     {_JavaDataType} <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">COLNAME<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n   <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDFOREACH<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n      ) \\{\n \n      System.out.println(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">Creating new record...<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">)<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \"> \n      try \\{\n         Connection conn <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \">\n            DriverManager.getConnection(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">jdbc:default:connection:<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">)<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \"> \n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_Columns<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_PlaceHolder<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_first<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">Y\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">FOREACH<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">COL\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">IF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">{_first}<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">EQ<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">Y\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_Columns<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">{_Columns}<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">COLNAME<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_PlaceHolder<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">{_PlaceHolder}?\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_first<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">N\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ELSE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_Columns<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">{_Columns}<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">COLNAME<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SETALIAS<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">_PlaceHolder<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">{_PlaceHolder}<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #000000; \">?\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDIF<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDFOREACH<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n         String sql <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \">\n            <\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">INSERT INTO [OBJNAME] <\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \"> +\n            <\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">({_Columns}) <\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \"> +\n            <\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">VALUES ({_PlaceHolder})<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">         PreparedStatement pstmt <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> conn.prepareStatement(sql)<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SET<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">QE_TOOLS.COUNTER<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">0<\/span><span style=\"color: #000000; \">\n         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">FOREACH<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">col\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">SET<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">QE_TOOLS.COUNTER<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">TO<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">{QE_TOOLS.COUNTER+<\/span><span style=\"color: #000000; \">1<\/span><span style=\"color: #000000; \">}\n           <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">INCLUDE<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">RTOJavaSet\n         pstmt.{_JavaSet}({QE_TOOLS.COUNTER}<\/span><span style=\"color: #000000; \">,<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">COLNAME<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">)<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">         <\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">ENDFOREACH<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\n         pstmt.executeUpdate()<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">         pstmt.close()<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">         \\}\n      catch(SQLException e) \\{\n         System.err.println(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">ERROR! Adding Employee: <\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">\n           + e.getMessage())<\/span><span style=\"color: #008000; \">;\n<\/span><span style=\"color: #000000; \">         \\}\n   \\}\n\\}\n <\/span><\/div><\/pre>\n<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http:\/\/dunnhq.com --><\/div>\n<p><strong>Script 2:<\/strong><\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:9b4dd47a-80b5-4a60-bb12-96f22a17bb93\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;;overflow: auto;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #000000; \">loadjava -u scott\/tiger -v -resolve [OBJNAME]Manager.java\n--check if it is valid\nSELECT object_name, object_type, status\n  FROM user_objects\n WHERE object_type LIKE 'JAVA%'\n   AND object_name LIKE '%[OBJNAME]%';\n <\/span><\/div><\/pre>\n<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http:\/\/dunnhq.com --><\/div>\n<p><strong>Script 3:<\/strong><\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:05188a91-ef2f-455f-980f-2761a232aa4b\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;;overflow: auto;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #000000; \">[RTO]RTOJavaType[AS]\n  [IF]coldatatype[IN]VARCHAR2,CHAR,VARCHAR\n    [SETALIAS]_JavaDataType[TO]java.lang.String\n  [ELSIF]coldatatype[IN]NUMBER,FLOAT,DECIMAL,INTEGER,INT\n     [SETALIAS]_JavaDataType[TO]float\n    [IF]data_declaration[LIKE]%,%\n      [SETALIAS]_JavaDataType[TO]float\n    [ELSE]\n      [SETALIAS]_JavaDataType[TO]int\n    [ENDIF]\n  [ELSIF]coldatatype[IN]DATE,TIMESTAMP,DATETIME\n     [SETALIAS]_JavaDataType[TO]Date\n  [ENDIF]\n[ENDRTO]\nCREATE OR REPLACE PROCEDURE add_[OBJNAME] (\n  [FOREACH]col[BETWEEN],\n  [COLNAME] [COLDATATYPE]\n  [ENDFOREACH]\n  )\n  AS LANGUAGE JAVA\n  NAME '[OBJNAME]Manager.add[OBJNAME](\n  [FOREACH]col[BETWEEN],\n  [INCLUDE]RTOJavaType\n  {_JavaDataType}\n  [ENDFOREACH]\n  )';\n\/<\/span><\/div><\/pre>\n<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http:\/\/dunnhq.com --><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>On February 21st I did a presentation on CodeGen at AMIS. Just a short presentation on what is possible using this great tool. I have created a couple of questions for the hands-on part of the session.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-221","post","type-post","status-publish","format-standard","hentry","category-codegen"],"_links":{"self":[{"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=\/wp\/v2\/posts\/221","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=221"}],"version-history":[{"count":0,"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=\/wp\/v2\/posts\/221\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=221"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=221"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.bar-solutions.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}