<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5582097748463419592</id><updated>2012-01-11T10:14:27.620-06:00</updated><category term='Java/JDeveloper'/><category term='Reports'/><category term='RAC'/><category term='General'/><category term='Portal'/><category term='Linux'/><category term='SQL Developer'/><category term='PL/SQL'/><category term='OWB'/><category term='BI Publisher'/><category term='ODI'/><category term='Data Warehousing'/><category term='Virtual Machines'/><category term='BAM'/><category term='APEX'/><category term='OBIEE'/><category term='Apple'/><category term='Training'/><category term='Google'/><title type='text'>Oracle BI &amp;DW Technical Blog and More...</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>82</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1541219984786598048</id><published>2011-07-15T22:06:00.002-05:00</published><updated>2011-07-15T22:10:07.371-05:00</updated><title type='text'>WOW I haven't been here in a while...</title><content type='html'>Anyway, I desperately need to write up some more posts on here, it's been over 1 year.    I've pretty much been buried under BI, Proj mgmt, putting out fires (no no the building types of fires), and other stuff.&lt;br /&gt;&lt;br /&gt;Got back from probably my 50th trip to San Francisco lately....again when I have more time I will start posting things that people can learn from and find useful!&lt;br /&gt;&lt;br /&gt;Take Care!&lt;br /&gt;-Greg&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1541219984786598048?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1541219984786598048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2011/07/wow-i-havent-been-here-in-while.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1541219984786598048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1541219984786598048'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2011/07/wow-i-havent-been-here-in-while.html' title='WOW I haven&apos;t been here in a while...'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-7043945209788519571</id><published>2010-05-20T19:48:00.003-05:00</published><updated>2010-05-20T20:36:39.355-05:00</updated><title type='text'>OBIEE 10.1.3.4.1 with Weblogic 11gR1 and SSO / OID</title><content type='html'>I know I haven't posted in a little while...it's just been the daily grind of work and life I suppose.&lt;br /&gt;&lt;br /&gt;I'll be updating this post later to illustrate what we did to integrate &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;OBIEE&lt;/span&gt; 10.1.3.4.1 with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Weblogic&lt;/span&gt; 11&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;gR&lt;/span&gt;1 and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;SSO&lt;/span&gt;/&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;OID&lt;/span&gt;.   Note, this changes the game, as we're not dealing with deploying the .WAR file to the old Oracle Application Server.   MOD &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;OSSO&lt;/span&gt;?   Not quite!  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Weblogic&lt;/span&gt; 11&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;gR&lt;/span&gt;1 changed the game a bit.  Hence, some of the documentation on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;OBIEE&lt;/span&gt; is not quite up to date (heck, I think it has NEVER been rewritten since 2006???)&lt;br /&gt;&lt;br /&gt;Expecting certain things to work as they used to with the old way to setup &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;SSO&lt;/span&gt; and passing credentials to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;OBIEE&lt;/span&gt;?  Well, they won't be exactly the same, and it sadly wasn't documented anywhere.  Nobody in the Oracle forums, nor on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;metalink&lt;/span&gt;, nor on ANY blog I had seen posted any solutions.  It is only a matter of time before it should be in the docs, as I know at least 3 clients of mine installed &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;Weblogic&lt;/span&gt; recently and have &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;OBIEE&lt;/span&gt;, and might consider &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;SSO&lt;/span&gt;.  I'll do what I can to cover the solution.  Note to all, this was even more difficult because at my client, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;Weblogic&lt;/span&gt; was being installed and administered by another firm that was responsible for the security and web architecture setup.  So we were at their mercy a bit, but they were helpful as well.&lt;br /&gt;&lt;br /&gt;To leave you with one last bit before I write more in a later post, look at the diagram out of the documentation below.  I refer to this as the 'MASTER' plan because it should be practically memorized by most &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;OBIEE&lt;/span&gt; practitioners, considering it has all the default ports, applications, and so on.  I highlighted the areas that should be of concern to you.  It is primarily where the BI Presentation Services Plug-in Resides, and the communication with the BI presentation services themselves.  Assuming you configured &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;SSO&lt;/span&gt; correctly, and you've configured &lt;span style="font-weight: bold;"&gt;MOST&lt;/span&gt; of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;OBIEE&lt;/span&gt; correctly, and you've done what you feel is right and you get to the point where you see the &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_19"&gt;infamous&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;OBIEE&lt;/span&gt; server message "You are not logged in..."  well that's where the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;stumper&lt;/span&gt; comes in.  In a nutshell, you likely will miss 1-2 things here because &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;weblogic&lt;/span&gt; passes the presentation services something it is not expecting.  You will need to change a few things in your &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;instanceconfig&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;xml&lt;/span&gt; file to &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_25"&gt;accommodate&lt;/span&gt; this.  OR, you can dive into &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_26"&gt;Weblogic&lt;/span&gt;, and change a few things as well.  I'll try to share more next time.  We had to look at log file after log file to finally get this one right.  Oh, and this was all pretty much on Linux, not that it matters much.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/S_XgFjt5i6I/AAAAAAAAAbY/7ksfKTFFnsY/s1600/bi_arch.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 292px;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/S_XgFjt5i6I/AAAAAAAAAbY/7ksfKTFFnsY/s400/bi_arch.jpg" alt="" id="BLOGGER_PHOTO_ID_5473527308230429602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Anyway, at my client, a large pharmaceuticals and health care insurance/benefits management company, I got to run into quite a few more advanced issues.&lt;br /&gt;&lt;br /&gt;For one, anyone that has ever read the beginner Ralph Kimball books on dimensional modeling &lt;span style="font-style: italic;"&gt;might&lt;/span&gt; be familiar with the concepts of late arriving fact and late arriving dimensions.  I can get into the gory details on that later, but suffice to say, they are rampant all over the place with the health care industry!  A former colleague of mine was a data architect and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_27"&gt;ETL&lt;/span&gt; admin at a very large insurance company, and told me how common it was, and what a pain in the rear-end as well!  Now, I got to see it first-hand, and realized it was VERY common, at least in that industry.  It presents some unique architectural challenges for modeling and handling of the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_28"&gt;ETL&lt;/span&gt;.    Not a terribly hard problem to solve, but nonetheless, a good experience to get under the belt within this industry that has so much late arriving data.&lt;br /&gt;&lt;br /&gt;Why would the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_29"&gt;healthcare&lt;/span&gt; industry have so much late arriving data?  Well, to summarize a few points, let us think about it.  Think about ALL the data that has to go from 1 place to the next.  Your employer had to send your details to an insurance company.  The insurance company had so set you up in the system, and provide a temporary ID,  maybe not even a real card yet.  You go to the doctor and they file a claim, which is even more data exchanged.  You may get a bill or invoice or just a notice that a claim was filed, but it might not even be a bill yet.  Maybe 1 month later it is a bill and you need to pay your portion of it that insurance didn't cover.  There could be differential diagnoses, multiple prescriptions, and so forth.  Yes, the claim might be filed, and it &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_30"&gt;might&lt;/span&gt; qualify as a FACT in your fact table, but the dimensional attributes such as a drug price, diagnoses, payments, addresses, and so much more might change &lt;span style="font-weight: bold;"&gt;after&lt;/span&gt; the fact table is joined to it's dimensional values on certain keys.  Read more about it in the Kimball Data Modeling book to see a clearer picture.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-7043945209788519571?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/7043945209788519571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/05/obiee-101341-and-sso-oid-with-weblogic.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7043945209788519571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7043945209788519571'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/05/obiee-101341-and-sso-oid-with-weblogic.html' title='OBIEE 10.1.3.4.1 with Weblogic 11gR1 and SSO / OID'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/S_XgFjt5i6I/AAAAAAAAAbY/7ksfKTFFnsY/s72-c/bi_arch.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-780624835841508530</id><published>2010-03-08T21:10:00.002-06:00</published><updated>2010-03-08T21:27:59.634-06:00</updated><title type='text'>Oracle Application Performance Tuning Course</title><content type='html'>&lt;span style="font-family: arial;font-family:arial;" &gt;I just got done custom creating a new Oracle performance tuning / SQL tuning course, and teaching the beginning of it!  This class is ideal for developers that know enough about the database to be a Jr DBA (enough to be dangerous) and emphasizes application tuning, sql tuning, and things developers should be aware of. To summarize, the course that I teach is a full 3 day class on the following topics:&lt;/span&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The Performance Review Lifecycle&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Database and Table Design Considerations&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Database Architecture, Processes, and Parameters that a Developer Should be Aware of&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Cursor Lifecycle including soft and hard parses&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Bind variables, bind variable peeking and bind variables in your SQL (Dynamic SQL)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Cardinality, Selectivity, Computation, etc.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Statistics, and all subtopics like import/export, gathering, what they do, strategies.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The Oracle Optimizer (&lt;span style="font-weight: bold;"&gt;LOTS&lt;/span&gt; of extensive detail on this important topic)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Understanding how to read an Explain Plan from various tools that produce one.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Other tools to help in tuning - TKPROF, Autotrace, AWR, statspack, ADDM, STA, SPA, etc.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Indexing&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Optimizing Joins and join types&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Hints&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;PL/SQL tuning&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Utilizing ANSI SQL to out-perform classic Oracle SQL as you've seen it&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;V$Views to analyze for performance gains&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;How to identify a Performance Issue that you haven't seen yet.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Tuning in different environments (Oracle 8i, 9i, 10g, 11g, OLTP vs DW vs Bulk movements, etc.)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Tips and Tricks&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;...and that's all. &lt;/span&gt;&lt;span style="font-family: arial;"&gt;The initial offering went EXTREMELY well.  I was even surprised.  Hopefully I will be teaching this class more often!  I cannot stress understanding Oracle performance enough, especially to BIDW types who are too used to doing simple joins between a few tables, or let tools like OBIEE with their metadata layers take some of the work out of your hands...for now.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;-Greg&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-780624835841508530?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/780624835841508530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/03/oracle-application-performance-tuning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/780624835841508530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/780624835841508530'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/03/oracle-application-performance-tuning.html' title='Oracle Application Performance Tuning Course'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5653214536733012465</id><published>2010-02-19T09:37:00.010-06:00</published><updated>2010-02-19T10:50:19.358-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ODI'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>Oracle Data Integrator Tutorial- ODI for beginners</title><content type='html'>&lt;span style="font-family: arial;font-family:arial;" &gt;I am going to be writing up a few posts and tutorials on the basics of the architecture (see previous post) and a few beginner topics to get the masses in a mode where they are not intimidated by this tool.&lt;/span&gt;&lt;span style="font-family: arial;"&gt;  The previous post described various aspects to ODI, and the architecture.  We saw various GUIs that ODI allows us to use.  This post (and possibly another one or two) will look at the &lt;/span&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;DESIGNER&lt;/span&gt;&lt;span style="font-family: arial;"&gt; GUI in more detail.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;One of the first things I will say is that the tool can feel a bit foreign if you come from an Informatica/OWB type background like myself.  The emphasis is on building smaller and reusable pieces of code, if you will.  Other tools that tend to be more ETL based (Informatica) and also more GUI and non-declarative based (OWB) are not necessarily the easiest tools to break things into small pieces.  Yes, there are many that say breaking mappings into smaller pieces is a best practice, but the tool doesn't necessarily thrive on your ability to follow that practice.  They don't really revolve around that practice.  There are even mapplets and pluggable mappings, but these pale in comparison to the design methodologies that ODI offers.&lt;/span&gt;&lt;span style="font-family:arial;"&gt;  ODI thrives on code re-use.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;For example, the diagram below shows a typical ETL/ELT from something that may come out of OWB or Informatica (a bit bigger, defined, and manual).&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/S360iSKHO-I/AAAAAAAAAao/LHzglyzEdRE/s1600-h/old.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 197px;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/S360iSKHO-I/AAAAAAAAAao/LHzglyzEdRE/s400/old.JPG" alt="" id="BLOGGER_PHOTO_ID_5439983900992945122" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;The following is the type of development that ODI supports and emphasizes for code reuse:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/S3612SAJnlI/AAAAAAAAAaw/X3owKen9dp0/s1600-h/new.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 240px;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/S3612SAJnlI/AAAAAAAAAaw/X3owKen9dp0/s400/new.bmp" alt="" id="BLOGGER_PHOTO_ID_5439985344060169810" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;If you are a beginner to ODI and used other ETL/ELT tools and yoou are beginning to build out mappings you'll notice many of the mappings you'll build will be more discrete, if you will.  There are also many steps that are done for you.  You can build mappings quite fast in ODI actually.  However, do not be too worried that that tool does quite a bit for you. Like Oracle's JDeveloper tool, you can get into most of the gory details if you'd like to fine-tune certain aspects, even if the tool does much of the work for you.&lt;br /&gt;&lt;br /&gt;You will do the bulk of your work doing mappings in the following interface:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/S367k5MFc_I/AAAAAAAAAbI/_mlzY9Sz4FM/s1600-h/2.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 271px;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/S367k5MFc_I/AAAAAAAAAbI/_mlzY9Sz4FM/s400/2.bmp" alt="" id="BLOGGER_PHOTO_ID_5439991642411332594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;A brief description of what we see above in the Diagram above.  First, notice that the Diagram TAB is selected on the top.  This opens the diagramming tool where 'mappings' are built. In the middle are the data sources.  These sources are physically dragged and dropped from the far left pane of the GUI to this 'sources' section and are then joined, filtered, and so forth.  The right side of the GUI is labeled as the TARGET datastore.  This is your target.  For a beginner, this can be a bit confusing if you're used to OWB because here, the sources and target is separated by differnet parts of the GUI.  You would drag your TARGET table to this target datastore pane in the GUI and not into the same area as the sources.  So, a bit different in that respect.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Below is a zoom in on only the mapping portions of the tool.  Again, on the left are the source portions of the mapping diagram, and on the left is the target datastore.  You might not use the terminology 'datastore' too often, but in this tool you should get used to seeing that term a lot!&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/S362orlVLaI/AAAAAAAAAa4/7w_p4LCjW4I/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 264px;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/S362orlVLaI/AAAAAAAAAa4/7w_p4LCjW4I/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5439986209920462242" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Here is another screenshot of the far left portion of the main GUI, which I tend to call the 'explorer' since it is built out like many software tool's explorer-like interfaces.&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/S366irM-2lI/AAAAAAAAAbA/s2mrmNJB3fs/s1600-h/1.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 196px;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/S366irM-2lI/AAAAAAAAAbA/s2mrmNJB3fs/s400/1.bmp" alt="" id="BLOGGER_PHOTO_ID_5439990504785631826" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Again, one final screenshot to tie it all together what we have seen so far:&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/S36-IByIQjI/AAAAAAAAAbQ/AAKUl_OpPaI/s1600-h/untitled4.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 196px;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/S36-IByIQjI/AAAAAAAAAbQ/AAKUl_OpPaI/s400/untitled4.bmp" alt="" id="BLOGGER_PHOTO_ID_5439994445037060658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;In the next posting, I will go into a bit more detail on the 'explorer' and the many tabs and options available within.  As you might have imagined, these 'mappings' have been created and opened from the explorer on the left, and they are technically referred to as &lt;span style="font-weight: bold;"&gt;'interfaces'.&lt;/span&gt;  I'll talk a bit more on the concept of &lt;span style="font-weight: bold;"&gt;interfaces&lt;/span&gt;, and go into a bit more detail on working with your &lt;span style="font-weight: bold;"&gt;interfaces&lt;/span&gt; (A.K.A. mappings to most of us).&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5653214536733012465?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5653214536733012465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/oracle-data-integrator-tutorial-odi-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5653214536733012465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5653214536733012465'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/oracle-data-integrator-tutorial-odi-for.html' title='Oracle Data Integrator Tutorial- ODI for beginners'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/S360iSKHO-I/AAAAAAAAAao/LHzglyzEdRE/s72-c/old.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-881195298193854814</id><published>2010-02-08T16:08:00.010-06:00</published><updated>2010-02-08T16:25:14.280-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ODI'/><title type='text'>ODI Oracle Data Integrator Architecture Part 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/S3COCh94DyI/AAAAAAAAAag/nKhF0TiWbz0/s1600-h/1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 557px; height: 220px;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/S3COCh94DyI/AAAAAAAAAag/nKhF0TiWbz0/s400/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5436000924364967714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The following series will be a high level look at the pieces, components, and basic workings of ODI, which should help any reader comprehend some of the finer pieces of this data integration and ELT tool.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;The GUI graphical modules are listed above.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The four ODI GUIs – Designer, Operator, Topology Manager and Security Manager, are based on Java. They can be installed on any platform that supports Java Virtual Machine 1.4, including Windows, Linux, HP-UX, Solaris, pSeries and so on.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Designer is the GUI for defining metadata, and rules for transformation and data quality. It uses these to generate scenarios for production, and is where all project development takes place. It is the core module for developers and metadata administrators.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Operator is used to manage and monitor ODI in production. It is designed for production operators and shows the execution logs with errors counts, the number of rows processed, execution statistics etc. At design time, developers use Operator for debugging purposes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Topology Manager manages the physical and logical architecture of the infrastructure. Servers, schemas and agents are registered here in the ODI Master Repository. This module is usually used by the administrators of the infrastructure.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Security Manager manages users and their privileges in ODI. It can be used to give profiles and users access rights to ODI objects and features. This module is usually used by security administrators.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;All ODI modules store their information in the centralized ODI repository.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-881195298193854814?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/881195298193854814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/odi-oracle-data-integrator-architecture.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/881195298193854814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/881195298193854814'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/odi-oracle-data-integrator-architecture.html' title='ODI Oracle Data Integrator Architecture Part 1'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/S3COCh94DyI/AAAAAAAAAag/nKhF0TiWbz0/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5120242211807167968</id><published>2010-02-08T11:08:00.007-06:00</published><updated>2010-02-08T13:43:19.162-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>ETL Misconceptions and Mistakes Made While Working With Large Databases - 1TB or Greater</title><content type='html'>&lt;span style="font-family:arial;"&gt;I'd first like to give some due credit to a fellow blogger that has pushed out so much information on data warehouse topics, it is staggering.  He is Dan &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Lindstedt&lt;/span&gt;, and this next piece on my blog is about some common &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;etl&lt;/span&gt; mistakes on large systems&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, with my commentary.  His work appears frequently on the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Beyenetwork&lt;/span&gt; blogs.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Please note that some of these issues listed below might not necessarily make a difference if you are dealing with a smaller system with less data / rows.  If you have never worked on a larger size database, some of these concepts might even seem unfamiliar or odd.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Top &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;ETL&lt;/span&gt; mistakes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;1) Incorporating Inserts, Updates, and Deletes in to the same data flow / same process.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;This is a great point, if for nothing less than splitting the individual tasks into discrete pieces. For a target table load, try an insert job, an update job, and other jobs like deletion or massive bulk loading jobs.  These will all vary based on time and loads.  Inserts in many cases being simple and easy, and updates and especially deletes sometimes becoming more taxing.&lt;/span&gt;&lt;br /&gt;&lt;p face="arial" style="font-weight: bold;"&gt;2) Sourcing multiple systems at the same time, depending on heterogeneous systems for data.&lt;/p&gt; &lt;p style="font-family: arial;"&gt;This can be cause for great concern if you try this, unless the data volume is smaller, again, we are referring to larger loads and larger systems though.&lt;br /&gt;&lt;/p&gt;&lt;p face="arial" style="font-weight: bold;"&gt;3) Targeting more than 1 or 2 target tables&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;You might consider 2 tables at once if it has a relationship, hierarchical, parent-child,  or otherwise, but this should not happen often!  That should be an exception, most large volume &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;ETL&lt;/span&gt; jobs should be 1 target table.&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;4) moving rows that are too wide through a single process&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;Any ways to get around this issue or mistake?  Comments?&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;5) loading very large data sets to targets WITH INDEXES ON&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;Many tools allow you to turn indexes off and then recompute and turn on again after a job- &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;datastage&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;owb&lt;/span&gt;, etc.  You can code it custom if you need to.  Again, you don't need indexes and keys if you have other ways to check your referential integrity.&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;6) not running a cost-based optimizer in the database&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;&lt;span style="font-weight: normal;"&gt;Big mistake here.  You should always consider a routine after all loads are finished to analyze, or gather stats or other such details for your database just so that your cost-based optimizer, or other tool (in a non-Oracle database) can gather all the necessary information about new structures, indexes, and so forth.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;7) not keeping statistics up to date in the database&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;&lt;span style="font-weight: normal;"&gt;Again, this is similar to 6, almost exactly.  You'd want current statistics so the cost based optimizer takes advantage of the current structure and used the right joins and indexes, etc.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;8) not producing the correct indexes on the sources / &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;lookups&lt;/span&gt; that need to be accessed&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;blockquote style="font-family: arial;"&gt;  &lt;/blockquote&gt;&lt;span style="font-family:arial;"&gt;You should know well enough where the majority of your &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;lookups&lt;/span&gt; and/or joins are going to happen....indexes....use them!  But, again, see the above mistake about keeping them during a load.&lt;/span&gt;&lt;br /&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;9) not purchasing enough RAM for the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;ETL&lt;/span&gt; server to house the RAM caches in memory.&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;Not applicable to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;OWB&lt;/span&gt; necessarily, more for things like &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Informatica&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;DataStage&lt;/span&gt;.&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;10) running on a 32 bit environment which causes significant OS swapping to occur&lt;br /&gt;11) running on a 32 bit environment which causes significant OS swapping to occur&lt;br /&gt;12) running on a 32 bit environment which causes significant OS swapping to occur&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;The original author had a major issue with #10, so as to repeat it for #11 and for #12!!!&lt;/p&gt;&lt;p style="font-family: arial;"&gt;The original author points out the following concerning #10-#12:&lt;/p&gt;&lt;p style="font-style: italic; font-family: arial;"&gt;"Let me explain this one. Any single process started within a 32 bit environment is limited (immediately) to 2GB of addressable RAM, now - take away the RAM needed for the threads or the executable engine code... usually around 300M or more, leaving us with 1.5GB to 1.7GB of RAM to work with. Then, take away any "caching" objects that might use this RAM, and multiply that "drop" in RAM by the number of caching objects that you have....  &lt;/p&gt;&lt;p style="font-style: italic; font-family: arial;"&gt;Now, you are left with possibly 200MB, maybe 100MB of RAM left to allocate for "data reading/data writing"... and it drops from there.&lt;/p&gt;  &lt;p style="font-style: italic; font-family: arial;"&gt;Let me explain this other piece as well: Windows 32 bit OS MUST RUN CODE UNDER THE 640k BOUNDARY!!! So there's additional Limitations there, Windows 32 Bit &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;PAGEFILE&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;SYS&lt;/span&gt; (swap/temp) is SINGLE THREADED, AND BLOCKS I/O OPERATIONS when swapping pieces to disk. Oh yes, one more: Windows 32 Bit - RAM allocation will ONLY give the application 1/2 of the requested RAM, and AUTOMATICALLY put 1/2 in the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;pagefile&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;sys&lt;/span&gt; swap area.&lt;/p&gt;  &lt;p style="font-style: italic; font-family: arial;"&gt;By the way, here's a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;tid&lt;/span&gt;-bit for you that you have to try to believe:&lt;br /&gt;If you are running Windows 32 bit, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;SQLServer&lt;/span&gt; (either version)....&lt;br /&gt;1. Change your &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;ETL&lt;/span&gt; "block size" to 8k to match the Database (4k I think in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;SQLServer&lt;/span&gt;2000)&lt;br /&gt;2. Change your row size to fit as many rows as possible into an 8k block, the more rows per block the faster the performance.&lt;br /&gt;3. Change your commit point to 8,500 rows (this is the sweet spot)&lt;br /&gt;4. Check in on NETWORK PACKET SIZES and increasing those between the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;ETL&lt;/span&gt; engine and the Database, increase them from 2k/4k to 8k - again to match the disk.&lt;br /&gt;5. USE &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;ODBC&lt;/span&gt;/OLE DB connectivity; do NOT use NATIVE libraries (except in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;SQLServer&lt;/span&gt;2005 direct CT-LIB). If your tool uses DB-LIB as "native" connectivity, it will be slow, slow slow - DB-LIB is 12 year old technology, and is NOT multi-threaded, nor parallel, where CT-LIB is.&lt;/p&gt;  &lt;p style="font-style: italic; font-family: arial;"&gt;Windows 64 Bit does NOT have these limitations, but requires 30% more hardware to run "cool" and efficiently, but it is FAST when installed and configured correctly on the right hardware.&lt;/p&gt;  &lt;p style="font-style: italic; font-family: arial;"&gt;Linux, and Unix do not have these limitations either.&lt;/p&gt;  &lt;span style="font-style: italic;font-family:arial;" &gt;So, architecture is everything."&lt;/span&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;13) Trying to do "too much" inside of a single data flow, increasing complexity and dropping performance&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;This does make the job harder to debug and sometimes you get those random out of resource errors...Beware.  Split work where appropriate.  If a mapping or process looks too complicated, it probably is.&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;14) believing that "I need to process all the data in one pass because it's the fastest way to do it."&lt;br /&gt;&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;"breaking-up" a single flow into multiple flows , and changing the width of the data sets and possibly the parallelism along the way would help the performance.&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;15) Letting the database "bounce" errors back to the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;ETL&lt;/span&gt; tool, dropping flow rates and throughput rates by factors of 4x to 10x.&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt;&lt;span style="font-family:arial;"&gt;comments?&lt;/span&gt;&lt;br /&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;16) "THINKING" in a transactional mode, rather than a batch mode, and processing each row, one row at a time (like they would code a cursor in a database language).&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt; &lt;p style="font-family: arial;"&gt;A bit hard to avoid in a row-by-row &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;ETL&lt;/span&gt; tool!   The parallel architecture and caching and memory sharing and a bunch of other things make it fast.&lt;/p&gt;&lt;p style="font-weight: bold; font-family: arial;"&gt;17) LOOPING inside an &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_26"&gt;ETL&lt;/span&gt; process, because they think it's necessary (transactional processing again).&lt;/p&gt; &lt;blockquote style="font-family: arial;"&gt; &lt;/blockquote&gt;&lt;span style="font-family:arial;"&gt;Careful here no matter which tool you are using. Looping, as it goes WAY back in simple logical programming can be a blessing or a disaster.  If you need to loop, there's probably another way to do what you're attempting, in a more efficient way.  This does not necessarily mean using a LOOP in an &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_27"&gt;OWB&lt;/span&gt; process flow, but trying to loop somehow in the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_28"&gt;ETL&lt;/span&gt; itself, called a stored &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_29"&gt;function&lt;/span&gt; or procedure, etc.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5120242211807167968?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5120242211807167968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/etl-performance-tips-for-large.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5120242211807167968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5120242211807167968'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/etl-performance-tips-for-large.html' title='ETL Misconceptions and Mistakes Made While Working With Large Databases - 1TB or Greater'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3486332717758909638</id><published>2010-02-05T19:57:00.004-06:00</published><updated>2010-02-05T20:00:55.302-06:00</updated><title type='text'>GO New Orleans Saints!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/S2zNMTdsmAI/AAAAAAAAAaM/xNH-4qdJ3pU/s1600-h/saints.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 187px; height: 163px;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/S2zNMTdsmAI/AAAAAAAAAaM/xNH-4qdJ3pU/s400/saints.JPG" alt="" id="BLOGGER_PHOTO_ID_5434944461596301314" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I hope they win the super bowl and knock off those dumb Colts.  They beat my Bears in 2006-2007, so GO SAINTS!  Who DAT?!&lt;img src="file:///C:/DOCUME%7E1/Greg/LOCALS%7E1/Temp/moz-screenshot.png" alt="" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3486332717758909638?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3486332717758909638/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/go-new-oreans-saints.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3486332717758909638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3486332717758909638'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/go-new-oreans-saints.html' title='GO New Orleans Saints!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/S2zNMTdsmAI/AAAAAAAAAaM/xNH-4qdJ3pU/s72-c/saints.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-7351842678899217284</id><published>2010-02-05T19:52:00.002-06:00</published><updated>2010-02-05T19:56:09.229-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>Date Dimensions anybody?</title><content type='html'>Here is some sample code for creating a date dimension, It's been out there before, My colleague Dave posted this on his blog at one point.  I'd like to take a moment and maybe look at how Oracle implements their date dim with the OWB date dimension wizard....hmmmm!&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;SELECT TO_CHAR (dt, 'YYYYMMDD') date_id,&lt;br /&gt;      dt date_value,&lt;br /&gt;      TO_CHAR (dt, 'MM/DD/YYYY') date_formatted_name,&lt;br /&gt;      TO_CHAR (dt, 'Mon DD, YYYY') date_name,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') year_num,&lt;br /&gt;      TRUNC (dt, 'YYYY') year_start_date,&lt;br /&gt;      ADD_MONTHS (TRUNC (dt, 'YYYY'), 12) - 1 year_end_date,&lt;br /&gt;      TO_NUMBER (TO_CHAR (dt, 'Q')) quarter_num,&lt;br /&gt;      'Q' || TO_CHAR (dt, 'Q') quarter_name,&lt;br /&gt;      TRUNC (dt, 'Q') quarter_start_date,&lt;br /&gt;      ADD_MONTHS (TRUNC (dt, 'Q'), 3) - 1 quarter_end_date,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') || '-' || 'Q' || TO_CHAR (dt, 'Q') year_quarter_name,&lt;br /&gt;      TO_CHAR (dt, 'MM') month_num,&lt;br /&gt;      TO_CHAR (dt, 'Mon') month_short_name,&lt;br /&gt;      TO_CHAR (dt, 'Month') month_long_name,&lt;br /&gt;      TRUNC (dt, 'MM') month_start_date,&lt;br /&gt;      LAST_DAY (dt) month_end_date,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') || '-' || TO_CHAR (dt, 'Mon') year_month_name_1,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') || '-' || TO_CHAR (dt, 'MM') year_month_num_1,&lt;br /&gt;      TO_CHAR (dt, 'Mon') || ' ' || TO_CHAR (dt, 'YYYY') year_month_name_2,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') || TO_CHAR (dt, 'MM') year_month_num_2,&lt;br /&gt;      TO_CHAR (dt, 'WW') week_of_year_num,&lt;br /&gt;      TO_CHAR (dt, 'W') week_of_month_num,&lt;br /&gt;      TRUNC (dt, 'W') week_start_date,&lt;br /&gt;      TRUNC (dt, 'W') + 6 week_end_date,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') || TO_CHAR (dt, 'WW') year_week_num,&lt;br /&gt;      TO_CHAR (dt, 'YYYY') || '-' || TO_CHAR (dt, 'WW') year_week_name,&lt;br /&gt;      TO_CHAR (dt, 'D') weekday_num,&lt;br /&gt;      TO_CHAR (dt, 'Day') weekday_name&lt;br /&gt; FROM (SELECT     TO_DATE (:start_date) + ROWNUM dt&lt;br /&gt;             FROM DUAL&lt;br /&gt;       CONNECT BY TO_DATE (:start_date) + ROWNUM &lt;= TO_DATE(:end_date));&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-7351842678899217284?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/7351842678899217284/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/date-dimensions-anybody.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7351842678899217284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7351842678899217284'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/date-dimensions-anybody.html' title='Date Dimensions anybody?'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4541312421845215522</id><published>2010-02-05T19:15:00.006-06:00</published><updated>2010-02-08T21:06:50.348-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Metadata reporting on the OWB 11gR1 repository- options?</title><content type='html'>&lt;span style="font-family:arial;"&gt;There are quite a few clients, coworkers and managers I've met with that feel the documentation capabilities of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;OWB&lt;/span&gt; are, shall we say....lacking a bit.  Sure, there is the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;OWB&lt;/span&gt; online repository browser which is quite handy and gives you a lot of information.  There is the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;metadata&lt;/span&gt; lineage and impact analysis diagramming which again is quite handy.  There are various tricks one can do with OMB*PLUS or experts to whip up some simple documentation.  Of course when you want to get specific, then it becomes a challenge.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Say you want a report, with minimal work, that is in a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;CSV&lt;/span&gt; or excel spreadsheet showing all sorts of values that you figure you can grab from the repository somehow.  Again, you can accomplish some great things with OMB and experts, and I have done this, but many times it is too time intensive and overkill.  Sometimes you might consider &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;UDOs&lt;/span&gt; (User Defined Objects) which can be created with OMB scripting, which give you additional fields and properties to use on your objects.  This can make things easy when you are in the beginning of a project and you can tackle documenting things as you go along.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;What if you're 50% or even 90% done with your project, and someone demands something - fast.  I say, look at the repository quickly, write some &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;SQL&lt;/span&gt;, and get it out there fast.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Well in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;OWB&lt;/span&gt; 11&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;gR&lt;/span&gt;1, the repository is broken down into things called &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;workspaces&lt;/span&gt;.  These &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;workspaces&lt;/span&gt; have separate owners, and they have users themselves.    So if you want to access the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;OWBSYS&lt;/span&gt; schema's many views that hold important &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;metadata&lt;/span&gt;, you'll need to set some context for the user accessing the data- namely the various workspace owners.  Below are a few &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;steps&lt;/span&gt; that have been published in forums and the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;owb&lt;/span&gt; blog as well that outline what you should do if you cannot see any data in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;OWBSYS's&lt;/span&gt; views.....&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;First read &lt;/span&gt;&lt;a style="font-family: arial;" href="http://blogs.oracle.com/warehousebuilder/2008/08/owb_public_views_in_11g_release_1.html"&gt;this&lt;/a&gt;&lt;span style="font-family: arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Then....&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b face="arial"&gt;&lt;/b&gt;&lt;b face="arial"&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;THEN&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, here are 2 sample scripts that are in the oracle forums as well.  These should get you started, and get your mind thinking i terms of what other views you'd like to look at, and what other columns are you interested in...as well as the various ways to join the views!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;--This script focuses more on mapping contents...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;select&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   distinct 'TARGET',&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   comp.map_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   comp.data_entity_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   comp.operator_type&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; from&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_65"&gt;xform&lt;/span&gt;_map_components comp,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_66"&gt;xform&lt;/span&gt;_map_parameters &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_67"&gt;param&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; where&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   lower(operator_type)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;      in ('table', 'view', 'dimension', 'cube')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;      and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_68"&gt;param&lt;/span&gt;.map_component_id = comp.map_component_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;      and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_69"&gt;param&lt;/span&gt;.source_parameter_id is not null&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; UNION&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; select&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   distinct 'SOURCE',&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   t1.c1,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   t1.c2,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   t1.c3&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; from&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   (select&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   comp.map_name c1,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   comp.data_entity_name c2,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   comp.operator_type c3,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   max(&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_70"&gt;param&lt;/span&gt;.source_parameter_id) c4&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; from&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_71"&gt;xform&lt;/span&gt;_map_components comp,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_72"&gt;xform&lt;/span&gt;_map_parameters &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_73"&gt;param&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; where&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   lower(operator_type) in&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;                            ('table', 'view', 'dimension', 'cube')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;      and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_74"&gt;param&lt;/span&gt;.map_component_id = comp.map_component_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;  group by&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; comp.map_name, comp.data_entity_name, comp.operator_type) t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; where t1.c4 is null&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; order by 2,1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;--This script focuses more on source to target tables and column mappings&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;SELECT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_75"&gt;TBL&lt;/span&gt;_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_76"&gt;LOC&lt;/span&gt; ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_77"&gt;TBL&lt;/span&gt;_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_78"&gt;FLD&lt;/span&gt;_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_79"&gt;TBL&lt;/span&gt;_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_80"&gt;LOC&lt;/span&gt; ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_81"&gt;TBL&lt;/span&gt;_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_82"&gt;FLD&lt;/span&gt;_name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    FROM&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;      SELECT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_83"&gt;parms&lt;/span&gt;.map_component_id S_COMP_id ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_84"&gt;parms&lt;/span&gt;.parameter_id S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_85"&gt;PARM&lt;/span&gt;_id     ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_86"&gt;colms&lt;/span&gt;.entity_name S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_87"&gt;TBL&lt;/span&gt;_name     ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_88"&gt;colms&lt;/span&gt;.column_name S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_89"&gt;FLD&lt;/span&gt;_name     ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_90"&gt;tbls&lt;/span&gt;.schema_name S_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_91"&gt;TBL&lt;/span&gt;_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_92"&gt;LOC&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;        FROM&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_93"&gt;xform&lt;/span&gt;_map_parameters &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_94"&gt;PARMS&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_95"&gt;xform&lt;/span&gt;_map_components COMPS,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_columns &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_96"&gt;COLMS&lt;/span&gt;             ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_tables &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_97"&gt;TBLS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       WHERE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       source_parameter_id            IS NULL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_98"&gt;parms&lt;/span&gt;.map_component_id      = comps.map_component_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND UPPER(comps.operator_type) IN ('TABLE','DIMENSION')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_99"&gt;parms&lt;/span&gt;.data_item_id          =&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_100"&gt;colms&lt;/span&gt;.column_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_101"&gt;colms&lt;/span&gt;.entity_id             =&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_102"&gt;tbls&lt;/span&gt;.table_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;      SELECT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_103"&gt;parms&lt;/span&gt;.map_component_id T_COMP_id ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_104"&gt;parms&lt;/span&gt;.parameter_id T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_105"&gt;PARM&lt;/span&gt;_id     ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_106"&gt;parms&lt;/span&gt;.source_parameter_id T_Sid  ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_107"&gt;colms&lt;/span&gt;.entity_name T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_108"&gt;TBL&lt;/span&gt;_name     ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_109"&gt;colms&lt;/span&gt;.column_name T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_110"&gt;FLD&lt;/span&gt;_name     ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_111"&gt;tbls&lt;/span&gt;.schema_name T_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_112"&gt;TBL&lt;/span&gt;_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_113"&gt;LOC&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;        FROM&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_114"&gt;xform&lt;/span&gt;_map_parameters &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_115"&gt;PARMS&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_116"&gt;xform&lt;/span&gt;_map_components COMPS,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_columns &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_117"&gt;COLMS&lt;/span&gt;             ,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       all_iv_tables &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_118"&gt;TBLS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       WHERE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       source_parameter_id            IS NOT NULL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_119"&gt;parms&lt;/span&gt;.map_component_id      = comps.map_component_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND UPPER(comps.operator_type) IN ('TABLE','DIMENSION')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_120"&gt;parms&lt;/span&gt;.data_item_id          =colms.column_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;       AND colms.entity_id             =tbls.table_id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   WHERE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;   S_PARM_id=T_Sid&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4541312421845215522?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4541312421845215522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/reporting-on-owb-11gr1-repository.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4541312421845215522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4541312421845215522'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/reporting-on-owb-11gr1-repository.html' title='Metadata reporting on the OWB 11gR1 repository- options?'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5093373456112066720</id><published>2010-02-01T12:57:00.001-06:00</published><updated>2010-02-01T12:58:40.934-06:00</updated><title type='text'>Gartner's take on oracle- quite positive.</title><content type='html'>&lt;span style="font-family: arial;"&gt;see article &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.gartner.com/technology/media-products/reprints/oracle/article121/article121.html"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5093373456112066720?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5093373456112066720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/02/gartners-take-on-oracle-quite-positive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5093373456112066720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5093373456112066720'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/02/gartners-take-on-oracle-quite-positive.html' title='Gartner&apos;s take on oracle- quite positive.'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-931966263817182079</id><published>2010-01-31T16:48:00.002-06:00</published><updated>2010-02-05T19:29:38.999-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Virtual Machines'/><category scheme='http://www.blogger.com/atom/ns#' term='Training'/><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>Data Warehousing Training</title><content type='html'>&lt;span style="font-family: arial;"&gt;I just got done custom creating an advanced data warehousing class, along with updating our beginner course to utilize Oracle 11g technologies.  Whew, talk about a lot of work and only a short time to get it done!  To summarize, the course that I teach is a full 5 day class on the following topics:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;-Beginner Course Topics-&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Beginning Data Warehousing&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Dimensional Modeling&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Oracle 11g Database options for Data Warehousing&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Oracle Warehouse Builder OWB 11gR1 introduction&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;OWB11g Architecture and Installation&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;OWB11g and OWB 10gR2 differences, similarities&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Exploring OWB11g Interface&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Common setup of typical scenarios with remote machines and schemas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Building ETL Mappings from source to staging to target&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Deep-Dive into OWB Mapping best practices and tips with the operators&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Understanding Data Quality&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Data Profiling and Data Rules Option within OWB11g&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Advanced operators- Match &amp;amp; Merge, pre-post mapping operators, table functions, etc.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Understanding Workflow installation and Process Flow Basics&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;-Advanced Course Topics-&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Oracle OLAP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Understanding Oracle's Position on OLAP &amp;amp; Hyperio Essbase&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;How to use OWB to construct full MOLAP cubes and how it differs from ROLAP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Extensive ETL Lab (2-3 hour lab encompassing many advanced techniques)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Pluggable Mappings&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The Metadata Manager (Impact, Dependency, and Propagation)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Lifecycle Management (MDLs, Snapshots, Signatures, importation, exportation, comparison of&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;  snapshots, etc.)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Security in OWB&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Extra detail on Process Flows and Scheduling&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;OMB*PLUS scripting&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;OWB Experts&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Advanced Tips and Tricks for project management, and high Performance&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;...and that's all.  I built out about 90% of this class and taught it recently to pretty good reviews... Let's hope there's more students in store as I prepare to build out a new offering to my students!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Cheers&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;-Greg&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-931966263817182079?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/931966263817182079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2010/01/data-warehousing-training.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/931966263817182079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/931966263817182079'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2010/01/data-warehousing-training.html' title='Data Warehousing Training'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6572056620588222201</id><published>2009-12-27T13:46:00.004-06:00</published><updated>2009-12-27T14:01:13.754-06:00</updated><title type='text'>Avatar, the movie</title><content type='html'>&lt;span style="font-family:arial;"&gt;I haven't blogged in quite a while.   I apologize to any readers that come here either for discussion or to learn something.  I have (for better or worse) been summoned to jury duty here in the U.S.   For those that are unfamiliar, in the U.S. anybody that registers a vehicle or registers to vote will eventually be called upon to do their civic duty.  Jury duty is a process where you might be selected by a lawyer to serve as one of the jurors on a case that is tried in court with a Judge and jury.  I not only was summoned for duty, but I was also selected to be on the actual jury.  During this time, we're asked to have as little interaction with the 'real' world as is possible, and to never talk about the case.  Now that it is over, after 2 whole trying weeks, I can feel more comfortable blogging and such.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;This post is going to be a review of a movie I saw this past Christmas Eve (Dec 24th), called Avatar.  Most people in the world now should have at least heard of it since it cost over 240 million US dollars to produce, and another 140 million dollars was spent marketing it.  Those figures may even be higher in reality.  What can I say about it?  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Simply Incredible&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;!!!!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This has to be one of the most amazing movies I have ever seen, period.  Not since the epic Lord of the Rings movies have I felt so enthralled, emotional, and pulled into a movie as deeply as this.  I also should mention I saw it in 3D.  They offer it in 3D and regular formats.  I think seeing it in 3D was even more impressive.  I could go on and on about this movie, but I won't.  I will see it again for sure.  My fiance and I were completely stunned with the movies grand scope and awesome graphics and environment.  You completely forget that what you are looking at most of the time does NOT exist!  It is graphics!  The characters are realistic, and believable.&lt;br /&gt;&lt;br /&gt;Again, this is easily in my top 10 movies I have ever seen, and I recommend it as highly as I can.&lt;br /&gt;&lt;br /&gt;Please feel free to drop a comment on this.  P.S.- I have read all the critic articles about how this movie has an underlying theme such as anti-American, anti-African native, feminist, non-feminist, anti-human, you name it.  Sure, there are many themes here that pull on your emotions, but please see the move for what it is first, and then delve deeply into your own subliminal interpretations afterward.  One thing is for sure, it makes me think about human irresponsibility and greed and the slow destruction of our own planet...and to this most of us are guilty.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6572056620588222201?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6572056620588222201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2009/12/avatar-movie.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6572056620588222201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6572056620588222201'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2009/12/avatar-movie.html' title='Avatar, the movie'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-270413290649740973</id><published>2009-09-30T15:55:00.002-05:00</published><updated>2009-09-30T15:58:00.427-05:00</updated><title type='text'>Just because I think Google tools are cool...</title><content type='html'>&lt;span style="font-family: arial;"&gt;A marriage of google and BI...not bad.  I'll link here to &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.rittmanmead.com/2009/09/30/taking-a-look-at-panorama-and-google-apps/"&gt;Mark's blog&lt;/a&gt;&lt;span style="font-family: arial;"&gt; to let you see what I mean.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Google has long been (whether you knew it or not) a VERY heavy database-centric company, and they are harnessing the concept of SAAS like few others.  This is a great representation of a nice tool with some 'oopmh!' (Is that a word?)  I expect Google to grow more powerful in this space.  We'll see.  I'll be watching.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-270413290649740973?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/270413290649740973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2009/09/just-because-i-think-google-tools-are.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/270413290649740973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/270413290649740973'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2009/09/just-because-i-think-google-tools-are.html' title='Just because I think Google tools are cool...'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5171209459610242090</id><published>2009-09-25T09:35:00.002-05:00</published><updated>2010-02-05T19:29:57.579-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>Helpful Links on Data Warehousing Fundamentals</title><content type='html'>&lt;span style="font-family: arial;"&gt;These might not all be 'fundamentals' but the articles at this link are solid.  Many may not apply to you since they are great when applied to very specific situations (such as modeling multiple employee dimensions).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;In general though, I think many people can learn something here.  Kimball and sometimes Margy Ross here share good insight.  They're not going to give you the gold nuggets that you'll likely get from their paid training, but the articles will get you thinking about your design.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://www.ralphkimball.com/html/articles.html"&gt;HERE&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5171209459610242090?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5171209459610242090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2009/09/helpful-links-on-data-warehousing.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5171209459610242090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5171209459610242090'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2009/09/helpful-links-on-data-warehousing.html' title='Helpful Links on Data Warehousing Fundamentals'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4520925187756055813</id><published>2009-06-25T09:42:00.005-05:00</published><updated>2009-09-04T10:08:19.945-05:00</updated><title type='text'>I have been AFK! - away from the keyboard</title><content type='html'>Well not actually.  I have been in front of a computer or using a keyboard every single day practically since my last post in April!  Work has been extraordinarily stressful and busy.  You know...when you have 10 tasks and 2 people?  :)  Yes, THAT busy.  In a way I suppose that's a good thing.  We've had a global meltdown since the end of 2008 in the economy.  Things picked up a bit since their March lows...up a good 20-30% depending on the index you measure.&lt;br /&gt;&lt;br /&gt;There's never a shortage of work for people that really know how to do it.  So, as I said...maybe the mind-numbing heaps of work is a good thing in this economic storm.&lt;br /&gt;&lt;br /&gt;I want to apologize for not posting more regularly! I used to take it upon myself to blog while waiting for things, sitting in an airport, having a spare 30 minutes to share interesting observations on Oracle.  I just haven't had that time recently :(&lt;br /&gt;&lt;br /&gt;One link I would like to provide is courtesy of &lt;a href="http://it.slashdot.org/story/09/06/25/0228217/IT-and-Health-Care"&gt;slashdot&lt;/a&gt;.  I read there regularly.  This article and the following comments (warning, MANY comments) are mostly about IT in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;healthcare&lt;/span&gt;, and why it is SO behind.  It follows up a bit on my last post in April about &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Healthcare&lt;/span&gt; and Medical Informatics.&lt;br /&gt;&lt;br /&gt;Another posting I have decided to link to simply burns me up.  Very Angry! &lt;a href="http://news.slashdot.org/story/09/06/22/0019233/Indian-CEO-Says-Most-US-Tech-Grads-Unemployable"&gt;Here&lt;/a&gt;&lt;br /&gt;Read on if you dare!  I whole-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;heartedly&lt;/span&gt; disagree with this analysis, and I have many years of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;firshand&lt;/span&gt; experience!&lt;br /&gt;&lt;br /&gt;I also wanted to mention (Sept 4 2009) that I received this very interesting comment.  I didn't know what language it was, but I assumed arabic, hebrew, russian...I was not sure.  So Google's translator was VERY handy!  it detected the comment attached to this post was in Russian and tried to give a best translation to English.  Here it is:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.shertrans.ru/" rel="nofollow" target="_blank"&gt;Если&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.symbian.kh.ua/" rel="nofollow" target="_blank"&gt;врач&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.juve-fan.com/" rel="nofollow" target="_blank"&gt;знает&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.pesni7.ru/" rel="nofollow" target="_blank"&gt;название&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.textmp3.ru/" rel="nofollow" target="_blank"&gt;вашей&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.sweetba-by.ru/" rel="nofollow" target="_blank"&gt;болезни&lt;/a&gt;&lt;span style="font-family: arial;"&gt;, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.avtosocialka.ru/" rel="nofollow" target="_blank"&gt;это&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.texnomanij.ru/" rel="nofollow" target="_blank"&gt;еще&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.sportblok.ru/" rel="nofollow" target="_blank"&gt;не&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.auto-in-usa.ru/" rel="nofollow" target="_blank"&gt;значит&lt;/a&gt;&lt;span style="font-family: arial;"&gt;, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.cancer-car-donations.info/" rel="nofollow" target="_blank"&gt;что&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.rusmeco.net/" rel="nofollow" target="_blank"&gt;он&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.shaltaiboltai.ru/" rel="nofollow" target="_blank"&gt;знает&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ventilashion.ru/" rel="nofollow" target="_blank"&gt;что&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.love362.ru/" rel="nofollow" target="_blank"&gt;это&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ekologiya-svet.ru/" rel="nofollow" target="_blank"&gt;такое&lt;/a&gt;&lt;span style="font-family: arial;"&gt;. &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.nanoveko.ru/" rel="nofollow" target="_blank"&gt;Никогда&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.spravochniks.ru/" rel="nofollow" target="_blank"&gt;не&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.meddoma.ru/" rel="nofollow" target="_blank"&gt;приписывай&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.sanitariya-nadzor.ru/" rel="nofollow" target="_blank"&gt;человеческой&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.errorzone.ru/" rel="nofollow" target="_blank"&gt;зловредности&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.chkh.ru/" rel="nofollow" target="_blank"&gt;того&lt;/a&gt;&lt;span style="font-family: arial;"&gt;, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.gruz0perevozki.ru/" rel="nofollow" target="_blank"&gt;что&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.kzotonline.ru/" rel="nofollow" target="_blank"&gt;можно&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.metodef.ru/" rel="nofollow" target="_blank"&gt;объяснить&lt;/a&gt; &lt;a style="font-family: arial;" href="http://www.amoi-electronics.ru/" rel="nofollow" target="_blank"&gt;обыкновенной&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.kyoceramobile.ru/" rel="nofollow" target="_blank"&gt;глупостью&lt;/a&gt;&lt;span style="font-family: arial;"&gt;. &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.casio-curitel.ru/" rel="nofollow" target="_blank"&gt;Человек&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.sothaier.ru/" rel="nofollow" target="_blank"&gt;может&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.vodupey.ru/" rel="nofollow" target="_blank"&gt;долго&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.stroy-dereva.ru/" rel="nofollow" target="_blank"&gt;жить&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.goodhood.ru/" rel="nofollow" target="_blank"&gt;на&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.cement1000.ru/" rel="nofollow" target="_blank"&gt;деньги&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.korea-ubiquam.ru/" rel="nofollow" target="_blank"&gt;которые&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.oceni-nedvizhku.ru/" rel="nofollow" target="_blank"&gt;он&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.avtoqo.ru/" rel="nofollow" target="_blank"&gt;ждет.&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.milanpo.ru/" rel="nofollow" target="_blank"&gt;Реальность&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.kulinar-recept.ru/" rel="nofollow" target="_blank"&gt;это&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.00i00.com/" rel="nofollow" target="_blank"&gt;иллюзия&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ilya-safe.com/" rel="nofollow" target="_blank"&gt;вызываемая&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.bmkf.com.ua/" rel="nofollow" target="_blank"&gt;отсутствием&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.kolosov.zp.ua/" rel="nofollow" target="_blank"&gt;алкоголя&lt;/a&gt;&lt;span style="font-family: arial;"&gt;. Женщины &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.mpolitika.berdyansk.info/" rel="nofollow" target="_blank"&gt;едят&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.tvoy-dom.zp.ua/" rel="nofollow" target="_blank"&gt;за&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.fraggersinc.com/" rel="nofollow" target="_blank"&gt;разговорами&lt;/a&gt;&lt;span style="font-family: arial;"&gt;, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.desarrollo2000.com/" rel="nofollow" target="_blank"&gt;мужчины&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.opros.zp.ua/" rel="nofollow" target="_blank"&gt;едят&lt;/a&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.kurort-berdyansk.com/" rel="nofollow" target="_blank"&gt;заедой     &lt;/a&gt;&lt;span style="font-family: arial;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;This, according to Google is suppsoed to mean: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;"If the physician knows the name of your illness, it does not mean that he knows what it is. Never ascribe to human malignancy that can be explained by ordinary stupidity. A man may live long on the money that he waits. Reality is an illusion caused by lack of alcohol. Women eat for talking, men shall go eat."&lt;br /&gt;&lt;br /&gt;Interesting. Confusing but interesting.  A bit abstract!&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4520925187756055813?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4520925187756055813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2009/06/i-have-been-afk-away-from-keyboard.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4520925187756055813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4520925187756055813'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2009/06/i-have-been-afk-away-from-keyboard.html' title='I have been AFK! - away from the keyboard'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3122865534607182727</id><published>2009-04-10T13:43:00.005-05:00</published><updated>2009-08-17T14:04:45.486-05:00</updated><title type='text'>The Wide World of Medical Informatics</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;I got thinking the other day (and have thought this for quite a long time- as far back as 1999) that if there was one niche or sub-field that really falls right into my interests and background it is medical informatics.  I have degrees in cell and molecular biology, as well as computer science.  I have been fortunate to work in hospitals, medical research facilities, and in medical schools at various levels.  Not to mention my career as an Oracle consultant.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I have been very very busy recently, and have decided to try and post regularly again.  This particular subject motivated me to do so!  To start with, the subject "The WIDE World of..." is misleading.  It is true that Medical Informatics requires a very wide skill set as opposed to what most strong oracle developers individually, or most medical practitioners individually have.  Each of these are very deep careers in themselves! However, we can also say the subject itself, as opposed to the knowledge needed to DO the work is not particularly wide.  Nor is it very established and mature!  Schools only recently in the last decade have even developed patchwork curriculum studies to earn certificates or master's degrees in bioinformatics, or medical informatics, or medical analytics.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;To top it off, I have noted that such top schools including Northwestern University, right here in Chicago, Illinois, USA, don't have anywhere near the strict admissions standards applied to these newer programs in their infancy.  You don't even have to take the GMAT or GRE (graduate admissions exam) to matriculate!  It is recommended, but not required.  &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.scs.northwestern.edu/grad/medical-informatics/medical-informatics-admissions.cfm"&gt;Admissions&lt;/a&gt;&lt;span style="font-family:arial;"&gt;  In most cases, this indicates a program or field of study still in it's infancy and looking to establish itself as a solid undeniable mainstream option.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I do believe that as of now, it is undeniably necessary and important.  However, most medical institutions are in the stone-age.  Any very solid technical person that steps into hospitals or even doctor's offices will see some systems that are VERY complicated and state of the art.  Other systems, such as records systems and software programs are buggy, poorly laid out, or cause the practitioners (nurses, doctors, executives) headaches when trying to enter data, or more importantly...retrieve data that is accurate, up to date, and understandable!  The real focus...informatics...is important.  The analytics and informatics methodologies in a business intelligence lifecycle simply are lacking in major healthcare organizations.  I am not just talking about hospitals, but health insurance companies too!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I have personally sat in doctor's offices where multiple doctors and even medical execs can't stress enough how much they hate having to use EPIC Systems software, or Cerner Software.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I don't know enough about them to explain the issues, but I have seen the pained expression too many times.  I have plenty of friends that worked from a technical or manager perspective for major healthcare insurance companies that ALL complain about the same thing: old and not too sharp technology OR sharp technology being used the wrong way which costs even more $$.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I've read it and heard it in person so many times that I've decided to try and write a few blog posts on this topic. The field is ripe.  The education is now available.  The technologists (Oracle BI and DW folks) are very much present and ready.  The doctors know just enough of what they want but VERY few have the skills that we Oracle BIDW developers and managers have.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I want to provide a link for readers to pursue:&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://www.dba-oracle.com/t_oracle_medical_informatics.htm"&gt;Saving Lives With Oracle&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;What might a VERY general role of the Oracle scientist, or informatics individual be?&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: normal;font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;    &lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Medical Informaticists fill a vital role in health care systems     management, verifying and certifying critical computer system     components:&lt;/span&gt;&lt;/p&gt;    &lt;ul  style="font-family:arial;"&gt;&lt;li&gt;     &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;Certifying medical systems for accuracy and      completeness&lt;/span&gt;     &lt;/p&gt;&lt;/li&gt;&lt;li&gt;     &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;Validating medical decision support systems      and expert systems for clinical diagnosis and treatment &lt;/span&gt;     &lt;/p&gt;&lt;/li&gt;&lt;li&gt;     &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;Verifying the accuracy of Oracle database      output results and reports&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;Is it necessary to have a M.D.?  I do not think so.  However, this is not like ANY other consulting or business engagement.  The doctor or the healthcare organization has a lot of knowledge and very detailed ideas of how things need to work.  This is just not something the average consultant can pick up in a few meetings!  Unless you have some experience in scientific industries, or have worked in a medical or healthcare settings, or have an actual M.D., you'll likely need to work with a person or small team from the organization that knows all the ins and outs of healthcare, diagnoses, patient records, records management, prescription management, insurance, and core hospital measures and operating practices!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Do not be held back by that though!  The reason I believe this field has been too slow to advance, is lack of education, and extremely high amounts of knowledge necessary.  I will continue writing on this topic.  I'd like to disuss things such as data mining, analytics, and other topics that are relevant!&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3122865534607182727?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3122865534607182727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2009/04/wide-world-of-medical-informatics.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3122865534607182727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3122865534607182727'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2009/04/wide-world-of-medical-informatics.html' title='The Wide World of Medical Informatics'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-7502201476538832513</id><published>2008-12-08T17:50:00.005-06:00</published><updated>2008-12-08T17:56:15.244-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder and SAP Sources</title><content type='html'>I saw a nifty link that Antonio Romero, one of Oracle's &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;OWB&lt;/span&gt; product managers, gave out.  When I sat in the Publisher's and Author's round table event at the last Open World, I was lucky to sit with the head of Oracle's documentation and discuss a bit on the online documentation structure, and changes coming.  As well, I heard from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;OWB&lt;/span&gt; PMs that the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;OWB&lt;/span&gt; docs would be filled out more.  Here is the start of that effort, in &lt;a href="http://download.oracle.com/docs/cd/B28359_01/owb.111/b31278/toc.htm"&gt;chapter 7 -  Retrieving Data From SAP Sources. &lt;/a&gt;&lt;br /&gt;Antonio kindly brought this to attention recently.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-7502201476538832513?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/7502201476538832513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/12/oracle-warehouse-builder-and-sap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7502201476538832513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7502201476538832513'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/12/oracle-warehouse-builder-and-sap.html' title='Oracle Warehouse Builder and SAP Sources'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1726012220714105786</id><published>2008-11-19T14:02:00.004-06:00</published><updated>2008-12-08T17:55:03.770-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Paper accepted for ODTUG Kaleidoscope 2009</title><content type='html'>&lt;span style="font-family:arial;"&gt;Someone out there likes me, and I'll need to find out who.  But the good news is that I get to share with the community some 'lessons learned' and case studies related to &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/products/warehouse/index.html"&gt;OWB&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  My paper was an early accptance to the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.odtugkaleidoscope.com/abstracts.html"&gt;ODTUG 2009 Kaleidoscope conference&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, and I am grateful for that.  The list of people already accepted is quite an accomplished group.  I sincerely hope that OWB 11gR2 is released and available by that point in time, as I will then get to discuss those new features along with 11gR1/1ogR2.  Although the case study aspect will not be possible for 11gR2 since it is only in beta.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So come on out to ODTUG's 2009 confernece and find out how OWB can be put to some serious use...after all, we won the 2008 Oracle Partner of the Year &lt;a href="http://cali97.blogspot.com/2008/09/oracle-open-world-titan-awards-piocon.html"&gt;Titan Award in Business Intelligence&lt;/a&gt; and OWB was a HUGE part of that.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1726012220714105786?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1726012220714105786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/11/paper-accepted-for-odtug-kaleidoscope.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1726012220714105786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1726012220714105786'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/11/paper-accepted-for-odtug-kaleidoscope.html' title='Paper accepted for ODTUG Kaleidoscope 2009'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-2234122063577226138</id><published>2008-10-29T16:11:00.004-05:00</published><updated>2008-10-29T16:37:35.305-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Grants, Grants, and More Grants - WITH GRANT OPTION</title><content type='html'>&lt;h2 style="font-family: arial;" class="class"&gt;ORA 01720 grant option does not exist for....&lt;/h2&gt;&lt;span style="font-family:arial;"&gt;Simple mistake, but easy to fall into.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;User_A creates a view called AV.  This view accesses some of User_A's objects but also accesses one of User_B's tables too (table name is &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;BT&lt;/span&gt;).  No problem, User_A had been granted select on that table (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;BT&lt;/span&gt;) from User_B:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(as User_B) GRANT SELECT ON USER_B.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;BT&lt;/span&gt; TO USER_A&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Now, however, User_A wants to grant select on that view, AV to a third user...User_C.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Even if User_C had also been granted select on User_B.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;BT&lt;/span&gt; table, USER_A would not be able to simply say:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(as User_A) GRANT SELECT ON USER_A.AV TO USER_C&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;instead you'll see:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2  style="font-weight: normal;font-family:arial;" class="class"&gt;&lt;span style="font-size:100%;"&gt;ORA 01720 grant option does not exist&lt;/span&gt;&lt;/h2&gt;&lt;span style="font-family:arial;"&gt;What this means is that USER_A tried to grant access to one of USER_B's tables to USER_C through the view AV.  Even though USER_C had been directly granted select on USER_B.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;BT&lt;/span&gt; from USER_B itself, you'll still see the above error message.&lt;/span&gt;&lt;br /&gt;&lt;p face="arial" class="MsoPlainText"&gt;Only the schema that owns the object can grant  privileges to that object unless the 'with grant option' is included in the  command. The 'with grant option' allows you to give the user that receives the grant (with the grant option) the ability to grant that same privilege to other users too. In a way, it is like giving a bit of your authority on one of your own objects to another trusted schema. Here is an  example of the use of the with grant option:&lt;/p&gt; &lt;p class="MsoPlainText"&gt;(As USER_B) GRANT SELECT ON USER_B.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;BT&lt;/span&gt; TO USER_A WITH GRANT OPTION&lt;/p&gt;&lt;p style="font-family: arial;" class="MsoPlainText"&gt;What this did was it allowed USER_A to then grant USER_C select access to USER_B.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;BT&lt;/span&gt; table. It ALSO indirectly allows USER_A to grant select on USER_B.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;BT&lt;/span&gt; table through the view, USER_A.AV.  &lt;/p&gt;&lt;p style="font-family: arial;" class="MsoPlainText"&gt;You can now perform the following with no problems:&lt;/p&gt;&lt;p class="MsoPlainText"&gt;(as User_A) GRANT SELECT ON USER_A.AV TO USER_C&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-2234122063577226138?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/2234122063577226138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/10/grants-grants-and-more-grants-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2234122063577226138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2234122063577226138'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/10/grants-grants-and-more-grants-with.html' title='Grants, Grants, and More Grants - WITH GRANT OPTION'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-979367826477045464</id><published>2008-10-01T23:03:00.002-05:00</published><updated>2008-10-01T23:15:00.058-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Virtual Machines'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Oracle Enterprise Linux, Ubuntu Linux, and more Linux</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/SORKSTQhp_I/AAAAAAAAATE/IEiyKmzedqs/s1600-h/Untitled-2+copy.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/SORKSTQhp_I/AAAAAAAAATE/IEiyKmzedqs/s400/Untitled-2+copy.jpg" alt="" id="BLOGGER_PHOTO_ID_5252404743688529906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So I've been building a few Virtual Machines using &lt;a href="http://www.oracle.com/technologies/virtualization/index.html"&gt;Oracle VM&lt;/a&gt; as well as &lt;a href="http://www.vmware.com/"&gt;VMWare&lt;/a&gt; using different distros of Linux to see the major fuss between them all.  Seems everyone has a favorite.&lt;br /&gt;&lt;br /&gt;At least from an Install point of view, &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt; was easily smoother, however &lt;a href="http://www.oracle.com/technologies/linux/index.html"&gt;OEL&lt;/a&gt; offered many more installation and configuring options to start right away.   This I liked.  I have to be honest, I could care less how pretty and customizable Ubntu seems to be if OEL can run Oracle software better in any way.  I'll keep posting anything that I find to be a deal breaker for me.  I am just looking for the best of breed to build out my many testbeds for all the configurations of the Oracle stack I'll need.  I am sure many of you out there are in the same boat!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-979367826477045464?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/979367826477045464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/10/oracle-enterprise-linux-ubuntu-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/979367826477045464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/979367826477045464'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/10/oracle-enterprise-linux-ubuntu-linux.html' title='Oracle Enterprise Linux, Ubuntu Linux, and more Linux'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/SORKSTQhp_I/AAAAAAAAATE/IEiyKmzedqs/s72-c/Untitled-2+copy.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5365497107191669438</id><published>2008-09-27T12:24:00.006-05:00</published><updated>2009-01-22T12:43:10.861-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Oracle Open World, Titan Awards, Piocon, Events, and more...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/SOFiLf8-1rI/AAAAAAAAASs/aq7qt9yf4yw/s1600-h/1award.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/SOFiLf8-1rI/AAAAAAAAASs/aq7qt9yf4yw/s400/1award.jpg" alt="" id="BLOGGER_PHOTO_ID_5251586590186067634" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Well, we did it again! My company won the Titan award for the second year in a row.  Actually both years was technically a Business Intelligence solution, but the &lt;a href="http://cali97.blogspot.com/2007/11/oracle-partner-network-partner-of-year_18.html"&gt;project that won in 2007&lt;/a&gt; was not using as many BI pieces as was possible, so we won the Health Care Industry Solution award.  However, for 2008, we utilized so much BI it was crazy.  Custom developed methods, out-of-the box functionality, you name it. And, as Antonio Romero (one of the OWB product managers) happens to ponder in the OWB blog below about the ROI....  let's just say it was so far beyond expectations that everyone was shocked in a good way.&lt;br /&gt;&lt;br /&gt;but a preview at Oracle's OWB blog: &lt;a href="http://blogs.oracle.com/warehousebuilder/2008/09/piocon_technologies_wins_partner_of_the_year_award_with_owb_at_openworld.html"&gt;link&lt;/a&gt;&lt;br /&gt;and a preview at our home: &lt;a href="http://www.piocon.com/"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The bottom line is this.  We know DW, we know BI, and we know the real business that needs to happen behind the scenes to implement a solution that is adopted and widely used to help a company. Piocon now has 2 big reasons to boast that we're the premier provider of Business Intelligence and Data Warehousing solutions for 2 years in a row.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5365497107191669438?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5365497107191669438/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/09/oracle-open-world-titan-awards-piocon.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5365497107191669438'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5365497107191669438'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/09/oracle-open-world-titan-awards-piocon.html' title='Oracle Open World, Titan Awards, Piocon, Events, and more...'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/SOFiLf8-1rI/AAAAAAAAASs/aq7qt9yf4yw/s72-c/1award.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-2708072996007757531</id><published>2008-09-05T23:10:00.004-05:00</published><updated>2008-09-07T10:25:09.201-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>My Wordle</title><content type='html'>&lt;span style="font-family: arial;"&gt;Just figured I would mention what this blog's &lt;/span&gt;&lt;a style="font-family: arial;" href="http://wordle.net/"&gt;wordle&lt;/a&gt;&lt;span style="font-family: arial;"&gt; looks like:&lt;/span&gt;&lt;br /&gt; &lt;a style="font-family: arial;" href="http://wordle.net/gallery/wrdl/166238/mywordle" title="Wordle: mywordle"&gt;&lt;img src="http://wordle.net/thumb/wrdl/166238/mywordle" style="border: 1px solid rgb(221, 221, 221); padding: 4px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;And bigger:&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/SMIDk5FULDI/AAAAAAAAASc/-pAW8uPdel0/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/SMIDk5FULDI/AAAAAAAAASc/-pAW8uPdel0/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5242756848545967154" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-2708072996007757531?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/2708072996007757531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/09/my-wordle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2708072996007757531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2708072996007757531'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/09/my-wordle.html' title='My Wordle'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/SMIDk5FULDI/AAAAAAAAASc/-pAW8uPdel0/s72-c/untitled.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-2475718987394818759</id><published>2008-08-28T08:29:00.001-05:00</published><updated>2008-09-07T10:25:09.201-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Techno geeks and people that love animation...</title><content type='html'>My buddy &lt;a href="http://dannorris.com"&gt;Dan Norris&lt;/a&gt; passed this on to me today.  Simple, yet brilliant.  Tech people in particular will like this, and not a bad job at all on the animation aspects.  VERY cool!  See it here: &lt;a href="http://fc01.deviantart.com/fs13/f/2007/077/2/e/Animator_vs__Animation_by_alanbecker.swf"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-2475718987394818759?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/2475718987394818759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/08/techno-geeks-and-people-that-love.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2475718987394818759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2475718987394818759'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/08/techno-geeks-and-people-that-love.html' title='Techno geeks and people that love animation...'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3307544760483522632</id><published>2008-08-26T22:12:00.001-05:00</published><updated>2008-09-07T10:25:09.201-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Laughing Squid Web Hosting » Support &amp; Contact Information</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/SLTGbyzWAiI/AAAAAAAAASU/ZUM7OoKboz0/s1600-h/laughing-squid.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/SLTGbyzWAiI/AAAAAAAAASU/ZUM7OoKboz0/s400/laughing-squid.gif" alt="" id="BLOGGER_PHOTO_ID_5239030447334621730" border="0" /&gt;&lt;/a&gt;I love me some google blogger, because it is easier than dirt!  But I've played with quite a few hosting companies and these guys (Laughing Squid) are extremely good and make life using Word Press very VERY easy.  This is especially good for the non-techies or managers who just wanna blog.&lt;br /&gt;&lt;a href="http://laughingsquid.net/contact/"&gt;Laughing Squid Web Hosting » Support &amp;amp; Contact Information&lt;/a&gt;: "Laughing Squid Web Hosting"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3307544760483522632?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://laughingsquid.net/contact/' title='Laughing Squid Web Hosting » Support &amp; Contact Information'/><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3307544760483522632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/08/laughing-squid-web-hosting-support.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3307544760483522632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3307544760483522632'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/08/laughing-squid-web-hosting-support.html' title='Laughing Squid Web Hosting » Support &amp; Contact Information'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/SLTGbyzWAiI/AAAAAAAAASU/ZUM7OoKboz0/s72-c/laughing-squid.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-7261790566922524000</id><published>2008-08-26T18:08:00.012-05:00</published><updated>2008-09-09T23:55:06.785-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>OWB Interesting Warnings and Errors #1 PL/SQL: ORA-00907: missing right parenthesis</title><content type='html'>&lt;span style="font-family:arial;"&gt;(Please remember you may click on any picture for a larger view!)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I thought while I am writing away on the new &lt;a href="http://www.oracle.com/technology/products/warehouse/index.html"&gt;Oracle Warehouse Builder&lt;/a&gt; 11g Handbook for &lt;a href="http://www.mhprofessional.com/category/?cat=7"&gt;Oracle Press / &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;McGraw&lt;/span&gt;-Hill&lt;/a&gt; that I would still put out a few simple and useful gotchas on my blog for beginner and intermediate users.  The most interesting things that seem to pop up are the odd and slightly off-target errors you may receive if you do something wrong.  So here is interesting warning and error #1.  Relatively straight forward, but can still trick any beginner and some intermediate users.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;Let us say that we have a situation that calls for using a key &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;lookup&lt;/span&gt; operator.   Sometimes, when the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;lookup&lt;/span&gt; results in no matching row for the input data, we have the option to tell the operator what we would like to be output (instead of plain old NULL).  For example, below, I might not have a match for my incoming data for the column &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;tgt&lt;/span&gt;_unit_name.  If I do not, I would output a 'default value' and not simply NULL.  In the case below is where my error or warning actually arises.  Note that I entered 'N/A UNIT' for my default value.  If I had entered N/A UNIT without the ' ' marks, this would cause &lt;a href="http://www.oracle.com/technology/products/warehouse/index.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;OWB&lt;/span&gt;&lt;/a&gt; to complain and issue an error that might not make perfect sense to the beginner.  Let us now assume that I did NOT enter the opening and closing ' ' tick marks.&lt;br /&gt;&lt;/span&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/SLSPcleqCwI/AAAAAAAAARs/HOPpddsQXuc/s1600-h/lkup.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/SLSPcleqCwI/AAAAAAAAARs/HOPpddsQXuc/s400/lkup.JPG" alt="" id="BLOGGER_PHOTO_ID_5238969987798534914" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;If I go ahead and try to validate the mapping that this key &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;lookup&lt;/span&gt; operator appeared in, it would validate perfectly.  Furthermore, if I decided to generate the code, and give it a once-over, it might look fine as well.  However, when i go to my control center to deploy this mapping...the warnings will fire.&lt;/span&gt; &lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_37Gh08TaV-M/SLSP_z10rFI/AAAAAAAAAR0/X2jPGYqc3j0/s1600-h/details.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_37Gh08TaV-M/SLSP_z10rFI/AAAAAAAAAR0/X2jPGYqc3j0/s400/details.JPG" alt="" id="BLOGGER_PHOTO_ID_5238970592949218386" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;So the culprit is PL/&lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"  style="font-family:arial;"&gt;SQL&lt;/span&gt;&lt;span style="font-family:arial;"&gt;: ORA-00907: missing right parenthesis.  If you have a nice code tool like pl/&lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"  style="font-family:arial;"&gt;sql&lt;/span&gt;&lt;span style="font-family:arial;"&gt; developer, or toad, or &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"  style="font-family:arial;"&gt;sql&lt;/span&gt;&lt;span style="font-family:arial;"&gt; developer, you'd likely generate this code from your mapping, and throw it into your development environment and look for problems.  A beginner might go right ahead and look for some missing parenthesis.  Right?  Wrong!  This is one area in which you have to think about something.  &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"  style="font-family:arial;"&gt;OWB&lt;/span&gt;&lt;span style="font-family:arial;"&gt; creates code.  Usually syntactically correct code.  It will not normally and purposely create code that has missing parenthesis.  The problem is somewhere else, and it deals with the fact that we did NOT put the opening and closing ' ' around N/A UNIT.  See below:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/SLSQ-S1zZ6I/AAAAAAAAAR8/59TKcSHs_Qw/s1600-h/sql_dev_err.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/SLSQ-S1zZ6I/AAAAAAAAAR8/59TKcSHs_Qw/s400/sql_dev_err.JPG" alt="" id="BLOGGER_PHOTO_ID_5238971666422523810" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;We can clearly see the right number of parenthesis are there, but one is not interpreted due to N/A UNIT not being formed correctly!  Let's go back to the mapping, and the key &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"  style="font-family:arial;"&gt;lookup&lt;/span&gt;&lt;span style="font-family:arial;"&gt; operator and make sure we enter 'N/A UNIT'.  (Remember, the way you interact with &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"  style="font-family:arial;"&gt;OWB&lt;/span&gt;&lt;span style="font-family:arial;"&gt; literally is writing code.)  We make the change, and deploy the mapping, and get no errors or warnings!&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/SLSRkSMtGRI/AAAAAAAAASE/g-g1CjJIA3s/s1600-h/cc.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/SLSRkSMtGRI/AAAAAAAAASE/g-g1CjJIA3s/s400/cc.JPG" alt="" id="BLOGGER_PHOTO_ID_5238972319085173010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So, what does the working code snippet look like now?&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/SLSRvFRO0VI/AAAAAAAAASM/7Q9vLyPMvAo/s1600-h/sql_dev_correct.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/SLSRvFRO0VI/AAAAAAAAASM/7Q9vLyPMvAo/s400/sql_dev_correct.JPG" alt="" id="BLOGGER_PHOTO_ID_5238972504593060178" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Note that with a nice &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"  style="font-family:arial;"&gt;IDE&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, like &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/products/database/sql_developer/index.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;SQL&lt;/span&gt; Developer&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, we can see that the moment the ticks are in place and the 'N/A UNIT' value is handled correctly in the &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"  style="font-family:arial;"&gt;NVL&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, we have success.  This is to illustrate to the beginner or intermediate user that everything you do in &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"  style="font-family:arial;"&gt;OWB&lt;/span&gt;&lt;span style="font-family:arial;"&gt; is writing code under the hood.  Simply forgetting to use the tick marks to form a literal can result in an error that might make you spend many minutes hunting down a missing parenthesis!  Remember that &lt;/span&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"  style="font-family:arial;"&gt;OWB&lt;/span&gt; generates PL/&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"  style="font-family:arial;"&gt;SQL&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, but will listen to you, the user (almost too much) and do exactly as you tell it!&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-7261790566922524000?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/7261790566922524000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/08/owb-interesting-warnings-and-errors-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7261790566922524000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7261790566922524000'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/08/owb-interesting-warnings-and-errors-1.html' title='OWB Interesting Warnings and Errors #1 PL/SQL: ORA-00907: missing right parenthesis'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/SLSPcleqCwI/AAAAAAAAARs/HOPpddsQXuc/s72-c/lkup.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3615394371864102854</id><published>2008-08-15T11:05:00.001-05:00</published><updated>2008-10-01T23:15:31.993-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>ORACLE Blogs Home</title><content type='html'>Just in case you have been under a rock recently or even on vacation, here is a quality link right into the main aggregation site of ALL Oracle Corp Blogs...&lt;a href="http://blogs.oracle.com/"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3615394371864102854?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3615394371864102854/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/08/oracle-blogs-home.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3615394371864102854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3615394371864102854'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/08/oracle-blogs-home.html' title='ORACLE Blogs Home'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-7421745413780944120</id><published>2008-07-29T10:28:00.001-05:00</published><updated>2008-07-29T10:33:07.472-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>FULL Outer Joins FOJ in OWB</title><content type='html'>&lt;span style="font-family:arial;"&gt;See the owb blog: &lt;/span&gt;&lt;a style="font-family: arial;" href="http://blogs.oracle.com/warehousebuilder/2008/07/full_outer_joins_in_owb_1.html"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-7421745413780944120?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/7421745413780944120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/full-outer-joins-foj-in-owb.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7421745413780944120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7421745413780944120'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/full-outer-joins-foj-in-owb.html' title='FULL Outer Joins FOJ in OWB'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4322267968198007694</id><published>2008-07-24T15:28:00.000-05:00</published><updated>2008-10-01T23:15:40.379-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RAC'/><title type='text'>Oracle RAC ATTACK in Chicago</title><content type='html'>&lt;span style="font-family: arial;"&gt;read about it &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ioug.org/networking/SIGs/RACAttackInformation.cfm"&gt;here&lt;/a&gt;&lt;span style="font-family: arial;"&gt; ...&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4322267968198007694?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4322267968198007694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/oracle-rac-attack-in-chicago.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4322267968198007694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4322267968198007694'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/oracle-rac-attack-in-chicago.html' title='Oracle RAC ATTACK in Chicago'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1478298618876927571</id><published>2008-07-21T22:57:00.000-05:00</published><updated>2008-07-21T22:58:00.823-05:00</updated><title type='text'>Conan, what is best in life??</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Oo9buo9Mtos&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Oo9buo9Mtos&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1478298618876927571?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1478298618876927571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/conan-what-is-best-in-life.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1478298618876927571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1478298618876927571'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/conan-what-is-best-in-life.html' title='Conan, what is best in life??'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-540149515020171556</id><published>2008-07-19T14:17:00.002-05:00</published><updated>2008-10-01T23:15:48.947-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>OWB patching part 2</title><content type='html'>&lt;span style="font-family:arial;"&gt;I should have mentioned this in my first patching post a few days back.  But...test test and test your patching and what it does to your system before deploying it into a secure production system.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;See this OTN &lt;/span&gt;&lt;a style="font-family: arial;" href="http://forums.oracle.com/forums/thread.jspa?threadID=681468&amp;amp;tstart=0"&gt;forums link&lt;/a&gt;&lt;span style="font-family:arial;"&gt;...a few people (only 2) are having peculiar problems already with the OWB patch.  This is not terribly surprising...things take a while to get perfectly right even with a patch!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-540149515020171556?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/540149515020171556/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/owb-patching-part-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/540149515020171556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/540149515020171556'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/owb-patching-part-2.html' title='OWB patching part 2'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6819031101293323952</id><published>2008-07-18T15:16:00.003-05:00</published><updated>2008-10-01T23:16:09.372-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java/JDeveloper'/><title type='text'>Nice new Jdeveloper ( JDEV) article up on OTN</title><content type='html'>&lt;span style="font-family:arial;"&gt;Good 'ol Shaun O'Brien has a nice &lt;a href="http://www.oracle.com/technology/products/jdev/howtos/1013/w4wljdev/workshopandjdev.html?rssid=rss_otn_news"&gt;new article&lt;/a&gt; at the top of OTN today on JDEV and some nice new add-ins and extras.  Check it out!  Especially nice is the discussion about Web Logic already!&lt;/span&gt;&lt;br /&gt;&lt;h2 style="font-family: arial;"&gt;Introduction&lt;/h2&gt;  &lt;p style="font-family: arial;"&gt; With the acquisition of BEA, Oracle has added a significant amount of technical collateral to it's already impressive listing of potential choices for project implementation. This how-to will focus on the steps necessary to make use of the same codebase under the individual flagship development environments: namely Oracle JDeveloper and Oracle Workshop for WebLogic. &lt;/p&gt;  &lt;p style="font-family: arial;"&gt;The codebase to be utilized is a sample application from the Workshop side of the world, the prototypical SUN Dukes Bookstore that can be accessed at the following url: &lt;a href="https://dev2devclub.bea.com/downloads/examples/jsf-bookStore.war"&gt;jsf-bookStore.war&lt;/a&gt;.  &lt;/p&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/index.html"&gt;OTN&lt;/a&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/products/jdev/howtos/1013/w4wljdev/workshopandjdev.html?rssid=rss_otn_news"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6819031101293323952?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6819031101293323952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/nice-new-jdeveloper-jdev-article-up-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6819031101293323952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6819031101293323952'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/nice-new-jdeveloper-jdev-article-up-on.html' title='Nice new Jdeveloper ( JDEV) article up on OTN'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4572611581501100230</id><published>2008-07-14T12:20:00.001-05:00</published><updated>2008-10-01T23:16:14.959-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>OWB patching</title><content type='html'>&lt;span style="font-family: arial;"&gt;Just to let you all know that are still using OWB 10gR2 (quite a few I bet) it looks like there is a new patch out there that came out in July, so if you're having as issue with one of the 120 bugs it supposedly fixes, get on over to metalink to investigate the new patch!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4572611581501100230?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4572611581501100230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/owb-patching.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4572611581501100230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4572611581501100230'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/owb-patching.html' title='OWB patching'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1547320709844478068</id><published>2008-07-08T17:09:00.001-05:00</published><updated>2008-07-08T19:07:52.424-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ODI'/><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>What Does Oracle have in store for OWB and ODI?  Here is a Roadmap!</title><content type='html'>&lt;span style="font-family: arial;"&gt;Check out the link direct from Oracle on their plans with Oracle Warehouse Builder and Oracle Data Integrator - OWB and ODI.&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/products/warehouse/pdf/owb_roadmap.pdf"&gt;check it out here.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1547320709844478068?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1547320709844478068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/what-does-oracle-have-in-store-for-owb.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1547320709844478068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1547320709844478068'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/what-does-oracle-have-in-store-for-owb.html' title='What Does Oracle have in store for OWB and ODI?  Here is a Roadmap!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-9011607506967587365</id><published>2008-07-01T16:01:00.003-05:00</published><updated>2008-07-08T19:08:14.567-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>BIWA Summit</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_37Gh08TaV-M/SGqbpqqk92I/AAAAAAAAARc/-drPgKNJ0-k/s1600-h/wwv_flow_file_mgr.get_file.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_37Gh08TaV-M/SGqbpqqk92I/AAAAAAAAARc/-drPgKNJ0-k/s400/wwv_flow_file_mgr.get_file.jpg" alt="" id="BLOGGER_PHOTO_ID_5218154258391955298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;All-&lt;/span&gt; &lt;span style="font-family:arial;"&gt;  I am going to post and link to the summit upcoming in December here, and leave a perma-link on the right side of my page if you care to visit!  Go here! &lt;a href="http://ioug.itconvergence.com/pls/apex/f?p=219:25:46522949857286::NO:::"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-9011607506967587365?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/9011607506967587365/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/07/biwa-summit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/9011607506967587365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/9011607506967587365'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/07/biwa-summit.html' title='BIWA Summit'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_37Gh08TaV-M/SGqbpqqk92I/AAAAAAAAARc/-drPgKNJ0-k/s72-c/wwv_flow_file_mgr.get_file.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3170395369375927204</id><published>2008-06-28T13:29:00.005-05:00</published><updated>2008-06-28T13:57:07.614-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>Data Warehouse Structures: a bridge table</title><content type='html'>&lt;span style="font-family: arial;font-family:arial;" &gt;Bridge tables; I see this topic come up quite often.  They are also known in some circles as gap tables, associative tables, helper tables, or sometimes just B tables.  I have referenced a few very valuable bits about this structure below.  Unfortunately, &lt;a href="http://google.com/"&gt;google&lt;/a&gt; needs a few more words than just bridge table or helper table, since the card game 'bridge' actually uses a special table, thus making the search for our info a bit harder.  Sheesh!  Copied here for fear they might be removed for some reason...I cannot always trust that the&lt;a href="http://www.archive.org/web/web.php"&gt; Internet Wayback Machine&lt;/a&gt; will work perfectly.  So here in its original glory:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;h1 style="font-family: arial;"&gt;Help for Dimensional Modeling&lt;/h1&gt; &lt;h2 style="font-family: arial;"&gt;Helper tables let you design and manage multivalued dimensions successfully.&lt;/h2&gt;&lt;span style="font-family:arial;"&gt;By Ralph Kimball, &lt;a href="http://www.dbmsmag.com/9808d05.html"&gt;DBMS online magazine&lt;/a&gt; &lt;/span&gt; &lt;p style="font-family: arial;"&gt; The goal of dimensional modeling is to represent a set of business measurements in a standard framework. Dimensional modeling is attractive because end users usually easily understand this framework. The schemas that result from dimensional modeling are so predictable that query tool vendors can build their tools around a set of well-known structures. The classic star join schema that results from a dimensional model usually has between six and 10 dimension tables connected directly to the fact table, as &lt;a href="http://www.dbmsmag.com/9808d05.html#fig1"&gt;Figure 1&lt;/a&gt; shows. These dimension tables have a very specific and precise relationship to the fact table.&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/SGaIm2ab-JI/AAAAAAAAARM/haG_OpiwZ6I/s1600-h/1.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/SGaIm2ab-JI/AAAAAAAAARM/haG_OpiwZ6I/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5217007419378104466" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;                                                                                                       FIG 1&lt;br /&gt; &lt;/p&gt;&lt;p style="font-family: arial;"&gt; Think of the fact table as a set of measurements made in the marketplace. These measurements are usually numeric and taken before the creation of a given fact table. A fact table record may represent an individual transaction, such as a customer withdrawal made at an ATM, or the fact table record may represent some kind of aggregated total, such as the sales of a given product in a store on a particular day. The dimension tables, on the other hand, usually represent textual attributes that are already known about such things as the product, the customer, or the calendar. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;When you are building a fact table, the most important step in the detailed logical design is to declare the grain of the fact table. The grain declares the exact meaning of an individual fact record. In these examples, the first grain is individual customer transaction and the second grain is daily product total in the store. If the database designer is very clear about the grain of the fact table, then choosing the appropriate dimensions for the fact table is usually easy. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;The secret of choosing dimensions for a given fact table is to identify any description that has a single value for an individual fact table record. In this way, you can work outward from the grain of the fact table and "decorate" the fact table with as many dimensions as you can imagine. For the ATM customer transaction example, imagine that the following dimensions all have a single value at the instant of the transaction: &lt;/p&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Calendar Date &lt;/li&gt;&lt;li&gt;Time of Day &lt;/li&gt;&lt;li&gt;Customer Account &lt;/li&gt;&lt;li&gt;Physical Location &lt;/li&gt;&lt;li&gt;Transaction Type (deposit, withdrawal, balance inquiry, and so on) &lt;/li&gt;&lt;li&gt;Weather Summary for the Day. &lt;/li&gt;&lt;/ul&gt; &lt;p style="font-family: arial;"&gt;These are all excellent dimensions to attach to the transaction-grained fact table record. Each of these dimensions has many descriptive attributes. The descriptive attributes are usually textual and are the basis for constraining and grouping in the user's reports. In the case of Time of Day, the textual attributes could refer to specific periods such as Morning Rush Hour, Mid Morning, Lunch Hour, Mid Afternoon, Afternoon Rush Hour, and so on. In this case, the sole numeric measured fact is the amount of the transaction. This is the basis for &lt;a href="http://www.dbmsmag.com/9808d05.html#fig1"&gt;Figure 1&lt;/a&gt;. &lt;/p&gt;&lt;p style="font-family: arial;"&gt; Strict adherence to the grain definition lets you disqualify dimensions that do not have a single value for a given fact record. In the daily product totals example, you can propose the classic retail dimensions of: &lt;/p&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Calendar Date &lt;/li&gt;&lt;li&gt;Product &lt;/li&gt;&lt;li&gt;Store &lt;/li&gt;&lt;li&gt;Promotion (assuming the promotion remains in effect the entire day). &lt;/li&gt;&lt;/ul&gt; &lt;p style="font-family: arial;"&gt;But you must omit the Customer and the Check Out Clerk dimensions that you might assume would be included because these dimensions have many values at the daily grain we have chosen. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;These examples give a very powerful insight. You are more likely to disqualify a dimension if you are dealing with an aggregated or summarized table. The more the fact table is summarized, the fewer the number of dimensions you can attach to the fact records. The converse of this is eye opening. The more granular the data, the more dimensions make sense. The lowest-level data in any organization is the most dimensional. This is why I argue that the "atomic data store" must be presented as a dimensional model. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;Having made a pretty tidy argument for single-valued dimensions, perhaps I should consider whether there are ever legitimate exceptions. Are there situations where you might need to attach a multivalued dimension to a fact table? Is this even possible, and what problems might arise? &lt;/p&gt;&lt;p style="font-family: arial;"&gt;Consider the following example from healthcare billing. You are handed a data source for which the grain is the individual line item on a doctor bill. The data source could be patient visits to doctor offices or individual charges on a hospital bill. These individual line items have a rich set of dimensions that we can list rapidly: &lt;/p&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Calendar Date (of incurred charge) &lt;/li&gt;&lt;li&gt;Patient &lt;/li&gt;&lt;li&gt;Doctor (usually called "Provider") &lt;/li&gt;&lt;li&gt;Location &lt;/li&gt;&lt;li&gt;Service Performed &lt;/li&gt;&lt;li&gt;Diagnosis &lt;/li&gt;&lt;li&gt;Payer. &lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;The numeric additive facts in this design (which are the core of every fact table in a dimensional design) would include Amount Charged and perhaps others including Amount Paid, depending on the nature of the data source. &lt;/span&gt;&lt;p style="font-family: arial;"&gt;So far, this design seems to be pretty straightforward, with obvious single values for all of the dimensions. But there is a sleeper. In many healthcare situations, there may be multiple values for Diagnosis. What do you do if a given patient has three separate diagnoses at the moment the service was performed? How about really sick people in hospitals that might have up to 10 diagnoses? How do you encode the Diagnosis dimension if you wish to represent this information? &lt;/p&gt;&lt;p style="font-family: arial;"&gt; Database designers usually take one of four approaches to this kind of open-ended, multivalued situation: &lt;/p&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Disqualify the Diagnosis dimension because it is multivalued &lt;/li&gt;&lt;li&gt;Choose one value (the "primary" diagnosis) and omit the other values &lt;/li&gt;&lt;li&gt;Extend the dimension list to have a fixed number of Diagnosis dimensions &lt;/li&gt;&lt;li&gt;Put a helper table in between this fact table and the Diagnosis dimension table. &lt;/li&gt;&lt;/ul&gt; &lt;p style="font-family: arial;"&gt; Let's not take the easy way out by disqualifying the Diagnosis dimension from the design. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;Frequently, designers choose a single value (the second alternative). In the healthcare field this often shows up as the primary, or admitting, diagnosis. In many cases, your hands are tied because you are given the data in this form by the production system. If you take this approach, the modeling problem goes away, but you are left doubting whether the Diagnosis data is useful. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;The third approach of creating a fixed number of additional Diagnosis dimension slots in the fact table key list is a hack, and you should avoid it. Inevitably, there will be some complicated example of a very sick patient who exceeds the number of Diagnosis slots you have allocated. Also, you cannot easily query the multiple separate Diagnosis dimensions. If "headache" is a diagnosis, which Diagnosis dimension should be constrained? The resulting or logic across dimensions is notorious for running slowly on relational databases. For all these reasons, you should avoid the multiple dimensions style of design.&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/SGaIqyh8njI/AAAAAAAAARU/4CpOpkZepqU/s1600-h/2.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/SGaIqyh8njI/AAAAAAAAARU/4CpOpkZepqU/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5217007487055339058" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;                                                                                                       FIG 2&lt;br /&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;If you really insist on modeling this multivalued situation, then a "helper" table placed between the Diagnosis dimension and the fact table is the best solution. (See &lt;a href="http://www.dbmsmag.com/9808d05.html#fig2"&gt;Figure 2&lt;/a&gt;.) The Diagnosis key in the fact table is changed to be a Diagnosis Group key. The helper table in the middle is the Diagnosis Group table. It has one record for each diagnosis in a group of diagnoses. If I walk into the doctor's office with three diagnoses, then I need a Diagnosis Group with three records in it. It is up to the modeler to build either these Diagnosis Groups for each individual or a library of "known" Diagnosis Groups. Perhaps my three diagnoses would be called "Kimball's Syndrome." &lt;/p&gt;&lt;p style="font-family: arial;"&gt; The Diagnosis Group table is joined to the original Diagnosis dimension on the Diagnosis key. The Diagnosis Group table in &lt;a href="http://www.dbmsmag.com/9808d05.html#fig2"&gt;Figure 2&lt;/a&gt; contains a very important numeric attribute: the weighting factor. The weighting factor allows reports to be created that don't double count the Billed Amount in the fact table. For instance, if you constrain some attribute in the Diagnosis dimension such as "Contagious Indicator" with the values Contagious and Not Contagious, then you can group by the Contagious Indicator and produce a report with the correct totals. To get the correct totals, we must multiply the Billed Amount by the associated weighting factor. This is a correctly weighted report. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;You can assign the weighting factors equally within a Diagnosis Group. If there are three diagnoses, then each gets a weighting factor of 1/3. If you have some other rational basis for assigning the weighting factors differently, then you can change the factors, as long as all the factors in a Diagnosis Group always add up to one. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;You can, interestingly enough, deliberately omit the weighting factor and deliberately double count the same report grouped by Contagious Indicator. In this case, you have produced an "impact report" that shows the total Billed Amount implied partially or fully by both values of Contagious Indicator. Although the correctly weighted report is the most common and makes the most sense, the impact report is interesting and is requested from time to time. Such an impact report should be labeled so that the reader is not misled by any summary totals. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;Although the helper table clearly violates the classic star join design where all the dimension tables have a simple one-to-many relationship to the fact table, there is no avoiding the issue of what to do with multivalued dimensions that designers insist on attaching to a fact table. Fortunately, designers rarely insist on attaching a multivalued dimension to a set of measurements. In most cases, you have no rational basis for assigning weighting factors, or even worse, you don't have a plausible short list of candidates from the multivalued dimension. Thus you don't waste time trying to attach the retailer's Customer dimension to an aggregated daily or monthly sales fact table. It just isn't interesting or useful. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;When you attach a helper table to a fact table, you can preserve the star join illusion in your end-user interfaces by creating a view that prejoins the fact table to the helper table. The resulting view then appears to have a simple Diagnosis key that joins to our Diagnosis table in the healthcare example. The view can also predefine the multiplication of the weighting factor with any additive facts in the fact table. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;I have seen two other situations besides healthcare where a multivalued dimension makes sense. In addition to the Diagnosis example discussed in this column, I have built multivalued dimensions for retail banks and standard industry classifications. &lt;/p&gt;&lt;p style="font-family: arial;"&gt; &lt;b&gt;Retail Banks.&lt;/b&gt; There are often cases where the Account Dimension is "inhabited" by one or more human customers. If the bank wants to associate individual customers with account balances, then the Account dimension must play the same role as the Diagnosis Group dimension in the healthcare example. Banks are quite interested in both correctly weighted reports and impact reports. &lt;/p&gt;&lt;p style="font-family: arial;"&gt; &lt;b&gt;Standard Industry Classifications.&lt;/b&gt; This term defines the so-called SIC code that is assigned to a commercial enterprise to describe what industry segment they are in. The problem with SIC codes is that all big enterprises are represented by multiple SIC codes. If you encode a fact table with an SIC dimension, you have the same problem as with the multiple diagnoses. SIC codes are really quite useful, however. If you want to summarize all the business you do selling to "Manufacturers" and "Retailers" by using their SIC code, you will need an SIC Group helper table. Here's a case where with some careful thought you may assign unequal weighting factors if you believe the enterprise is mostly a manufacturer and only a little bit a retailer. &lt;/p&gt;&lt;p style="font-family: arial;"&gt;Next month I will describe a different kind of helper table for dimensions. In this case, the helper table does not describe a many-to-many relationship but rather describes a hierarchical relationship. We can use this second kind of helper table to navigate organizational hierarchies and manufacturing parts explosions. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3170395369375927204?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3170395369375927204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/06/data-warehouse-structures-bridge-table.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3170395369375927204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3170395369375927204'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/06/data-warehouse-structures-bridge-table.html' title='Data Warehouse Structures: a bridge table'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/SGaIm2ab-JI/AAAAAAAAARM/haG_OpiwZ6I/s72-c/1.gif' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6545498653797800404</id><published>2008-06-20T22:26:00.005-05:00</published><updated>2009-07-26T13:40:09.281-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>On the OTN forums lately...</title><content type='html'>&lt;span style="font-family:arial;"&gt;I have taken a brief reprieve from my blogging for a bit so that I can contribute more to the OTN forums.  I have been posting anything from 1-5 replies daily if I think I might be able to help anyone with what I know.  I think a lot of my postings have been in the OWB area for now.&lt;br /&gt;&lt;br /&gt;I'm likely going to Oracle Open World this year, as I got an invite with the nice free full conference pass.  I am not sure I'd go without that thing being somehow covered! :)  Hopefully I'll see my Oracle friends out there, and my family who (some of them) live in the bay area, as well as old school friends in SF and Oakland that went to Berkeley and my old U of I buddies that live in the Silicon Valley now.&lt;br /&gt;&lt;br /&gt;Woohoo!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6545498653797800404?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6545498653797800404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/06/on-otn-forums-lately.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6545498653797800404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6545498653797800404'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/06/on-otn-forums-lately.html' title='On the OTN forums lately...'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-187069082259945891</id><published>2008-06-11T16:07:00.000-05:00</published><updated>2008-06-11T16:09:45.555-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>OWB can be a bit 'blind' when Oracle RAC is involved!</title><content type='html'>&lt;span style="font-family: arial;"&gt;I will update this bit soon I hope. I'll post a little nasty bit that tricked us and cause our mappings to run horribly slow on a RAC environment.  Hopefully when I get a little more information on RAC from Dan Norris, I'll update this with a clear explanation!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-187069082259945891?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/187069082259945891/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/06/owb-can-be-bit-blind-when-oracle-rac-is.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/187069082259945891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/187069082259945891'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/06/owb-can-be-bit-blind-when-oracle-rac-is.html' title='OWB can be a bit &apos;blind&apos; when Oracle RAC is involved!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-905538894271775155</id><published>2008-05-31T23:29:00.005-05:00</published><updated>2010-01-06T11:50:35.305-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>OWB 11g R2 beta and book</title><content type='html'>Good news!  I have been accepted into the OWB11gR2 beta, and I am putting the new features though the testing ringer to see just how well everything will turn out.  I will likely not be able to mention or discuss much of it, so please don't ask.  If I have been given consent, I will share at the approved time.&lt;br /&gt;&lt;br /&gt;I am also in the early stages of bringing a massive amount of experience, projects, data, and writing manuscripts together for an even bigger project.  I'll be starting very soon to write the first Oracle Warehouse Builder book ever published.  It will be with Oracle Press (McGraw Hill) and will be taking advantage of all the beta experience that will be gained from the OWB11gR2 beta.&lt;br /&gt;&lt;br /&gt;In the coming months I will update here on anything that is allowed and not confidential.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-905538894271775155?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/905538894271775155/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/05/owb-11g-r2-beta-and-book.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/905538894271775155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/905538894271775155'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/05/owb-11g-r2-beta-and-book.html' title='OWB 11g R2 beta and book'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6586780365176133445</id><published>2008-05-10T10:05:00.002-05:00</published><updated>2008-06-28T13:57:26.074-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Chicago Oracle User's Group this Monday!</title><content type='html'>&lt;span style="font-family: arial;"&gt;Anyone in the the Chicago area should not forget the Chicago Oracle user's Group!  My colleague &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.dannorris.com/"&gt;Dan Norris&lt;/a&gt;&lt;span style="font-family: arial;"&gt; will be speaking on &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/products/id_mgmt/oaam/index.html"&gt;Oracle Adaptive Access Manager&lt;/a&gt;&lt;span style="font-family: arial;"&gt; and security in general.  This will take place this coming Monday in Chicago (where else??)  Check it out here!  &lt;/span&gt;&lt;a style="font-family: arial;" href="http://ioug.itconvergence.com/pls/apex/f?p=107:27:4047749501264594::NO::P27_EVENT_NUM:3271"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6586780365176133445?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6586780365176133445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/05/chicago-oracle-users-group-this-monday.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6586780365176133445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6586780365176133445'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/05/chicago-oracle-users-group-this-monday.html' title='Chicago Oracle User&apos;s Group this Monday!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5977800722417798361</id><published>2008-05-10T10:03:00.001-05:00</published><updated>2008-06-28T13:57:32.419-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Warehousing'/><title type='text'>Data integration is not necessarily creating you a Data Warehouse</title><content type='html'>&lt;span style="font-family: arial;"&gt;Nice quick read, but older article!  &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.b-eye-network.com/blogs/imhoff/archives/2007/03/data_integratio.php"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5977800722417798361?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5977800722417798361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/05/data-integration-is-not-necessarily.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5977800722417798361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5977800722417798361'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/05/data-integration-is-not-necessarily.html' title='Data integration is not necessarily creating you a Data Warehouse'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4613967254422776241</id><published>2008-04-02T10:01:00.002-05:00</published><updated>2008-04-02T10:14:35.748-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ODI'/><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB vs. Oracle Data Integrator ODI</title><content type='html'>&lt;p style="font-family: arial;"&gt;Here's a snippet from a bigger article written by &lt;a href="http://www.rittmanmead.com/blog/"&gt;Mark Rittman&lt;/a&gt; over on &lt;a href="http://www.oracle.com/technology/index.html"&gt;OTN&lt;/a&gt;.&lt;b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;b&gt;Oracle Data Integrator in Relation to Oracle Warehouse Builder&lt;/b&gt;&lt;/p&gt;       &lt;p style="font-family: arial;"&gt;At this point, regular users of Oracle Warehouse Builder are probably wondering how Oracle Data Integrator relates to it and how it fits into the rest of the Oracle data warehousing technology stack. The answer is that Oracle Data Integrator is a tool that’s complementary to Oracle Warehouse Builder and can be particularly useful when the work involved in creating the staging and integration layers in your Oracle data warehouse is nontrivial or involves SOA or non-Oracle database sources.&lt;/p&gt;       &lt;p style="font-family: arial;"&gt;For those who are building an Oracle data warehouse, Oracle Warehouse Builder has a strong set of Oracle-specific data warehousing features such as support for modeling of relational and multidimensional data structures, integration with Oracle Business Intelligence Discoverer, support for loading slowly changing dimensions, and a data profiler for understanding the structure and semantics of your data.&lt;/p&gt;                  &lt;p&gt;&lt;span style="font-family: arial;"&gt;Where Oracle Data Integrator provides value is in the initial preparation and integration of your source data, up until the staging area of the data warehouse.&lt;/span&gt; &lt;/p&gt;          &lt;p align="center"&gt;&lt;img src="http://www.oracle.com/technology/pub/images/rittman-odi-f4.gif" alt="Figure 4" /&gt;&lt;br /&gt;      &lt;/p&gt;           &lt;p style="font-family: arial;"&gt;Oracle Data Integrator can integrate and synthesize data from numerous disparate datasources, including Web services and event-based architectures, and, as shown in the figure above, provides a handy graphical interface on top of Oracle Database-specific features such as Oracle Change Data Capture. Once data has been integrated and copied into your data warehouse staging area, Oracle Warehouse Builder can take over and create and populate your operational data store and dimensional warehouse layers.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4613967254422776241?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4613967254422776241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/04/oracle-warehouse-builder-owb-vs-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4613967254422776241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4613967254422776241'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/04/oracle-warehouse-builder-owb-vs-oracle.html' title='Oracle Warehouse Builder OWB vs. Oracle Data Integrator ODI'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-440360858892580501</id><published>2008-03-29T08:12:00.002-05:00</published><updated>2008-06-28T13:57:43.580-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Do certifications always prove you're qualified to do the job?</title><content type='html'>Recently, I have come to the understanding that many certs fail to really certify whether or not someone can truly master material and do an effective job.  There are quite a few individuals who are just very good test takers or students, if you will, and they study very hard or take expensive 'crash-courses' to help them pass with a high score.&lt;br /&gt;&lt;br /&gt;There are a very few amount of certifications that I believe don't fail however.  I can honestly say I have NEVER met someone that became an 'Oracle Master' that really wasn't at least a 7/10 on a 10-point scale.  (Most DBAs being 3, 4 or 5.)  Someone like Tom Kite or Kevin Loney being around the 10 range.  This certification, of course, requires you to take hands on labs that are very difficult and stressful, along with prerequisite certifications and courses.&lt;br /&gt;&lt;br /&gt;On the other hand, a very popular certification that seems to garner a lot of attention is PMI's PMP cert.  This is for project management.  Unfortunately, employers drool over this certification.  PMI tried to do an extensive job of screening out people that are even allowed to TAKE the exams by having you fill out how much management work you've done, references, companies, and the whole 10 yards.  Unfortunately, employers seem to feel that this means PMI has cleared this person as a top proj manager, and they don't have to have their own proven, top level project managers interview them on their PM skills and abilities.&lt;br /&gt;&lt;br /&gt;Because of this, you have people that have 'hacked' their way through the PMI process unfairly by barely qualifying or by manipulating the system, then they take expensive crash courses, and they pass with a high score- BUT they have never truly managed a highly stressful and big-money project!  They sometimes even ignore the holy trinity of constraints- resources, time, and project scope!&lt;br /&gt;&lt;br /&gt;Does this mean a cert like the PMP is junk? Absolutely not.  But it needs to be taken cautiously, and not frivolously.  Interview these PMP's with your own proven top-level PMPs and see if they really can pull their weight.  If you have a PMP with 20 years experience, vs one with 8-10...well, you can do the math.&lt;br /&gt;&lt;br /&gt;Do your homework ahead of time, and make sure the PMP you're hiring is proven- and not just from the references THEY give you!  Putting an PMP in charge of a project that could jeapordize the project is very dangerous, and you sadly don't realize this until the project is hitting it's critical points!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-440360858892580501?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/440360858892580501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/03/do-certifications-always-prove-youre.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/440360858892580501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/440360858892580501'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/03/do-certifications-always-prove-youre.html' title='Do certifications always prove you&apos;re qualified to do the job?'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1430276980964942132</id><published>2008-03-28T18:33:00.002-05:00</published><updated>2008-06-28T13:57:57.487-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><title type='text'>SQL Developer and the TNS Connection Type Selection</title><content type='html'>I will be exploring this much further soon, but suffice it to say, sometimes when you install SQL Developer or other Oracle tools, they look at the most recent Oracle home from a new Product install.  For example, I installed OWB, and it had a new home.  This actually overwrote some of the paths in the Operating System, and defaulted that home as the 'main' home.&lt;br /&gt;&lt;br /&gt;Well a tool like SQL Developer loads a nice TNSNAMES.ora listing of all your database connections and it searches through that default home.  If it looks at a new home that doesn't have those listings, you drop down will have no available connections!&lt;br /&gt;&lt;br /&gt;A VERY easy way to fix this is to launch the universal installer, look at all installed products, and while looking at the oracle homes on your box, you can use the up and down arrows on the right panel to 'rank' or put a certain oracle home as the  'main' or default home.  Doing this, I then put my original database home as the default.  I restarted SQL Developer, and bingo!  It then read the right oracle home and the right TNSNAMES.ora entry and populated the drop down.&lt;br /&gt;&lt;br /&gt;Not bad!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1430276980964942132?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1430276980964942132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/03/sql-developer-and-tns-connection-type.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1430276980964942132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1430276980964942132'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/03/sql-developer-and-tns-connection-type.html' title='SQL Developer and the TNS Connection Type Selection'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3070567984791660482</id><published>2008-03-26T10:59:00.008-05:00</published><updated>2010-01-06T11:50:12.850-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 10gR2 Tutorial for you!</title><content type='html'>&lt;script&gt;&lt;!-- document.write('&lt;noscript&gt;'); --&gt;&lt;/script&gt;Here's a set of slides with some basics of OWB for beginners to look over. I know Oracle has some Oracle By Example tutorials that are 'OK' at best. This is another look at the tool for you to learn from. Hopefully these will fill in some gaps as the documentation is not so great, there are no OWB books, and there is not as much useful information about this product compared to other Oracle products.&lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="embedded_flash_361887_189kj0_object" name="embedded_flash_361887_189kj0_object" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="750" width="700"&gt;&lt;param name="flashvars" value="&amp;amp;document_id=361887&amp;amp;access_key=1g29cn9w6gpb6&amp;amp;page=1&amp;amp;version=1"&gt; &lt;param name="movie" value="http://documents.scribd.com/ScribdViewer.swf"&gt; &lt;param name="quality" value="high"&gt; &lt;param name="play" value="true"&gt; &lt;param name="loop" value="true"&gt; &lt;param name="scale" value="showall"&gt; &lt;param name="wmode" value="opaque"&gt; &lt;param name="devicefont" value="false"&gt; &lt;param name="bgcolor" value="#ffffff"&gt; &lt;param name="menu" value="true"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="allowScriptAccess" value="always"&gt; &lt;param name="salign" value=""&gt; &lt;embed flashvars="&amp;amp;document_id=361887&amp;amp;access_key=1g29cn9w6gpb6&amp;amp;page=1&amp;amp;version=1" src="http://documents.scribd.com/ScribdViewer.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="embedded_flash_361887_189kj0_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle" height="750" width="700"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;script type="text/javascript" src="http://www.scribd.com/javascripts/view.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!-- var scribd_doc = new scribd.Document(361887, '1g29cn9w6gpb6'); scribd_doc.addParam('height', 750); scribd_doc.addParam('width', 700); scribd_doc.addParam('page', 1); scribd_doc.addParam('mode', 'slideshow'); scribd_doc.write('embedded_flash_361887_189kj0');--&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3070567984791660482?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3070567984791660482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/03/test.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3070567984791660482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3070567984791660482'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/03/test.html' title='Oracle Warehouse Builder OWB 10gR2 Tutorial for you!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6630318608168041046</id><published>2008-03-25T16:45:00.005-05:00</published><updated>2008-03-25T17:08:23.188-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>What the Oracle Database can do for your Data Warehouse</title><content type='html'>&lt;span style="font-family:arial;"&gt;There are many MANY times I write a particularly difficult query or PL/SQL package and I realize that I am re-inventing the wheel.  Reinventing the wheel = BAD. (unless there is something nifty in there that hasn't been done before).&lt;br /&gt;&lt;br /&gt;I wanted to make a quick list of links to various tutorials, articles, and direct bits of Oracle docs that will get you to understand and learn some of the database provided tools that can make your SQL writing and Data Warehouse tuning and building much easier.  Some of these tools are not always easy to use the first time, but they will be easier to learn than forcing yourself to build them (or rebuild the wheel).&lt;br /&gt;&lt;br /&gt;I'll post the 10g features for now.  I'll try to get back and post the 11g features and how they work as well.  Suffice to say, the 10g features are in 11g and some are enhanced.  These can really save you some time.  Usually the hard concepts and difficult things you seek to do are already here.&lt;br /&gt;For example, how many times have you had to do some pretty tough hierarchical processing (parent-child relationships) but never used the &lt;span style="font-weight: bold;"&gt;SQL connect-by query clauses&lt;/span&gt;??  These parent child relationships are extremely common in a Data Warehouse.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;SQL Model Calculations&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;The &lt;/span&gt;&lt;code style="font-family: arial;"&gt;MODEL&lt;/code&gt;&lt;span style="font-family:arial;"&gt; clause enables you to specify complex formulas while avoiding multiple joins and &lt;/span&gt;&lt;code style="font-family: arial;"&gt;UNION&lt;/code&gt;&lt;span style="font-family:arial;"&gt; clauses. This clause supports OLAP queries such as share of ancestor and prior period comparisons, as well as calculations typically done in large spreadsheets. The &lt;/span&gt;&lt;code style="font-family: arial;"&gt;MODEL&lt;/code&gt;&lt;span style="font-family:arial;"&gt; clause provides building blocks for budgeting, forecasting, and statistical applications.&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/sqlmodel.htm#g1042989"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Materialized View Refresh Enhancements&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;Materialized view fast refresh involving multiple tables, whether partitioned or non-partitioned, no longer requires that a materialized view log be present.  The second link I provide here is particularly useful because it has screen shots and walk throughs to help you with MVs.   Getting MVs to work well with fast refresh can take a little patience with all of their prerequisites!&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/refresh.htm#g1018554"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/obe/obe10gdb_vmware/bidw/mv/mv.htm"&gt;link2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Query Rewrite Enhancements&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Query rewrite performance has been improved because query rewrite is now able to use multiple materialized views to rewrite a query.&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/qrbasic.htm#g1045551"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Partitioning Enhancements&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;You can now use partitioning with index-organized tables. Also, materialized views in OLAP are able to use partitioning. You can now use hash-partitioned global indexes.  &lt;span style="font-weight: bold;"&gt;I also wrote a nice article&lt;/span&gt; in the &lt;a href="http://ioug.itconvergence.com/pls/apex/f?p=219:1:634765628947362"&gt;IOUG BIWA&lt;/a&gt; (business intelligence, warehousing, and analytics) SIG's newsletter on the 11g database enhancements to partitioning, if you want to dig up their publications!&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/parpart.htm#g1020112"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Change Data Capture&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Oracle now supports asynchronous change data capture as well as synchronous change data capture.&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/cdc.htm#g1044340"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;ETL Enhancements&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Oracle's extraction, transformation, and loading capabilities have been improved with several &lt;/span&gt;&lt;code style="font-family: arial;"&gt;MERGE&lt;/code&gt;&lt;span style="font-family:arial;"&gt; improvements and better external table capabilities.&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/ettover.htm#g1006465"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6630318608168041046?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6630318608168041046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/03/what-oracle-database-can-do-for-your.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6630318608168041046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6630318608168041046'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/03/what-oracle-database-can-do-for-your.html' title='What the Oracle Database can do for your Data Warehouse'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6259289373207653335</id><published>2008-03-06T14:38:00.002-06:00</published><updated>2008-06-28T13:58:12.334-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Should I buy an iPhone...once again-</title><content type='html'>&lt;span style="font-family: arial;"&gt;I merely wanted to add this link.  I have thought for a long time that this device lacked some enterprise level authority, and it looks like they will address that with the next release.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Check it out at this link to read the summit and SDK dicsussions...&lt;/span&gt;&lt;a style="font-family: arial;" href="http://blog.wired.com/gadgets/2008/03/apple-sdk-annou.html"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Peronally, this goes a long way for me...using VPN, exchange sync'ing, that is some decent thought there!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;I might get one (when the price is under $500!)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6259289373207653335?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6259289373207653335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/03/should-i-buy-iphoneonce-again.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6259289373207653335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6259289373207653335'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/03/should-i-buy-iphoneonce-again.html' title='Should I buy an iPhone...once again-'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6704565397962451717</id><published>2008-02-22T06:52:00.002-06:00</published><updated>2008-06-28T13:58:12.334-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Should I buy an iPhone?!</title><content type='html'>I have seen more and more iPhones make their way into offices at my clients.  I don't trust online surveys and online critiques as much as I trust live people using one.  So, I decided to start asking every person I know and that I meet, "How do you like it?"&lt;br /&gt;&lt;br /&gt;I asked them, " If you chould change anything about it, what would it be?"&lt;br /&gt;"Any problems?"&lt;br /&gt;"Have you had a better phone?"&lt;br /&gt;"Reception quality?"&lt;br /&gt;&lt;br /&gt;I ran the full gauntlet of questions and even got to play with their phones.&lt;br /&gt;&lt;br /&gt;Surprisingly, the amount of complaints was VERY minimal.   Price being the only downer thus far, and a few people complaining about the EDGE network and how it goes down, and how once in a while a call is dropped when travelling between 2 connection points.  That was about it.&lt;br /&gt;&lt;br /&gt;All in all, very few negatives and the positives they mentioned FAR surpassed the bad.&lt;br /&gt;&lt;br /&gt;Now I have to take the question more seriously, "Will I get one?!"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6704565397962451717?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6704565397962451717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/02/should-i-buy-iphone.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6704565397962451717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6704565397962451717'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/02/should-i-buy-iphone.html' title='Should I buy an iPhone?!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-449486056823615925</id><published>2008-02-20T14:08:00.011-06:00</published><updated>2010-01-06T11:49:57.091-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 11g New Features Part 6!</title><content type='html'>&lt;span style="font-family:arial;"&gt;This is a continuation from &lt;a href="http://cali97.blogspot.com/2008/02/oracle-warehouse-builder-owb-11g-new_5681.html"&gt;part 5&lt;/a&gt;. In part 6, we will discuss a bit more about the installation of OWB 11g, and the install options.  Again, thanks to Oracle for providing some of this information to make my posting easier!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p face="arial" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Server Install Provides Full Control Center Functionality&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p face="arial" class="NORMAL"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_37Gh08TaV-M/R7yKwb2aO6I/AAAAAAAAAQc/dEa8R-SWF8Q/s1600-h/1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_37Gh08TaV-M/R7yKwb2aO6I/AAAAAAAAAQc/dEa8R-SWF8Q/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5169159037028809634" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The Oracle home of the Oracle Database 11&lt;i&gt;g&lt;/i&gt; installation includes the components needed to perform the following tasks for OWB:&lt;/span&gt;&lt;/p&gt;  &lt;ul style="font-family: arial;" class="LISTBULLET"&gt;&lt;li&gt; Deployment and execution of all standard objects&lt;br /&gt;(tables, dimensions, cubes, maps, and so on)  &lt;/li&gt;&lt;li&gt; Deployment of process flows  &lt;/li&gt;&lt;li&gt; Warehouse upgrade  &lt;/li&gt;&lt;li&gt; Run-time scripting  &lt;/li&gt;&lt;li&gt; Installation of Oracle Workflow  &lt;/li&gt;&lt;/ul&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The OWB server installation includes a small set of files needed to get the Control Center running in the database Oracle home. This allows a &lt;/span&gt;&lt;span&gt;“&lt;/span&gt;&lt;span&gt;fully functioning&lt;/span&gt;&lt;span&gt;” &lt;/span&gt;&lt;span&gt;OWB install directly with the database install.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The directory structure looks like this:&lt;/span&gt;&lt;/p&gt;  &lt;ul style="font-family: arial;" class="LISTBULLET"&gt;&lt;li style="font-family: courier new;"&gt; Oracle Home&lt;oracle&gt;/owb  &lt;/oracle&gt;&lt;/li&gt;&lt;li&gt; &lt;span style="font-family:Courier New;"&gt;Oracle Home&lt;/span&gt;&lt;oracle&gt;&lt;span style="font-family:courier new;"&gt;/owb/wf&lt;/span&gt;  &lt;/oracle&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Discoverer deployment is the only task not supported by the OWB server install. For Discoverer deployment, you must perform the stand-alone installation described later.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;b&gt;&lt;span&gt;Stand-Alone..W&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span&gt;hen Do You Need Stand-alone Installation?&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_37Gh08TaV-M/R7yK3b2aO7I/AAAAAAAAAQk/h_pYizAb8Tk/s1600-h/2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_37Gh08TaV-M/R7yK3b2aO7I/AAAAAAAAAQk/h_pYizAb8Tk/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5169159157287893938" border="0" /&gt;&lt;/a&gt;  &lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The OWB 11&lt;i&gt;g&lt;/i&gt; stand-alone installation is required only if you must:&lt;/span&gt;&lt;/p&gt;  &lt;ul style="font-family: arial;" class="LISTBULLET"&gt;&lt;li&gt; Deploy to an Oracle Database 10&lt;i&gt;g&lt;/i&gt;, release 2 target  &lt;/li&gt;&lt;li&gt; Perform Discoverer deployment  &lt;/li&gt;&lt;/ul&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The stand-alone DVD is actually bundled with the 11&lt;i&gt;g&lt;/i&gt; database pack.&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-family:arial;"&gt;For full functionality, OWB 11&lt;i&gt;g&lt;/i&gt; stand-alone must be installed on the database server machine (10&lt;i&gt;g&lt;/i&gt; R2 or 11&lt;i&gt;g&lt;/i&gt;) into a &lt;i&gt;new&lt;/i&gt; Oracle home (separate from the database home).&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="NORMAL"&gt; &lt;/p&gt; &lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;b&gt;&lt;span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;h3  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt; Using OWB 11&lt;em&gt;g&lt;/em&gt; with DB 10&lt;em&gt;g&lt;/em&gt;          R2&lt;/span&gt;&lt;/h3&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_37Gh08TaV-M/R7yMCr2aO8I/AAAAAAAAAQs/47293ZPUxco/s1600-h/3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_37Gh08TaV-M/R7yMCr2aO8I/AAAAAAAAAQs/47293ZPUxco/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5169160450073050050" border="0" /&gt;&lt;/a&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;OWB 11&lt;i&gt;g&lt;/i&gt; is architected on the assumption that it will be used with Oracle Database 11&lt;i&gt;g&lt;/i&gt;. This tight integration includes pre-seeding of the &lt;/span&gt;OWBSYS&lt;span&gt; schema in the default database and placing OWB in the same Oracle home as the database.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;To use OWB 11&lt;i&gt;g&lt;/i&gt; with Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2, you must perform a few simple steps:&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;1. Run SQL script to create &lt;/span&gt;OWBSYS&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;2. Run SQL script to identify OWB home to Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;3. Unlock &lt;/span&gt;OWBSYS&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;4. Enable access to workspaces.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial; font-weight: bold;" class="NORMAL"&gt; &lt;span&gt;1. Run SQL script to create &lt;/span&gt;OWBSYS&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial; font-weight: bold;" class="NORMAL"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_37Gh08TaV-M/R7yMqb2aO9I/AAAAAAAAAQ0/7Pc2Xc2_Vkw/s1600-h/4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_37Gh08TaV-M/R7yMqb2aO9I/AAAAAAAAAQ0/7Pc2Xc2_Vkw/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5169161132972850130" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;When using Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2, you must run a SQL script to create the &lt;/span&gt;OWBSYS&lt;span&gt; repository schema that is needed by OWB 11&lt;i&gt;g&lt;/i&gt;. (&lt;/span&gt;OWBSYS&lt;span&gt; is automatically created during Oracle Database 11&lt;i&gt;g&lt;/i&gt; installation, so this step is not needed when using OWB 11&lt;i&gt;g&lt;/i&gt; with Database 11&lt;i&gt;g&lt;/i&gt;.)&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The script &lt;/span&gt;&lt;your owb="" home=""&gt;/OWB/UnifiedRepos/cat_owb.sql&lt;span&gt; installs the &lt;/span&gt;OWBSYS&lt;span&gt; database user that is otherwise automatically created when installing Database 11&lt;i&gt;g&lt;/i&gt;. &lt;/span&gt;&lt;/your&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span&gt; The method by which you invoke SQL*Plus is important. Do not invoke SQL*Plus from the Start &gt; Programs &gt; Oracle database home folder or the Warehouse Builder folder. Instead, invoke SQL*Plus from Start &gt; Run &gt; &lt;/span&gt;cmd.exe&lt;span&gt;. Type the Path command and press Enter.&lt;br /&gt;Verify that Warehouse Builder is near the front of the path statement so that the SQL*Plus session invokes from the Warehouse Builder installation. If not, you may need to temporarily set the path (such as &lt;/span&gt;Path=&lt;warehouse builder="" home=""&gt;\bin&lt;span&gt;). Then invoke SQL*Plus as SYS with SYSDBA privileges. For example, at the command line you can type the following:&lt;br /&gt;&lt;/span&gt;sqlplus sys/&lt;sys password=""&gt; as sysdba&lt;span&gt; &lt;/span&gt;&lt;/sys&gt;&lt;/warehouse&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Connect to SQL*Plus as SYSDBA and issue the following command to create &lt;/span&gt;OWBSYS&lt;span&gt;: &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; @&lt;your owb="" home=""&gt;/owb/UnifiedRepos/cat_owb.sql; &lt;/your&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Press Enter. You are prompted for a tablespace for the &lt;/span&gt;OWBSYS&lt;span&gt; user. Type a table such as users and press Enter.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;When this command finishes successfully, you are prompted: “If you are NOT using an OWB installed in the Oracle database home, please now run reset_owbcc_home”.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-family: arial; font-weight: bold;" class="NORMAL"&gt;&lt;span&gt;2. Run SQL script to identify OWB home to Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Earlier, you were instructed to install Warehouse Builder in an Oracle home other than the &lt;i&gt;database&lt;/i&gt; Oracle home if you are using OWB 11&lt;i&gt;g &lt;/i&gt;with Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2. To ensure access to the Control Center on the Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2 database, run the &lt;/span&gt;reset_owbcc_home.sql&lt;span&gt; script and pass in your Oracle home for Warehouse Builder.&lt;br /&gt;Run the script as a system privileged user such as SYS or SYSTEM. For example, type the following command at the command prompt: &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; SQL&gt; @c:\oracle\OWB_home_11g\owb\UnifiedRepos\reset_owbcc_home;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL" align="justify"&gt; &lt;span&gt;Press Enter. You are prompted for the full path of the Oracle home for the OWB Control Center install. First read the following note.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span&gt; In the following example, observe the required use of the forward slashes (&lt;/span&gt;/&lt;span&gt;) even when using a Windows machine. Note also that your response with the full path &lt;i&gt;must&lt;/i&gt; be case sensitive. Be sure to enter the drive letter in uppercase (such as &lt;/span&gt;C:&lt;span&gt;) and follow the case sensitivity of the folder names in the path of the Oracle home for OWB. Your response should be similar to the following example:&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; C:/oracle/OWB_home_11g&lt;span&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Press Enter.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Important note:&lt;/span&gt;&lt;/b&gt;&lt;span&gt; If you specify the path to the OWB Oracle home incorrectly (using backward slashes or incorrect case sensitivity), the &lt;/span&gt;reset_owbcc_home.sql&lt;span&gt; script finishes without apparent errors. However, when you later use the Repository Assistant to create a workspace and users, the process fails.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial; font-weight: bold;" class="NORMAL"&gt; &lt;span&gt;3. Unlock &lt;/span&gt;OWBSYS&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial; font-weight: bold;" class="NORMAL"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_37Gh08TaV-M/R7yNg72aO-I/AAAAAAAAAQ8/txyvR8v6j_w/s1600-h/5.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_37Gh08TaV-M/R7yNg72aO-I/AAAAAAAAAQ8/txyvR8v6j_w/s400/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5169162069275720674" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;b&gt;&lt;span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;&lt;/b&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;After creating &lt;/span&gt;OWBSYS&lt;span&gt;, you must unlock the &lt;/span&gt;OWBSYS&lt;span&gt; account and reinstate its password if the strong password option is enabled on the database. Proceed with the SQL*Plus commands to unlock the &lt;/span&gt;OWBSYS&lt;span&gt; account and assign a password (also named &lt;/span&gt;OWBSYS&lt;span&gt;): &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; alter user OWBSYS account unlock;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; alter user OWBSYS identified by OWBSYS;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;The requirements explained above are also mentioned in the OWB 11&lt;i&gt;g&lt;/i&gt; Installation Guide documentation, in the section titled “Hosting the Repository on Oracle Database 10g Release 2.”&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;For each Warehouse Builder client installation, enable access to the workspaces hosted on your Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2 database.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;4. Enable Access to Workspaces&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;By default, Warehouse Builder 11&lt;i&gt;g&lt;/i&gt;, release 1 clients are set to connect to workspaces hosted on an Oracle 11&lt;i&gt;g&lt;/i&gt; database. That is, the Warehouse Builder repository is assumed to be hosted on an Oracle 11&lt;i&gt;g&lt;/i&gt; database. &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;To enable access to an Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2 repository and its workspaces, alter the file &lt;/span&gt;&lt;owb home=""&gt; /owb/bin/admin/Preference.properties&lt;span&gt;. If the file does not exist, you can create it based on the example file available in the same directory, &lt;/span&gt;Preference.properties.tmp&lt;span&gt;. &lt;/span&gt;&lt;/owb&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; In the preference properties file, add the REPOS_DB_VERSION_ALLOWED property and set its value to Oracle 10g, Oracle 11g&lt;span&gt;. (This property may already be present.)&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;And that's all for part 6.  Hopefully, this allows users to get OWB 11g installed in their preferred format!  Thanks again to Oracle for providing some of the info contained above.  If you have any questions, feel free to drop me a line.  Part 7 will cover Repository Assistant Workspace Changes, and how logging in, managing users and targets, and other features have changed!&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-449486056823615925?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/449486056823615925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/02/oracle-warehouse-builder-owb-11g-new_4011.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/449486056823615925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/449486056823615925'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/02/oracle-warehouse-builder-owb-11g-new_4011.html' title='Oracle Warehouse Builder OWB 11g New Features Part 6!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_37Gh08TaV-M/R7yKwb2aO6I/AAAAAAAAAQc/dEa8R-SWF8Q/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3228020197603337080</id><published>2008-02-18T08:37:00.001-06:00</published><updated>2008-02-18T08:39:09.605-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>Quick Overview Diagram of BI Publisher Data Flow</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/R7mYe72aO0I/AAAAAAAAAPU/Q5WiM2zGpVg/s1600-h/BIP.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R7mYe72aO0I/AAAAAAAAAPU/Q5WiM2zGpVg/s400/BIP.JPG" alt="" id="BLOGGER_PHOTO_ID_5168329704613755714" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3228020197603337080?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3228020197603337080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/02/quick-overview-diagram-of-bi-publisher.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3228020197603337080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3228020197603337080'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/02/quick-overview-diagram-of-bi-publisher.html' title='Quick Overview Diagram of BI Publisher Data Flow'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/R7mYe72aO0I/AAAAAAAAAPU/Q5WiM2zGpVg/s72-c/BIP.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6128817535472983387</id><published>2008-02-06T22:56:00.001-06:00</published><updated>2008-02-06T23:31:30.952-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BAM'/><title type='text'>What is BAM and what does it have to do with Oracle?</title><content type='html'>I've heard the term tossed around quite a bit.  BAM.  I've heard it used in many different ways, some wrong, some VERY wrong, and a few right.  So, with an audience reading, here is what I have gathered, read, researched, and know about BAM and what Oracle is doing with it:&lt;br /&gt;&lt;br /&gt;&lt;p:colorscheme colors="#ffffff,#252525,#3e3e3e,#3e3e3e,#fb0018,#f70010,#f70010,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;div shape="_x0000_s1026" class="O" style="text-align: center;"&gt;&lt;span style="font-size:22;"&gt;&lt;b&gt;&lt;i&gt;“BAM defines the concept of providing&lt;span style=""&gt;  &lt;/span&gt;real-time access to critical business performance indicators to improve the speed and &lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style="font-size:22;"&gt;&lt;b&gt;&lt;i&gt;effectiveness of business operations.”&lt;br /&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;-The Gartner Group&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:22;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;OK, so going off of that 'authoritative' quote, let us break this down.&lt;/span&gt; &lt;img style="font-family: arial;" src="file:///C:/DOCUME%7E1/GREGPA%7E1/LOCALS%7E1/Temp/moz-screenshot-6.jpg" alt="" /&gt;&lt;img style="font-family: arial;" src="file:///C:/DOCUME%7E1/GREGPA%7E1/LOCALS%7E1/Temp/moz-screenshot-7.jpg" alt="" /&gt; &lt;p:colorscheme style="font-family: arial;" colors="#ffffff,#252525,#3e3e3e,#3e3e3e,#fb0018,#f70010,#f70010,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;div shape="_x0000_s1026" style=""&gt;  &lt;ul&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -1.77%;"&gt;•&lt;/span&gt;&lt;span lang="EN-GB"&gt;BAM is largely &lt;/span&gt;&lt;span lang="EN-GB"&gt;&lt;i&gt;born-of&lt;/i&gt;&lt;/span&gt;&lt;span lang="EN-GB"&gt;, and is reshaping, two previously distinct technology markets:  &lt;/span&gt;&lt;/li&gt;&lt;ul  style="font-family:arial;"&gt;&lt;li&gt;&lt;span style="font-size:61;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -2.06%;"&gt;–&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:11;" lang="EN-GB" &gt;Analytics and decision making of Business intelligence market &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul  style="font-family:arial;"&gt;&lt;li&gt;&lt;span style="font-style: italic;font-size:61;" &gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -2.06%;"&gt;–&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-GB"  style="font-size:11;"&gt;&lt;span style="font-style: italic;"&gt;Real-time and business process linkage of Enterprise Application Integration (EAI)&lt;/span&gt; &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -1.99%;"&gt;•&lt;/span&gt;&lt;span lang="EN-GB"&gt;BAM focuses on what &lt;/span&gt;&lt;span style="color: rgb(255, 1, 1);" lang="EN-GB"&gt;is &lt;/span&gt;&lt;span lang="EN-GB"&gt;happening, not what has, or might happen &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -1.74%;font-family:arial;" &gt;•&lt;/span&gt;&lt;span  lang="EN-GB" style="font-family:arial;"&gt;BAM sits &lt;i&gt;in-between&lt;/i&gt; the historical and analytical focus of BI and the forward business &lt;/span&gt;&lt;span lang="EN-GB"&gt;&lt;span style="font-family:arial;"&gt;planning of Corporate Performance Management&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R6qRMkZI16I/AAAAAAAAAPE/LBNMG0FyrAk/s1600-h/1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R6qRMkZI16I/AAAAAAAAAPE/LBNMG0FyrAk/s400/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5164099567847266210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p:colorscheme colors="#ffffff,#000000,#808080,#000000,#00cc99,#3333cc,#ccccff,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;div shape="_x0000_s1026" class="O"  style="font-family:arial;"&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;BAM applications monitor day-to-day business processes such as customer orders, insurance claims and supply chain operations. BAM products are typically driven by process models. &lt;span style="font-weight: bold;"&gt;This is very different from data-driven ETL applications, which have little or no knowledge of business processes.&lt;/span&gt; (Aside: it is worth mentioning that strategic and tactical performance management is also likely to become business process driven in the future.)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;As a BAM server tracks operational events, it maintains these events in a cache that is used by a reporting and analysis engine running under the control of the BAM server. The analysis engine can access existing business intelligence and data warehouse information to put the operational events being tracked into a business context and produces scorecards of operational business performance. The BAM environment, however, also provide the ability to do more detailed analysis and mining of information in the analytics engine.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;The key benefit of a BAM environment is that operational processes can be monitored and exceptions acted on in close to real time.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;Another recent trend in BI analysis tools has been to add a &lt;i&gt;performance management &lt;/i&gt;capability that enables business users to compare the analytics produced during BI processing to actual business goals and forecasts (i.e., it puts BI into a business context). Performance management products extend the use of BI from &lt;i&gt;measuring&lt;/i&gt; business performance to &lt;i&gt;managing&lt;/i&gt; it. This is termed as Business Analytics. The &lt;i&gt;actionable intelligence&lt;/i&gt; produced by these products is presented in the form of drillable &lt;i&gt;scorecards&lt;/i&gt; that employ formal or informal methodologies to document business goals and initiatives. Some performance management products also provide rules-driven facilities to send &lt;i&gt;alerts&lt;/i&gt; to business users when thresholds defined by the user are, for example, not achieved. Alerts reduce the amount of time business users spend in accessing and analyzing data, and reduce the reaction time required to identify and fix business problems.  &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;BI and Business Analytics tools enable business users to &lt;i&gt;react&lt;/i&gt; to business situations after they occur. Their &lt;i&gt;predictive analytics &lt;/i&gt;&lt;i&gt;tools&lt;/i&gt; component adds techniques such as data mining and forecasting to a business intelligence framework. These techniques help users to become more &lt;i&gt;proactive &lt;/i&gt;in managing the business. In some cases, predictive tools are used to provide the business context (e.g., rules, forecasts) for the scorecards and alerts used by performance management tools.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p:colorscheme colors="#ffffff,#252525,#3e3e3e,#3e3e3e,#fb0018,#f70010,#f70010,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;div shape="_x0000_s1026" class="O" style=""&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style="font-size:144;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -2.57%;font-family:Wingdings;" &gt;ü&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;span  lang="EN-GB" style="font-family:arial;"&gt;BAM adds real-time information to Business Intelligence &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="font-weight: bold;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="visibility: hidden;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -2.88%;"&gt;ü&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="font-weight: bold;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -2.65%;"&gt;ü&lt;/span&gt;&lt;span lang="EN-GB"&gt;&lt;span&gt;Business Intelligence adds information context to BAM&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;!--[if ppt]--&gt;    &lt;div style="font-weight: bold;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="visibility: hidden;font-size:100%;" &gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -2.45%;font-family:Wingdings;" &gt;Ø&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span lang="EN-GB"  style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;    &lt;/div&gt; &lt;p:colorscheme colors="#ffffff,#000000,#808080,#000000,#00cc99,#3333cc,#ccccff,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;div shape="_x0000_s1026" class="O"  style="font-family:arial;"&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;Both BI and BAM address the needs of monitoring business processes to enhance operations efficiency. The key differentiator relates to the how quickly the business needs to react to an event or process exception. Business problems that require near real-time information access and analytics can be best solved using BAM.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;BAM furthers the BI cause by:&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;1. Embedding key analytics (computed in real-time) in day-to-day business processes &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;2. Correlating heterogeneous events and patterns to compute causalities, aggregates and thresholds, based on end-user preferences &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;3. Delivers the analyzed information and alerts in real-time to the users when and where the information matters &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;4. Providing a platform for structured and collaborative problem resolution &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt;Using a loan as an example,&lt;span style=""&gt;  &lt;/span&gt;BAM can send an alert to indicate a number of loans have been made in a specific area.&lt;span style=""&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-GB"&gt;This is very useful information, but becomes more useful when used with BI to see what the impact of these loans have on an &lt;/span&gt;&lt;span lang="EN-GB"&gt;organization's exposure in different markets.&lt;span style=""&gt;  &lt;/span&gt;BI can put the results of BAM into a broader context and make the decision process &lt;/span&gt;&lt;span lang="EN-GB"&gt;a more informed one.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt;It may be that as an organization, analysis results show exposure is becoming too skewed toward a specific market.&lt;span style=""&gt;  &lt;/span&gt;As a result of &lt;/span&gt;&lt;span lang="EN-GB"&gt;this analysis, the BAM thresholds for sending alerts can be adjusted.  You make the rules, you set the thresholds, you learn real-time when these thresholds are at or near being hit.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt;&lt;span style="font-weight: bold;"&gt;Who uses BAM?? &lt;/span&gt;&lt;span&gt;(click any picture to enlarge)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;img src="file:///C:/DOCUME%7E1/GREGPA%7E1/LOCALS%7E1/Temp/moz-screenshot-8.jpg" alt="" /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/R6qUEEZI17I/AAAAAAAAAPM/1MAozq9D7po/s1600-h/2.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R6qUEEZI17I/AAAAAAAAAPM/1MAozq9D7po/s400/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5164102720353261490" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;There will be a part 2 of this article shortly which will explore the technical and business challenges of implementing BAM.  Stay tuned...&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;    &lt;/div&gt;  &lt;/div&gt;  &lt;div  style="font-weight: bold;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;    &lt;/div&gt;  &lt;span style="font-weight: bold;font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;           &lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:22;"&gt;&lt;/span&gt;&lt;span style="font-size:22;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6128817535472983387?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6128817535472983387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/02/what-is-bam-and-what-does-it-have-to-do.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6128817535472983387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6128817535472983387'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/02/what-is-bam-and-what-does-it-have-to-do.html' title='What is BAM and what does it have to do with Oracle?'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/R6qRMkZI16I/AAAAAAAAAPE/LBNMG0FyrAk/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5441893412761628869</id><published>2008-02-05T18:12:00.004-06:00</published><updated>2010-01-06T11:49:47.060-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 11g New Features Part 5!</title><content type='html'>&lt;span style="font-family:arial;"&gt;This is a continuation from &lt;/span&gt;&lt;a style="font-family: arial;" href="http://cali97.blogspot.com/2008/01/oracle-warehouse-builder-owb-11g-new_14.html"&gt;part 4&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  In part 5, we will discuss a bit about the installation of OWB 11g, and how it is easier and differs from the previous counterparts. Again, thanks to Oracle for providing some of this information to make my posting easier!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Overall, the installation of OWB 11&lt;i&gt;g&lt;/i&gt; is greatly simplified in an Oracle Database 11&lt;i&gt;g&lt;/i&gt; environment. When you install the core Oracle Database 11&lt;i&gt;g&lt;/i&gt;, you get the OWB back end: a pre-seeded repository schema and workflow.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Without the requirement of SYSDBA privileges (as we previously mentioned in other postings), you can make a sandbox repository and start exploring the OWB tool immediately!  This was not necessarily so in the 10g versions!&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Three types of OWB 11&lt;i&gt;g&lt;/i&gt; installation possibilities can be:&lt;/span&gt;&lt;/p&gt;  &lt;ul style="font-family: arial;"&gt;&lt;li&gt; Server installation as part of the Oracle Database 11&lt;i&gt;g&lt;/i&gt; installation  &lt;/li&gt;&lt;li&gt; Stand-alone installation using the stand-alone DVD bundled with the 11&lt;i&gt;g&lt;/i&gt; database pack  &lt;/li&gt;&lt;li&gt; Stand-alone installation for Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2 using special scripts&lt;/li&gt;&lt;li&gt;&lt;b&gt;Note:&lt;/b&gt; Installing to Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2 requires running two special SQL scripts and a few extra steps&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_37Gh08TaV-M/R6qOdEZI14I/AAAAAAAAAO0/pwW2Cmg-Z7c/s1600-h/1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_37Gh08TaV-M/R6qOdEZI14I/AAAAAAAAAO0/pwW2Cmg-Z7c/s400/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5164096552780224386" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b style="font-family: arial;"&gt;&lt;span&gt;OWBSYS Is Part of Database 11&lt;i&gt;g&lt;/i&gt; Installation&lt;/span&gt;&lt;/b&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;As part of the database installation scripting, the &lt;/span&gt;OWBSYS&lt;span&gt; schema is seeded as part of these starter databases:&lt;/span&gt;&lt;/p&gt;  &lt;ul style="font-family: arial;" class="LISTBULLET"&gt;&lt;li&gt; General Purpose  &lt;/li&gt;&lt;li&gt; Transaction Processing  &lt;/li&gt;&lt;li&gt; Data Warehouse  &lt;/li&gt;&lt;/ul&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;During installation, all of the necessary system privileges, object privileges, and roles are granted to the &lt;/span&gt;OWBSYS&lt;span&gt; schema. The script that creates &lt;/span&gt;OWBSYS&lt;span&gt; is located at: &lt;/span&gt;../owb/UnifiedRepos/cat_owb.sql&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;b&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_37Gh08TaV-M/R6qOwkZI15I/AAAAAAAAAO8/NxeVNS2aSG8/s1600-h/2.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_37Gh08TaV-M/R6qOwkZI15I/AAAAAAAAAO8/NxeVNS2aSG8/s400/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5164096887787673490" border="0" /&gt;&lt;/a&gt;&lt;b&gt;&lt;span&gt;Why?&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;So after database installation, OWB is ready to use. Because the necessary privileges and roles are granted, no DBA or SYSDBA credentials are required when creating workspaces.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span&gt; The schema does &lt;i&gt;not&lt;/i&gt; hold a complete repository/workspace in its pre-seeded form. You must still define your workspaces, workspace owners, and users. Also, &lt;/span&gt;OWBSYS&lt;span&gt; is locked by default. As will be explained later, you must unlock it if you are using OWB 11&lt;i&gt;g&lt;/i&gt; with Oracle Database 10&lt;i&gt;g&lt;/i&gt; R2. &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;OWB as a Custom Database Option&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;For custom databases, OWB is an option in the Database Configuration Assistant user interface. With the OWB option selected, these database options are enabled:&lt;/span&gt;&lt;/p&gt;  &lt;ul style="font-family: arial;" class="LISTBULLET"&gt;&lt;li&gt; Oracle OLAP  &lt;/li&gt;&lt;li&gt; Oracle JVM  &lt;/li&gt;&lt;li&gt; Oracle XML DB  &lt;/li&gt;&lt;li&gt; Oracle Intermedia  &lt;/li&gt;&lt;li&gt; Oracle Enterprise Manager Repository&lt;/li&gt;&lt;/ul&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_37Gh08TaV-M/R6j-MUZI10I/AAAAAAAAAOM/-H1K6Zmkg-4/s1600-h/2.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_37Gh08TaV-M/R6j-MUZI10I/AAAAAAAAAOM/-H1K6Zmkg-4/s400/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5163656460366305090" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Now that we have a brief overview of the install options, next time we will look more in depth at the OWB 11g server install, the OWB 11g standalone install, and if the post doesn't get TOO long, we'll also discuss using OWB 11g on a 10gR2 Oracle Database and all the gotchas that come with that!   I know that will be heavily requested just simply because some people want to use OWB 11g but don't want to upgrade their database just yet from 10gR2 to 11g!  Until next time....&lt;/span&gt;&lt;br /&gt;&lt;!-- cr piece: Skeleton-8 --&gt;&lt;!-- #EndEditable --&gt; &lt;!-- end cr piece: Skeleton-8 --&gt;               &lt;!-- #BeginEditable "links1" --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5441893412761628869?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5441893412761628869/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/02/oracle-warehouse-builder-owb-11g-new_5681.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5441893412761628869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5441893412761628869'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/02/oracle-warehouse-builder-owb-11g-new_5681.html' title='Oracle Warehouse Builder OWB 11g New Features Part 5!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_37Gh08TaV-M/R6qOdEZI14I/AAAAAAAAAO0/pwW2Cmg-Z7c/s72-c/1.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5336252192922518377</id><published>2008-02-04T14:30:00.001-06:00</published><updated>2008-06-28T13:58:39.743-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Lesson learned: New England Patriots and your fans...</title><content type='html'>&lt;span style="font-family: arial;"&gt;cheaters, you got what you deserved.    :)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;18-0 with 1 &lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-size:180%;" &gt;GIANT&lt;/span&gt; mistake.  :)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5336252192922518377?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5336252192922518377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/02/lesson-learned-new-england-patriots-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5336252192922518377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5336252192922518377'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/02/lesson-learned-new-england-patriots-and.html' title='Lesson learned: New England Patriots and your fans...'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6420421386668482643</id><published>2008-01-14T18:44:00.001-06:00</published><updated>2008-02-06T22:33:02.943-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>Bi Publisher and nested tables and loops</title><content type='html'>&lt;span style="font-family:arial;"&gt;One thing I have noticed while developing RTF templates is that it always seems to be in your favor to try to use tables to structure your data.  Not only this, but using or not using tables, depending on your XSL logic, can actually greatly change the output of your BI publisher report.&lt;br /&gt;&lt;br /&gt;The following post will illustrate a few things I went through while developing a report that had a strict heirarchy.  Now, this report is based off of an Oracle Apps Bill of Lading, and combined a bit with a Sales Order Acknowledgement document, so it might not look familiar.  The point is, there are a few steps in understanding how to get your report looking right.&lt;br /&gt;&lt;br /&gt;1. Understand what data needs to be on the report and HOW it needs to look and be structured.&lt;br /&gt;2. Become familiar with the data and how it is structured hierarchically or if at all.&lt;br /&gt;3. Become intimately familiar with your query or tool (like Oracle Reports) that needs to generate&lt;br /&gt;the XML that your BI Publisher template will merge with.&lt;br /&gt;4. Review your XML that is merging with the template so you truly understand what data is at what&lt;br /&gt;level in the hierarchy, and where it might repeat as a group.&lt;br /&gt;5. Learn to re-structure your report or application that serves the XML so it fits your needs.&lt;br /&gt;6. Finally, learn to use BI Publisher's templating ability (and tables) to produce the output in the right&lt;br /&gt;format.&lt;br /&gt;&lt;br /&gt;That being said, for our example we will look at a heirarchy as follows:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LPN&lt;/span&gt; (license plate number) is the master node or top-most level.&lt;br /&gt;- &lt;span style="font-weight: bold;"&gt;Item Number and Item Description&lt;/span&gt; are just underneath LPN, and there might be multiple&lt;br /&gt;entries PER LPN.&lt;br /&gt;- &lt;span style="font-weight: bold;"&gt;Quantity, Lot Number, Heat Number, and Mechanical Number&lt;/span&gt; are all attributes of an item&lt;br /&gt;number, and thus they can all appear multiple times PER item number.&lt;br /&gt;&lt;br /&gt;The XML data might look like:&lt;br /&gt;&lt;list_g_trip_id&gt;&lt;br /&gt;&lt;g_trip_id&gt;&lt;span style="font-weight: bold;"&gt;&lt;lpn&gt;LPN- GDN0000124&lt;/lpn&gt;&lt;/span&gt;&lt;br /&gt;&lt;list_g_item_description&gt;&lt;g_item_description&gt;&lt;span style="font-weight: bold;"&gt;  &lt;i_desc&gt;Item Desc- 2.0000.PL.7050.T7451.ALUM.BARE.48.5000.144.5000&lt;/i_desc&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;                  &lt;itm_num&gt;Item #- 600296&lt;br /&gt;&lt;/itm_num&gt;&lt;/span&gt;&lt;list_g_uom&gt;&lt;g_uom&gt;&lt;span style="font-weight: bold;"&gt;&lt;heat&gt;               Heat Number- 398662&lt;br /&gt;  Mechanical Number- 339394&lt;br /&gt;&lt;/heat&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;                           Lot Number- &lt;lot&gt;027.500/R014.2506276-A00&lt;/lot&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;                     &lt;qty&gt;      Quantity- 77&lt;/qty&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;                     &lt;uom&gt;      Unit of Measure- LBS&lt;/uom&gt;&lt;/span&gt;&lt;br /&gt;&lt;/g_uom&gt;&lt;br /&gt;Note that this is the easiest situation, 1 LPN, 1 'set' of item description and item number, and 1 'set' of the item's attributes underneath.  We need to design the BI Publisher template for a repeating possibility though, like:&lt;br /&gt;&lt;br /&gt;LPN 1&lt;br /&gt;ITEM 1&lt;br /&gt;        &lt;/list_g_uom&gt;&lt;/g_item_description&gt;&lt;/list_g_item_description&gt;&lt;/g_trip_id&gt;&lt;/list_g_trip_id&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;    ITEM Attributes 1&lt;br /&gt;     .&lt;br /&gt;                .&lt;br /&gt;    ITEM Attributes N&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;list_g_trip_id&gt;&lt;g_trip_id&gt;&lt;list_g_item_description&gt;&lt;g_item_description&gt;&lt;list_g_uom&gt;             .&lt;br /&gt;.&lt;br /&gt;ITEM N&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;LPN N&lt;br /&gt;&lt;br /&gt;So multiple possible LPNs each with multiple possible items, each with multiple possible attributes.  And yes, the people that read this report want it grouped nicely so that each attribute belonging to each item belonging to each LPN is 'grouped' and structured hierarchically.  For any experienced reporting developer or any data analysis professional, this isn't too bad.  However mastering this in BI Publisher with MS Word as your RTF Template tool, you really should master nested tables.  The following is a screenshot of how we can get this to work in a report.  It is a simple shot of the most basic situation with only 1 LPN, 1 item and 1 description.  note the nested tables in this output:&lt;br /&gt;&lt;br /&gt;&lt;/list_g_uom&gt;&lt;/g_item_description&gt;&lt;/list_g_item_description&gt;&lt;/g_trip_id&gt;&lt;/list_g_trip_id&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R6qGikZI11I/AAAAAAAAAOc/PtdMYNeYRz4/s1600-h/1LPN.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R6qGikZI11I/AAAAAAAAAOc/PtdMYNeYRz4/s400/1LPN.JPG" alt="" id="BLOGGER_PHOTO_ID_5164087851176482642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The next shot is a more complicated output using the SAME template, this one having multiple items and descriptions for 1 LPN:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/R6qJ6EZI13I/AAAAAAAAAOs/hbkgfwOXhxU/s1600-h/multi.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R6qJ6EZI13I/AAAAAAAAAOs/hbkgfwOXhxU/s400/multi.JPG" alt="" id="BLOGGER_PHOTO_ID_5164091553438291826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Again, notice the structuring of the tables I purposely left so you can see how this is built from top to bottom.  You need to nest your tables hierarchically to get this structure to work.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Finally, the template and the XSL and code:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R6qH-0ZI12I/AAAAAAAAAOk/l3QfB1kGVmo/s1600-h/template.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R6qH-0ZI12I/AAAAAAAAAOk/l3QfB1kGVmo/s400/template.JPG" alt="" id="BLOGGER_PHOTO_ID_5164089436019414882" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;A few things to note in this quick template, we are indeed using barcodes as you might have noticed.  Our initial for-each tag (in aqua) is outside the main table and will repeat basically for every single occurence of an LPN.  Then we have a table nested inside the LPN table.  This next FE (for-each) is shown in the 2nd nested table and it will repeat for each occurrence of an item number and item description pair.  Finally, we nested a 3rd table inside the item's table, and it holds the item's attributes.  The 3rd and final FE (for-each) will repeat for each Quantity, Lot, Heat, and Mechanical ID attributes it finds for the current item.  You'll then see the EFE (end for-each) that stops the repeating for each of the 'FE' sections.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;We also have a XSL tag that says split-by-page-break:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;This is a tag that needs to be experimented with and placed JUST BEFORE the right EFE tag to see what it does.  If done right, it will page break at the end of each of the elements for the EFE it proceeds.  In this case, the tag is just before the last EFE which is related to the initial FE which if for the repeating LPN.  So it will page break for each LPN we encounter...and it does.  It keeps all items and attributes together but only makes a new page when the LPN changes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Hope this helps!&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;list_g_trip_id&gt;&lt;g_trip_id&gt;&lt;list_g_item_description&gt;&lt;g_item_description&gt;&lt;list_g_uom&gt;&lt;/list_g_uom&gt;&lt;/g_item_description&gt;&lt;/list_g_item_description&gt;&lt;/g_trip_id&gt;&lt;/list_g_trip_id&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6420421386668482643?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6420421386668482643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/01/bi-publisher-and-nested-tables-and.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6420421386668482643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6420421386668482643'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/01/bi-publisher-and-nested-tables-and.html' title='Bi Publisher and nested tables and loops'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/R6qGikZI11I/AAAAAAAAAOc/PtdMYNeYRz4/s72-c/1LPN.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3035301659966138952</id><published>2008-01-14T17:38:00.002-06:00</published><updated>2010-01-06T11:49:34.882-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 11g New Features Part 4!</title><content type='html'>&lt;span style="font-family:arial;"&gt;This is a continuation from &lt;a href="http://cali97.blogspot.com/2008/01/oracle-warehouse-builder-owb-11g-new.html"&gt;part 3&lt;/a&gt;.   We will continue to explore some new features this time of OWB 11g.  Last time we touched on the Siebel Connector and some general connectivity options.&lt;br /&gt;&lt;br /&gt;First, you should know that there are a few new features in OWB 11g that were rolled out in the latest OWB 10g R2 patch version 10.2.0.3.  As follows:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li style="font-family: arial;"&gt;Version support for type 2 SCDs.&lt;/li&gt;&lt;li style="font-family: arial;"&gt;Set based Delete in mappings code generation.&lt;/li&gt;&lt;li style="font-family: arial;"&gt;Availability of a merge optimization property for table operators.&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;DML error logging to handle error tables.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family:arial;"&gt;So what are these and how are they 'new'?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;b style="font-family: arial;"&gt;&lt;span&gt;Versioning of Type 2 SCDs &lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:arial;"&gt;&lt;span&gt;(slowly changing dimensions)&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;br /&gt;Hierarchy versioning supports multiple hierarchies. When the &lt;span style="font-weight: bold;"&gt;non&lt;/span&gt;-leaf level (think of a tree or maybe a bush...the leaves are the furthest from the root or middle) of a dimension contains versioned attributes, &lt;i&gt;the versioning of this non-leaf level results in the versioning of its corresponding child records&lt;/i&gt; if they have effective date and expiration date attributes and if you have enabled hierarchy versioning.  In essence, what can happen to 'Dad' will happen to his kids too. &lt;/span&gt;  &lt;p class="NORMAL"  style="font-family:arial;"&gt; &lt;span style="color:black;"&gt;Hierarchy versioning is not enabled by default for type 2 SCDs (slowly changing dimensions). When you create a type 2 SCD by using the Create Dimension Wizard, hierarchy versioning is disabled. You must use the Data Object Editor to enable hierarchy versioning.&lt;/span&gt;&lt;/p&gt;&lt;p class="NORMAL"  style="font-family:arial;"&gt;&lt;span style="font-style: italic;color:black;" &gt;So what is a Type 2 Slowly Changing Dimension? &lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;In Type 2 Slowly Changing Dimensions, a new record is added to the table to represent the new information.  Therefore, &lt;span style="font-weight: bold;"&gt;both the original and the new record will be present&lt;/span&gt;.  The new record gets its own primary key.  &lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;For example, say we have the following table:  &lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt; &lt;table border="1"&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td width="120"&gt;&lt;span style="font-size:100%;"&gt;Customer Key&lt;/span&gt;&lt;/td&gt; &lt;td width="120"&gt;&lt;span style="font-size:100%;"&gt;Name&lt;/span&gt;&lt;/td&gt; &lt;td width="120"&gt;&lt;span style="font-size:100%;"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;span style="font-size:100%;"&gt;1001&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size:100%;"&gt;Christina&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size:100%;"&gt;Illinois&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;After Christina moved from Illinois to California, we add the new information as a new row into the table:    &lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt; &lt;table border="1"&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td width="120"&gt;&lt;span style="font-size:100%;"&gt;Customer Key&lt;/span&gt;&lt;/td&gt; &lt;td width="120"&gt;&lt;span style="font-size:100%;"&gt;Name&lt;/span&gt;&lt;/td&gt; &lt;td width="120"&gt;&lt;span style="font-size:100%;"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;span style="font-size:100%;"&gt;1001&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size:100%;"&gt;Christina&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size:100%;"&gt;Illinois&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;span style="font-size:100%;"&gt;1005&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size:100%;"&gt;Christina&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size:100%;"&gt;California&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Advantages&lt;/u&gt;:  &lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;- This allows us to accurately keep all historical information.  &lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Disadvantages&lt;/u&gt;:  &lt;/span&gt;&lt;/p&gt;&lt;ul  style="font-family:arial;"&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;This will cause the size of the table to grow fast.  In cases where the number of rows for the table is very high to start with, storage &lt;a id="KonaLink0" target="_top" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://www.1keydata.com/datawarehousing/scd-type-2.html#"&gt;&lt;span style="font-weight: 400; position: static; color: rgb(0, 14, 0);font-family:helvetica,verdana;font-size:13;"  &gt;&lt;span class="kLink" style="font-weight: 400; position: static; color: rgb(0, 14, 0);font-size:13;" &gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;and performance can become a concern.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;This necessarily complicates the ETL process.  &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Usage&lt;/u&gt;:  &lt;/span&gt;&lt;/p&gt;&lt;ul  style="font-family:arial;"&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;About 50% of the time.  &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;When to use Type 2&lt;/u&gt;:  &lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;Type 2 slowly changing dimension should be used when it is necessary for the data warehouse to track historical changes.&lt;/span&gt;  &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Set-based DELETE in Mapping Code Generation&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span&gt;Beginning in Warehouse Builder 10.2.0.3, you can design a mapping with the loading type set to &lt;/span&gt;DELETE&lt;span&gt; and code generation set to &lt;/span&gt;SET BASED&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;    &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Merge Optimization for Table Operators&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span&gt;Beginning in Warehouse Builder 10.2.0.3, you can enable the Merge Optimization property for table operators. When set to &lt;/span&gt;true&lt;span&gt;, this property optimizes the invocation or execution of expressions and transformations in the &lt;/span&gt;MERGE&lt;span&gt; statement.  There is QUITE a bit of information and tips and tricks out there on using the merge operator to the full extent.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;DML Error Logging to Handle Error Tables&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span&gt;Prior to release 10.2.0.3, OWB already generated error-handling code for &lt;i style="font-weight: bold;"&gt;row-based&lt;/i&gt; mode.&lt;br /&gt;Beginning in Warehouse Builder 10.2.0.3, DML error logging is available for &lt;i style="font-weight: bold;"&gt;set-based&lt;/i&gt; maps.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:arial;"&gt;Thats is all for now, soon we'll move on to more new features and how OWB11g is easier to install and maintain.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3035301659966138952?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3035301659966138952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/01/oracle-warehouse-builder-owb-11g-new_14.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3035301659966138952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3035301659966138952'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/01/oracle-warehouse-builder-owb-11g-new_14.html' title='Oracle Warehouse Builder OWB 11g New Features Part 4!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4309517845082723075</id><published>2008-01-04T11:30:00.002-06:00</published><updated>2010-01-06T11:49:21.975-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 11g New Features Part 3!</title><content type='html'>&lt;span style="font-family:arial;"&gt;This is a continuation from &lt;a href="http://cali97.blogspot.com/2007/12/oracle-warehouse-builder-owb-11g-new_28.html"&gt;part2&lt;/a&gt;. Here is part 3 of the new features and enhancements to Oracle Warehouse Builder - OWB 11g.  It is in these posts that you can make the educated decision whether or not to pursue OWB 11g, or stay with OWB 10gR2.  It is also here you can compare and contrast the differences between the 2 releases.  Once again, props to &lt;a href="http://www.oracle.com/"&gt;Oracle&lt;/a&gt; for providing some of the info!  &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;The new OWB 11g connectivity options....&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Now there is database support for database 11g to be both the source and target.&lt;/li&gt;&lt;ul style="font-style: italic;"&gt;&lt;li&gt;&lt;span&gt;Oracle Database 11g is supported as both an OWB source and an OWB target. Oracle Database 11g support is closely linked to the simplified install of OWB 11g as part of the Oracle Database 11g install.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Now there is also Gateway 11g support&lt;/li&gt;&lt;ul style="font-style: italic;"&gt;&lt;li&gt;&lt;span&gt;The ability of OWB to connect transparently to non-Oracle systems continues with OWB 11g support for Gateway 11g.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Also, the new optional Siebel Connector fo Siebel Analytics&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;OWB Connector to Siebel Analytics...&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_37Gh08TaV-M/R35wZDoj8sI/AAAAAAAAANE/XNgjQsASCLA/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_37Gh08TaV-M/R35wZDoj8sI/AAAAAAAAANE/XNgjQsASCLA/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5151678599532901058" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;The Warehouse Builder Connector to Siebel enables you to connect to—and extract data and metadata from—Siebel applications. The connection to the Siebel applications uses database users that have the appropriate privileges set by the DBA.  After you import metadata from Siebel applications, you can use Siebel objects in mappings, create process flows containing Siebel objects, and generate SQL code.&lt;/span&gt;    &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;You can use this connector with non-Oracle databases after you establish a connection to those databases.  The table above lists the functionality available in the Warehouse Builder Connector to Siebel.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;Next time in part 4 we will discuss more new features and enhancements!&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4309517845082723075?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4309517845082723075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/01/oracle-warehouse-builder-owb-11g-new.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4309517845082723075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4309517845082723075'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/01/oracle-warehouse-builder-owb-11g-new.html' title='Oracle Warehouse Builder OWB 11g New Features Part 3!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_37Gh08TaV-M/R35wZDoj8sI/AAAAAAAAANE/XNgjQsASCLA/s72-c/untitled.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3162377174579602665</id><published>2008-01-04T00:31:00.000-06:00</published><updated>2008-01-14T17:59:15.484-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Microsoft Internet Explorer SUCKS!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.mozilla.com/en-US/products/download.html?product=firefox-2.0.0.11&amp;amp;os=win&amp;amp;lang=en-US"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R33UWjoj8oI/AAAAAAAAAMk/CgHX8Hgf1jg/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5151507032769294978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I don't care what version you're using of IE.  I hate every version now.  I just wanted to let anyone reading my blog that you can view it the way it was meant to be seen with &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.mozilla.com/en-US/firefox/"&gt;Mozilla Firefox.&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;If you use IE, or maybe any other browser than FireFox (Opera, Safari....haven't tested them) you might not see my blog the way it was meant to be rendered.  Even my girlfriend religiously uses Firefox and it is NOT because I tell her to!  And she isn't a engineering or technical person!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.mozilla.com/en-US/products/download.html?product=firefox-2.0.0.11&amp;amp;os=win&amp;amp;lang=en-US"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R33UWjoj8oI/AAAAAAAAAMk/CgHX8Hgf1jg/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5151507032769294978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3162377174579602665?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3162377174579602665/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/01/microsoft-internet-explorer-sucks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3162377174579602665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3162377174579602665'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/01/microsoft-internet-explorer-sucks.html' title='Microsoft Internet Explorer SUCKS!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/R33UWjoj8oI/AAAAAAAAAMk/CgHX8Hgf1jg/s72-c/untitled.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5021522592697369024</id><published>2008-01-03T18:41:00.000-06:00</published><updated>2008-01-03T19:11:33.221-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>BI Publisher / XML Publisher CAN produce XML as an output format</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R32ETDoj8lI/AAAAAAAAAMI/XWFmSjOtIqk/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R32ETDoj8lI/AAAAAAAAAMI/XWFmSjOtIqk/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5151419011709530706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;In the above diagram, we see quite a few formats on the right that are available as output formats. PDF, RTF (mostly Microsoft Word), HTML, EDI (&lt;a href="http://en.wikipedia.org/wiki/Electronic_Data_Interchange"&gt;Electronic Data Interchange&lt;/a&gt;), EFT (&lt;a href="http://en.wikipedia.org/wiki/Electronic_funds_transfer"&gt;Electronic Funds Transfer&lt;/a&gt;), and Microsoft Excel.  I have implemented every output format thus far except XML.  I figured, why implement BI Publisher to output XML if I am already getting XML for BI Publisher to start working with in the first place?  Well sometimes you need to add a little or take a little away from the XML that BI Publisher is fed to start the whole XML output creation process.&lt;br /&gt;&lt;br /&gt;You CAN have BI Publisher create XML as an output however not using a template that you may have used before, such as an RTF or PDF template.  To transform incoming XML to another form of an output XML, you need to create an &lt;a href="http://www.w3.org/Style/XSL/"&gt;XSL stylesheet&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;From that point, you can upload it to the Apps XML Publisher Template Manager (as I have discussed in some other BI Publisher posts here) and it has to be registered as an XML-XSL template, not an RTF or other format.  The concurrent manager will then be able to process this like any other BI Publisher template and give you the transformed format.&lt;br /&gt;&lt;br /&gt;If you were wondering, we decided to go with BI Publisher and outputting the XML with BIP instead of Oracle Reports because our client is adopting BIP not only inside Apps, but as the standalone Business Intelligence reporting tool of choice, and they need bar codes and other nice things to be able to print out on Zebra Printers over their network.  Zebra printers have a proprietary format and XML is something that will work for them. &lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5021522592697369024?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5021522592697369024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2008/01/bi-publisher-xml-publisher-can-produce.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5021522592697369024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5021522592697369024'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2008/01/bi-publisher-xml-publisher-can-produce.html' title='BI Publisher / XML Publisher CAN produce XML as an output format'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/R32ETDoj8lI/AAAAAAAAAMI/XWFmSjOtIqk/s72-c/untitled.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-9020587685968953170</id><published>2007-12-28T12:01:00.002-06:00</published><updated>2010-01-06T11:49:08.427-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 11g New Features Part 2!</title><content type='html'>&lt;span style="font-family:arial;"&gt;This is a continuation from Part 1: &lt;a href="http://cali97.blogspot.com/2007/12/oracle-warehouse-builder-owb-11g-new_23.html"&gt;Part 1&lt;/a&gt;.  Again, due credit to Oracle for providing some of this information to us on OWB 11g!&lt;br /&gt;&lt;br /&gt;Let's recap on the unified repository addition. &lt;/span&gt;&lt;span style="font-family:arial;"&gt;The single repository owner for OWB 11&lt;i&gt;g&lt;/i&gt; is named &lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;OWBSYS&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, which owns the actual repository. This user does not functionally own objects but owns them physically from a schema perspective. The single unified repository enables maintaining a &lt;i&gt;single&lt;/i&gt; copy of OWB database objects in  &lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;OWBSYS&lt;/span&gt;&lt;span&gt;&lt;span style="font-family:arial;"&gt; (tables, views, PL/SQL packages, and so on).&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_37Gh08TaV-M/R27F7joj8XI/AAAAAAAAAKM/fgGePGo5yRU/s1600-h/3.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_37Gh08TaV-M/R27F7joj8XI/AAAAAAAAAKM/fgGePGo5yRU/s400/3.JPG" alt="" id="BLOGGER_PHOTO_ID_5147269051099378034" border="0" /&gt;&lt;/a&gt;&lt;b style="font-family: arial;"&gt;&lt;span&gt;Benefit of Pre-seeded &lt;/span&gt;&lt;/b&gt;&lt;b style="font-family: arial;"&gt;OWBSYS&lt;/b&gt;&lt;b style="font-family: arial;"&gt;&lt;span&gt; Unified Repository Schema?&lt;/span&gt;&lt;/b&gt;  &lt;p face="arial" class="NORMAL"&gt; &lt;span&gt;Previously, each Oracle database that was utilized as an OWB repository required a user with SYSDBA privileges. Beginning with OWB 11&lt;i&gt;g&lt;/i&gt;, SYSDBA privileges are no longer required. An &lt;/span&gt;OWBSYS&lt;span&gt; schema is created during installation of Oracle Database 11&lt;i&gt;g&lt;/i&gt;, release 1. &lt;/span&gt;OWBSYS&lt;span&gt; holds the metadata, which is divided into workspaces. To start using Warehouse Builder, you merely need to create a new workspace. You do not need SYSDBA privileges.  HOORAY!!&lt;/span&gt;&lt;/p&gt;&lt;p face="arial" class="NORMAL"&gt;&lt;b&gt;&lt;span&gt;Accessing Workspaces Instead of Repositories&lt;/span&gt;&lt;/b&gt;  &lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Previously, users accessed the repository as a whole. Therefore, users were referenced as repository users and repository owners. Beginning with OWB 11&lt;i&gt;g&lt;/i&gt;, the term &lt;i&gt;repository&lt;/i&gt; is replaced with &lt;i&gt;workspace&lt;/i&gt; (from the user connection perspective). Thus, instead of granting access to a repository, you grant access to a workspace. Because of the use of workspaces in a single schema, creating workspaces is simplified.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;When defining the repository, an administrator creates one or more workspaces, with each workspace corresponding to a set of users working on related projects. A common practice is to create separate workspaces for development, testing, and production. Using this practice, you can allow users (such as your developers) to access the development and testing workspaces but restrict them from the production workspace.&lt;/span&gt;&lt;/p&gt;    &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;b&gt;&lt;span&gt;Default OWB Install Uses Database Oracle Home&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Default install of the OWB set goes into the database Oracle home. However, you can still install OWB into its own Oracle home.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;When you install the OWB 11&lt;i&gt;g&lt;/i&gt; server to the Oracle database home as a database option during installation of Database 11&lt;i&gt;g&lt;/i&gt;, the &lt;/span&gt;OWBSYS&lt;span&gt; schema is automatically created.&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-family:arial;"&gt;When you install OWB 11&lt;i&gt;g&lt;/i&gt; to its own Oracle home other than the Database 11&lt;i&gt;g&lt;/i&gt; home, or to an environment using Database 10&lt;i&gt;g&lt;/i&gt;, release 2, an OWB script is provided for you to manually create the &lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;OWBSYS&lt;/span&gt;&lt;span style="font-family:arial;"&gt; schema.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;There is now a SINGLE Control Center Service!&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_37Gh08TaV-M/R3U92Doj8ZI/AAAAAAAAAKc/S28QeHBo1qU/s1600-h/untitled2.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_37Gh08TaV-M/R3U92Doj8ZI/AAAAAAAAAKc/S28QeHBo1qU/s400/untitled2.JPG" alt="" id="BLOGGER_PHOTO_ID_5149089747865694610" border="0" /&gt;&lt;/a&gt; &lt;span style="font-family:arial;"&gt;Instead of a Control Center Service per repository (as required in OWB 10&lt;i&gt;g&lt;/i&gt;), OWB 11&lt;i&gt;g&lt;/i&gt; requires only a single Control Center Service for the database instance, serving the &lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;OWBSYS&lt;/span&gt;&lt;span style="font-family:arial;"&gt; schema.&lt;/span&gt;&lt;span style="font-family:arial;"&gt;The single Control Center Service has the following characteristics:&lt;/span&gt; &lt;ul style="font-family: arial;"&gt;&lt;li&gt;Services requests from multiple workspaces.&lt;/li&gt;&lt;li&gt;Executes as the OWBSYS user.&lt;/li&gt;&lt;li&gt;Maintains Control Center log data, including the workspace label.&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_37Gh08TaV-M/R3U-jDoj8aI/AAAAAAAAAKk/XKGI6Zjyxfg/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_37Gh08TaV-M/R3U-jDoj8aI/AAAAAAAAAKk/XKGI6Zjyxfg/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5149090520959807906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;A workspace owner is an OWB administrator who manages a particular workspace and registers users of that workspace. In the diagram above, workspace owner 1 owns workspace 1 and workspace owner 2 owns workspace 2. &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;If a workspace is created with a new database user as its owner, the workspace must be created in the OWB Repository Assistant using database DBA credentials.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;A workspace is equivalent to an OWB 10.2 repository. There can be multiple workspaces in a  repository. &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;There are minor security changes to support workspace user management. Beginning with Oracle Warehouse Builder 11&lt;i&gt;g&lt;/i&gt;, release 1, the preferred method of implementing metadata security is through the user interface available in the Design Center (as described in the &lt;i&gt;Oracle Warehouse Builder User’s Guide&lt;/i&gt;). If, in a previous release, you implemented security by using a PL/SQL package, Oracle Warehouse Builder 11&lt;i&gt;g&lt;/i&gt;, release 1, supports that implementation.&lt;/span&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_37Gh08TaV-M/R3U_PToj8bI/AAAAAAAAAKs/pcKyUpG6tNw/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_37Gh08TaV-M/R3U_PToj8bI/AAAAAAAAAKs/pcKyUpG6tNw/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5149091281169019314" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt; &lt;span&gt;Workspace users connect to a workspace after the workspace owner grants them access. These users work essentially in the same way as repository users work in OWB 10&lt;i&gt;g&lt;/i&gt;. However, workspace users operate at what is now called the &lt;i&gt;workspace &lt;/i&gt;level (rather than the &lt;i&gt;repository &lt;/i&gt;level).&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;" class="NORMAL"&gt;&lt;span&gt;&lt;span style="font-weight: bold;"&gt;Next time we will discuss new connectivity options and the OWB connector to Siebel.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;     &lt;!-- cr piece: Skeleton-8 --&gt;&lt;!-- #EndEditable --&gt; &lt;!-- end cr piece: Skeleton-8 --&gt;               &lt;!-- #BeginEditable "links1" --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-9020587685968953170?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/9020587685968953170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/oracle-warehouse-builder-owb-11g-new_28.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/9020587685968953170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/9020587685968953170'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/oracle-warehouse-builder-owb-11g-new_28.html' title='Oracle Warehouse Builder OWB 11g New Features Part 2!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_37Gh08TaV-M/R27F7joj8XI/AAAAAAAAAKM/fgGePGo5yRU/s72-c/3.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5328041174147244925</id><published>2007-12-23T13:59:00.004-06:00</published><updated>2010-01-06T11:53:22.641-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB 11g New Features!</title><content type='html'>&lt;span style="font-family:arial;"&gt;OWB 11g has a myriad of new features that make this tool more and more accessible to new ETL technicians.  The differences in installation and repository structure in the 10gR2 release were significant enough to make the 'understanding' of the architecture easier.  Well now OWB 11g has taken this to another level.  Not only that but the new features or enhanced architectural features make this product very attractive.  Over the next few weeks I will be blogging a bit about the new features and enhancements. (due credit to Oracle Corp for providing some of this information and diagrams).&lt;br /&gt;This is part1.  My blog also has a part 2,3,4,5 as well as 6.&lt;a href="http://cali97.blogspot.com/2008/02/oracle-warehouse-builder-owb-11g-new.html"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The first thing to mention is what Oracle felt were the goals for OWB11g.  Why have a new release?&lt;/span&gt;&lt;br /&gt;A few reasons:&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;Better integration with the Database&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;Easier installation because OWB is a database option.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;The SYSDBA requirement removed in a repository installation &lt;span style="font-weight: bold; font-style: italic;"&gt;(very nice IMO)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt; Reduced need for DBA credentials&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;Database 11g as a source AND target.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Packaging remains the same basically as 10gR2 (core features and options).&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;Siebel ERP/CRM connector is new though!&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_37Gh08TaV-M/R27DjDoj8VI/AAAAAAAAAJ8/myoMDOTnkjY/s1600-h/1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_37Gh08TaV-M/R27DjDoj8VI/AAAAAAAAAJ8/myoMDOTnkjY/s400/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5147266431169327442" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Repository Structure has changed from 10gR2 to 11g:&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span style="font-family:arial;"&gt;The illustration below represents the OWB architecture prior to OWB 11&lt;/span&gt;&lt;i style="font-family: arial;"&gt;g&lt;/i&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_37Gh08TaV-M/R27FKDoj8WI/AAAAAAAAAKE/jtKacUodUTc/s1600-h/2.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_37Gh08TaV-M/R27FKDoj8WI/AAAAAAAAAKE/jtKacUodUTc/s400/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5147268200695853410" border="0" /&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:arial;"&gt;OWB 10&lt;i&gt;g&lt;/i&gt; requires one OWB schema per OWB repository. Multiple OWB repositories on an Oracle Database instance require maintaining multiple OWB schemas for multiple OWB repositories on that instance.&lt;/span&gt;&lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;Furthermore, OWB 10&lt;i&gt;g&lt;/i&gt; requires one Control Center Service per OWB repository (This means multiple control Center Services).&lt;/span&gt;&lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;OWB 10&lt;i&gt;g&lt;/i&gt; Does &lt;i style="font-weight: bold;"&gt;Not&lt;/i&gt; Install to the Database Oracle Home&lt;/li&gt;&lt;li style="font-family: arial;"&gt;&lt;span&gt;OWB 10&lt;i&gt;g&lt;/i&gt; and earlier releases cannot install to the Database Oracle home; these versions of OWB require their &lt;span style="font-weight: bold;"&gt;own Oracle home&lt;/span&gt;. Because OWB 11&lt;i&gt;g&lt;/i&gt; is integrated as an option in the Oracle database, the &lt;span style="font-weight: bold;"&gt;default OWB 11&lt;/span&gt;&lt;i style="font-weight: bold;"&gt;g&lt;/i&gt;&lt;span style="font-weight: bold;"&gt; installation is to the database Oracle home&lt;/span&gt;.  OWB 11g architecture resembles the following:&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_37Gh08TaV-M/R27F7joj8XI/AAAAAAAAAKM/fgGePGo5yRU/s1600-h/3.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_37Gh08TaV-M/R27F7joj8XI/AAAAAAAAAKM/fgGePGo5yRU/s400/3.JPG" alt="" id="BLOGGER_PHOTO_ID_5147269051099378034" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="font-family: arial;"&gt;&lt;span&gt;A major feature of the new OWB 11&lt;i&gt;g&lt;/i&gt; architecture is the single unified repository (above) for each database instance, with a single Control Center Service.&lt;/span&gt;&lt;/li&gt;&lt;li style="font-family: arial;"&gt;&lt;span&gt;The single repository owner for OWB 11&lt;i&gt;g&lt;/i&gt; is named &lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;OWBSYS&lt;/span&gt;&lt;span&gt;, which owns the actual repository. This user does not functionally own objects but owns them physically from a schema perspective. The single unified repository enables maintaining a &lt;i style="font-weight: bold;"&gt;single&lt;/i&gt; copy of OWB database objects in &lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;OWBSYS&lt;/span&gt;&lt;span&gt; (tables, views, PL/SQL packages, and so on...&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Next time I'll explore more about repositories, workspaces, and the OWBSYS user,  and Control Center Services.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5328041174147244925?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5328041174147244925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/oracle-warehouse-builder-owb-11g-new_23.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5328041174147244925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5328041174147244925'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/oracle-warehouse-builder-owb-11g-new_23.html' title='Oracle Warehouse Builder OWB 11g New Features!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_37Gh08TaV-M/R27DjDoj8VI/AAAAAAAAAJ8/myoMDOTnkjY/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-3833378501503370057</id><published>2007-12-23T00:42:00.000-06:00</published><updated>2007-12-23T13:58:48.498-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OBIEE'/><title type='text'>Nifty little OBIEE Blog for beginners - OBIEE 101</title><content type='html'>&lt;span style="font-family: arial;"&gt;I saw this blog today that I felt was worth sharing for beginners.  Looks like real-world experience and good shots of various issues.  not bad! &lt;/span&gt;&lt;a style="font-family: arial;" href="http://obiee101.blogspot.com/"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-3833378501503370057?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/3833378501503370057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/nifty-little-obiee-blog-for-beginners.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3833378501503370057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/3833378501503370057'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/nifty-little-obiee-blog-for-beginners.html' title='Nifty little OBIEE Blog for beginners - OBIEE 101'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-7996839697943823736</id><published>2007-12-23T00:23:00.000-06:00</published><updated>2007-12-23T13:58:39.738-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><category scheme='http://www.blogger.com/atom/ns#' term='APEX'/><title type='text'>APEX and BI Publisher Integration</title><content type='html'>&lt;span style="font-family:arial;"&gt;We're working on a big client project that has quite a few technologies, including APEX and BI Publisher.  We don't have them working together actually, but I have done some APEX work and lots of BIP, so I wanted to direct you to Dimitri Gielis's blog and this post specifically: &lt;/span&gt;&lt;a style="font-family: arial;" href="http://dgielis.blogspot.com/2007/12/call-bi-publisher-report-from-apex.html"&gt;integration&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-7996839697943823736?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/7996839697943823736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/apex-and-bi-publisher-integration.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7996839697943823736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/7996839697943823736'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/apex-and-bi-publisher-integration.html' title='APEX and BI Publisher Integration'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5386446859711486854</id><published>2007-12-17T19:27:00.001-06:00</published><updated>2008-01-04T00:29:33.322-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OBIEE'/><title type='text'>Oracle OBIEE and pre-built Analytics (Siebel) Architecture</title><content type='html'>&lt;span style="font-family:arial;"&gt;This posting won't focus on the build it vs buy it thought process (which is valid considering these nice pre-built analytics solutions really cost a bundle!).  Instead I wanted to first discuss OBIEE and Oracle E-Business suite or Oracle Apps integration.  Now, there should be no mystery that a huge amount of operational data is flowing through your Oracle apps database.  It should also be no mystery that you'd probably like to get as much value out of that data and see what it contains...forecasting, trending, historical data...you name it.  That's where BI and OBIEE really come in.&lt;br /&gt;&lt;br /&gt;Now with OBIEE, you can have a world class operational system with APPS and a world class BI and data warehousing solution using OBIEE.  The big sticky here is what do we do?  Custom develop the whole underlying architecture to get OBIEE up and running? We're definitely not going to report off of the apps database with our analytic reports!  We need a solid data warehousing environment, data marts, and strong ETL to get the right data out of apps, and into our Data Warehouse.  THEN we can consider OBIEE and its reporting capabilities.&lt;br /&gt;&lt;br /&gt;You might however consider using the pre-built analytics that can be purchased.  These can roll-up lots of reports, pre-built ETL, and many DW structures that are already there for your deployment.  The typical client will be able to immediately use 60-80% of this pre-built package right out of the box.  So what does this all look like from a bird's eye view?  Well let us JUST look at the concept of the pre-built analytics below:&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R2ckyzoj8FI/AAAAAAAAAH8/Cp3CchEbZUg/s1600-h/1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R2ckyzoj8FI/AAAAAAAAAH8/Cp3CchEbZUg/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5145121554566475858" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;High-level analytical queries, like those commonly used in Oracle BI, scan and&lt;br /&gt;analyze large volumes of data using complex formulas. This process can take a long time when&lt;br /&gt;querying a transactional database, which impacts overall system performance.&lt;br /&gt;For this reason, the Oracle Business Analytics Warehouse was constructed using dimensional&lt;br /&gt;modeling techniques to allow for fast access to information required for decision making. The Oracle Business Analytics Warehouse derives its data from operational applications, and uses Informatica’s data integration technology to extract, transform, and load data from the transactional database into the Oracle Business Analytics Warehouse.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R2cmNjoj8GI/AAAAAAAAAIE/wyylSvmH4PA/s1600-h/2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R2cmNjoj8GI/AAAAAAAAAIE/wyylSvmH4PA/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5145123113639604322" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;The Oracle Business Analytics Warehouse architecture comprises the following components:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;DAC client&lt;/span&gt;. A command and control interface for the data warehouse to allow for set up,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;configuration, administration, and monitoring of data warehouse processes.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;DAC server&lt;/span&gt;. Executes the instructions from the DAC client. The DAC server manages data&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;warehouse processes, including scheduling, loading of the ETL, and configuring the subject areas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;to be loaded. It dynamically adjusts its actions based on information in the DAC repository.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Depending on your business needs, you might incrementally refresh the Oracle Business&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Analytics Warehouse once a day, once a week, once a month, or on another similar schedule.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;DAC repository&lt;/span&gt;. Stores the metadata (semantics of the Oracle Business Analytics Warehouse)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;that represents the data warehouse processes.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Informatica Server&lt;/span&gt;. When the server is loading or refreshing the Oracle Business Analytics&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Warehouse, it is recommended that the server be dedicated to that activity. However, when the&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ETL server is not loading or refreshing the Oracle Business Analytics Warehouse, you can use it&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;for other purposes.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Informatica Repository Server&lt;/span&gt;. Manages the Informatica repository.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Informatica Repository.&lt;/span&gt; Stores the metadata related to Informatica workflows.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Informatica client utilities&lt;/span&gt;. Tools that allow you to create and manage the Informatica&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;repository.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5386446859711486854?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5386446859711486854/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/oracle-obiee-and-pre-built-analytics_17.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5386446859711486854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5386446859711486854'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/oracle-obiee-and-pre-built-analytics_17.html' title='Oracle OBIEE and pre-built Analytics (Siebel) Architecture'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/R2ckyzoj8FI/AAAAAAAAAH8/Cp3CchEbZUg/s72-c/1.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6682874802132106959</id><published>2007-12-16T11:16:00.001-06:00</published><updated>2007-12-16T12:12:34.414-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OBIEE'/><title type='text'>OBIEE post install OC4J and Windows Services</title><content type='html'>&lt;span style=";font-family:arial;font-size:100%;"  &gt;I wanted to download the Oracle Business Intelligence Enterprise Edition PLUS 10.1.3.3 recently.  I didn't want to upgrade from my previous version since I had done so much work on it, it had become a war-zone after all the experimenting I had done.&lt;br /&gt;&lt;br /&gt;Part of my post install was to get rid of the annoying automatic OC4J startup on Windows.  The other part was to create simple .BAT files to startup and shutdown the multiple services that OBIEE uses.&lt;br /&gt;If you've done the install as a simple non-Application Server install that uses the standalone OC4J container, read on:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;After you have installed BI EE, you are asked to reboot your computer (this is for a Windows install). After you reboot and login, you will notice a DOS window which shows OC4J starting. Even if you set all the BI Services to "Manual", this particular command is still fired at startup.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/R2Vijjoj8DI/AAAAAAAAAHo/FkcF6YXQb3o/s1600-h/cmd.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R2Vijjoj8DI/AAAAAAAAAHo/FkcF6YXQb3o/s400/cmd.jpg" alt="" id="BLOGGER_PHOTO_ID_5144626512340971570" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;This is because the command to start OC4J is set in the Windows Registry.&lt;br /&gt;If you go to the Windows registry (type "regedit" in your "Start --&gt; Run" &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;textbox&lt;/span&gt;) navigate to "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;HKEY&lt;/span&gt;_L&lt;i&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;OCAL&lt;/span&gt;_MACHINE\SOFTWARE\Microsoft\Windows\&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;CurrentVersion&lt;/span&gt;\Run&lt;/i&gt;" you will notice that an entry named  '&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;oc&lt;/span&gt;4j' is created during the installation, which starts up the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;OC&lt;/span&gt;4J window you'll see every time you &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;startup&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;So I found that entry in the registry, I selected it, and I deleted it.  We STILL have the ability to start and stop the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;OC&lt;/span&gt;4J process through our &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;OBIEE&lt;/span&gt; start menu link:&lt;br /&gt;&lt;!--[if !supportLineBreakNewLine]--&gt;  &lt;!--[endif]--&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/R2Vkpjoj8EI/AAAAAAAAAHw/3z19ZHtjpmo/s1600-h/start.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R2Vkpjoj8EI/AAAAAAAAAHw/3z19ZHtjpmo/s400/start.jpg" alt="" id="BLOGGER_PHOTO_ID_5144628814443442242" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;What one can do is to create a batch file for Windows that will actually start and stop this &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;OC&lt;/span&gt;4J process that we deleted out of the registry, AND while we are at it, we can also add the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;startup&lt;/span&gt; and shutdown actions for the other &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;OBIEE&lt;/span&gt; processes too.  This way, we have a master start and stop for all necessary services through one initiation.&lt;br /&gt;&lt;br /&gt;To do this, open a Windows program like 'notepad' and enter the following for the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;startup&lt;/span&gt;.bat file:&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;This is how my "Start_BI" file looks like:&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;span style="font-family:Arial;"&gt;net start "Oracle BI Server"&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;net start "Oracle BI Presentation Server"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;net start "Oracle BI Java Host"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;C:\&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;OracleBI&lt;/span&gt;\&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;oc&lt;/span&gt;4j_bi\bin\&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;oc&lt;/span&gt;4j.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;cmd&lt;/span&gt; -start&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;I then saves this file from notepad as Start_Oracle_BI.bat and chose the option for 'Save As Type' as 'All Files'.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Now the &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;shutdown.bat file:&lt;/span&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;font-size:100%;"  &gt;&lt;span style="font-size:10;"&gt;net stop "Oracle BI Server"&lt;/span&gt;&lt;span style="font-size:10;"&gt;&lt;br /&gt;net stop "Oracle BI Presentation Server"&lt;br /&gt;net stop "Oracle BI Java Host"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:100%;"  &gt;"C:\Program Files\Java\jdk1.5.0_08\bin\java.exe" -jar C:\&lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;OracleBI&lt;/span&gt;&lt;/span&gt;\&lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;oc&lt;/span&gt;&lt;/span&gt;4j_bi\j2&lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;ee&lt;/span&gt;&lt;/span&gt;\home\admin.jar ormi://localhost:23791 &lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;oc&lt;/span&gt;&lt;/span&gt;4&lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;jadmin&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;oc&lt;/span&gt;&lt;/span&gt;4&lt;span class="blsp-spelling-error"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;jadmin&lt;/span&gt;&lt;/span&gt; -shutdown force&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;One thing to note is that in the above .bat file scripts is that some of these locations are hardcoded.&lt;br /&gt;Make SURE you have the necessary files in the right place, OR change the locations in the script to point to the right path.  ALSO note in the shutdown script that the word oc4jadmin appears 2 times.  This is because we assume that oc4jadmin is both the login and password.  If you registered a different password, you'll need to change that in the shutdown .bat file as well.  If you don't Oracle will not authenticate and allow you to shut down the oc4j process!&lt;br /&gt;&lt;br /&gt;Now all I need to do is to click on my .bat files to execute them, which starts and stops all the important services!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6682874802132106959?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6682874802132106959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/obiee-post-install-oc4j-and-windows_16.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6682874802132106959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6682874802132106959'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/obiee-post-install-oc4j-and-windows_16.html' title='OBIEE post install OC4J and Windows Services'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/R2Vijjoj8DI/AAAAAAAAAHo/FkcF6YXQb3o/s72-c/cmd.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6082912521917782155</id><published>2007-12-06T14:16:00.001-06:00</published><updated>2007-12-16T12:13:43.272-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>MIX at Oracle</title><content type='html'>You can now find me and some colleagues at MIX, Oracle's idea site to put people in touch with one another.  Just search for me by name.  Mix is here: &lt;a href="https://mix.oracle.com/"&gt;link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6082912521917782155?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6082912521917782155/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/12/mix-at-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6082912521917782155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6082912521917782155'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/12/mix-at-oracle.html' title='MIX at Oracle'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-8610377072825553770</id><published>2007-11-28T12:06:00.000-06:00</published><updated>2007-11-28T12:14:39.374-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>BI Publisher / XML Publisher &amp; Oracle Applications 11i Template and Font Manager</title><content type='html'>&lt;span style="font-family: arial;"&gt;Just to let everyone know, this is a more in-depth posting that is related to the end half of this post: &lt;a href="http://cali97.blogspot.com/2007/10/bi-publisher-barcoding-in-oracle.html"&gt;more on fonts and templates&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-8610377072825553770?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/8610377072825553770/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/bi-publisher-xml-publisher-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/8610377072825553770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/8610377072825553770'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/bi-publisher-xml-publisher-oracle.html' title='BI Publisher / XML Publisher &amp; Oracle Applications 11i Template and Font Manager'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6498169523588540611</id><published>2007-11-21T00:17:00.000-06:00</published><updated>2007-12-20T14:43:17.218-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>BI Publisher and Microsoft Word...check boxes, headers, and footers Oh My!</title><content type='html'>&lt;span style="font-family:arial;"&gt;One should not underestimate the fact that if you are going to be doing &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;RTF&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;templating&lt;/span&gt;&lt;/span&gt; with BI Publisher Desktop, you better be more than a little familiar with Microsoft Word.  Of course we know you can use other tools for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;templating&lt;/span&gt;&lt;/span&gt; as well like &lt;a href="http://www.adobe.com/"&gt;Adobe &lt;/a&gt;Acrobat.  The focus of this post is to study an area that has plagued me a bit- Header and Footers.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;There is a lot you can do in header and footers, and even more that you CANNOT do.  So, unless you're going to be making VERY simple headers, or you'd like your headers created dynamically, or other fancy bits...I'd suggest becoming &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;familiar&lt;/span&gt; with the     following &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;XSL&lt;/span&gt;&lt;/span&gt; tags:&lt;br /&gt;                                                                        &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R0PVwh0AdDI/AAAAAAAAAHY/fyGgqI35aSA/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R0PVwh0AdDI/AAAAAAAAAHY/fyGgqI35aSA/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5135183029819438130" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;These nice tags make your life SO much easier when you're trying to do fancy things in your headers that Word just doesn't seem to like.  If you have already tried to use BI Publisher's ever-so-nice &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_4"&gt;tool set&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;that&lt;/span&gt; lets you directly insert form fields, stop right there.  You can't use it in a header, at least not yet!  You have to code the actual &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;XSL&lt;/span&gt;&lt;/span&gt; element into the header, that look like the tags above  instead of simply doing a drag and drop from the XML &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_6"&gt;palette&lt;/span&gt;&lt;/span&gt;.                                                                      &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/R0PSZx0AdCI/AAAAAAAAAHQ/_VQ3nqt866k/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/R0PSZx0AdCI/AAAAAAAAAHQ/_VQ3nqt866k/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5135179340442530850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Where the 'body' tags come in very handy is when you're trying to incorporate special &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_9"&gt;characters&lt;/span&gt; and &lt;span style="font-weight: bold;font-size:130%;" class="blsp-spelling-corrected" id="SPELLING_ERROR_10" &gt;check boxes&lt;/span&gt; and &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_11"&gt;things&lt;/span&gt; of that nature- or advanced logic.  Ever need BI Publisher check boxes embedded into your template and in the header?  Not fun! Here's how I got this to work, and what I tried that did NOT WORK.  If anyone has tips or extra hints on this, comment or drop me a line.&lt;br /&gt;&lt;br /&gt;As you can see, above I have a Quotation and Acknowledgement checkbox structure.  You can use simple if/else logic in your header since you're likely using the 'start:body' and 'end body' tags I mentioned.  These tags, again, allow you to define a header and footer using xsl and allow you more flexibilty in terms of what is allowed in a header and footer.&lt;br /&gt;&lt;br /&gt;Now, the actual check boxes themselves are WingDings font.  I inserted them into my template using the MS Word options: INSERT--&gt;SYMBOL--&gt; and then chose either the checked box or the empty box.  Since this IS a font, and not one that is native to Oracle Applications (since it is a TTF or true type font), you will need to map to the font locally using your xdo.cfg file (to run it locally), or if you need it to appear in a BI Publisher Report out of Oracle Apps, you need to register to the font in Oracle Apps' Font Manager.&lt;br /&gt;&lt;br /&gt;To see how to map fonts either locally or in Apps, please see my other post on fonts (yes, a barcode IS a font): &lt;a href="http://cali97.blogspot.com/2007/10/bi-publisher-barcoding-in-oracle.html"&gt;fonts post.&lt;/a&gt;  That post will lead you through the process, and you will understand where the screen shot below came from. One final thing to note that is not included in that post is a special little area JUST for checkboxes.  If you need to register the WingDings font for a checkbox to Apps, in the font/template manager there is an area for checkbox characters seen below.  I entered the following corresponding with the WingDings character codes entered through Word:&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rTjjoj8RI/AAAAAAAAAJc/cbtCTODOsKs/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rTjjoj8RI/AAAAAAAAAJc/cbtCTODOsKs/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146158132038463762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6498169523588540611?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6498169523588540611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/bi-publisher-and-microsoft-wordcheck.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6498169523588540611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6498169523588540611'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/bi-publisher-and-microsoft-wordcheck.html' title='BI Publisher and Microsoft Word...check boxes, headers, and footers Oh My!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/R0PVwh0AdDI/AAAAAAAAAHY/fyGgqI35aSA/s72-c/untitled.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-2189900980684848414</id><published>2007-11-19T16:03:00.000-06:00</published><updated>2007-11-21T00:40:22.274-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Android!</title><content type='html'>A Video on Android, the next generation of software stacks that will be embedded in devices like phones.  No this doesn't mean google is making a new phone!&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/_avwGFsv60U&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/_avwGFsv60U&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-2189900980684848414?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/2189900980684848414/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2189900980684848414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2189900980684848414'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/android.html' title='Android!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6171485030698642990</id><published>2007-11-19T13:24:00.000-06:00</published><updated>2007-11-19T15:31:45.366-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Jack of all Trades or Specialist?</title><content type='html'>&lt;span style="font-family:arial;"&gt;I was in a recent discussion with some friends of mine that went on to work at a handful of different places, Intel, Oracle, Microsoft, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;NVidia&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;AMD&lt;/span&gt;, Google, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Pixar&lt;/span&gt; to name a few.&lt;br /&gt;&lt;br /&gt;I've been thinking about this early in my career and even now.  I really think what I have heard from 1 of my former &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;VPs&lt;/span&gt;, as well as what Google puts out as its 'defined philosophy' rings very true.  They state:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;b&gt;It's best to do one thing really, really well.&lt;/b&gt;&lt;/span&gt; &lt;p class="i"&gt;&lt;span style=""&gt;Google does search. With one of the world's largest  research groups focused exclusively on solving search problems, we know what we  do well, and how we could do it better. Through continued iteration on difficult  problems, we've been able to solve complex issues and provide continuous  improvements to a service already considered the best on the web at making  finding information a fast and seamless experience for millions of users. Our  dedication to improving search has also allowed us to apply what we've learned  to new products, including Gmail, Google Desktop, and Google Maps. As we  continue to build new products* while making search better, our hope is to bring  the power of search to previously unexplored areas, and to help users access and  use even more of the ever-expanding information in their lives.&lt;/span&gt;&lt;/p&gt;&lt;p class="i"&gt;&lt;span style="font-family:arial;"&gt;So in the end when I think of the strongest technical and techno-business people I know, sincerely, they are well rounded and know 'enough' about a lot of things, but they are &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;KILLER &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;at one or 2 particular skills, with almost no exceptions.  When you follow &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;your&lt;/span&gt; path, so to speak, it tends to rub against so many other areas that naturally fall onto your plate for you to digest.  I've met too many people that get 'good' at a 'lot' of things.  These people are smart and fast learners, but will always be below so-called &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;subject&lt;/span&gt; area experts.  I also firmly believe that the people that build the tools, and don't just employ them to build other things and use them are the ones that are the real experts.  While there are thousands of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;DBAs&lt;/span&gt;, and even many top &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;DBAs&lt;/span&gt;, and many great developers and managers....there simply are nowhere near as many experts that BUILD these tools at the actual software companies.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6171485030698642990?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6171485030698642990/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/jack-of-all-trades-or-specialist.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6171485030698642990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6171485030698642990'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/jack-of-all-trades-or-specialist.html' title='Jack of all Trades or Specialist?'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5123364948821099577</id><published>2007-11-18T16:39:00.002-06:00</published><updated>2009-01-22T12:44:15.517-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Oracle Partner Network Partner of the Year Titan Award.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R0DA5B0Ac8I/AAAAAAAAAGQ/h71GcjUg3Bk/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R0DA5B0Ac8I/AAAAAAAAAGQ/h71GcjUg3Bk/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5134315661174010818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;We were the recipient of the 2007 Oracle Partner Network Partner of the Year Titan Award.  This was awarded to our company on behalf of Oracle and Piocon's technical innovation at one of our clients.  This award was offered in the Healthcare Solutions area.  This is a very prestigious award, that is only given to 10-12 partners worldwide.  The Oracle Partner Network is comprised of thousands of partner firms.  It is good to see us moving in the right direction.  I was used to seeing awards like this at my previous employer, where I was able to work and contribute on a project that eventually won ANOTHER Oracle Partner of the Year award for our client at that time.  This is a great team award, as these are rarely given for small 2-3 man projects.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5123364948821099577?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5123364948821099577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-partner-network-partner-of-year_18.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5123364948821099577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5123364948821099577'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-partner-network-partner-of-year_18.html' title='Oracle Partner Network Partner of the Year Titan Award.'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/R0DA5B0Ac8I/AAAAAAAAAGQ/h71GcjUg3Bk/s72-c/untitled.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-8989851145084692395</id><published>2007-11-18T16:18:00.001-06:00</published><updated>2011-09-08T15:20:53.560-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>Oracle Warehouse Builder OWB R2 Process Flows</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R0C82B0Ac4I/AAAAAAAAAFo/8ERUbU0cflE/s1600-h/pflow_intro.gif"&gt;&lt;img style="cursor: pointer; width: 489px; height: 142px;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R0C82B0Ac4I/AAAAAAAAAFo/8ERUbU0cflE/s400/pflow_intro.gif" alt="" id="BLOGGER_PHOTO_ID_5134311211587892098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;I recently was contacted by one of my former clients that had a pretty good question.  I actually had this questions asked a few times by various parties, so here is a summery and an answer!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:navy;"   &gt;&lt;span style="color:navy;"&gt;&lt;span style="font-style: italic;"&gt;Quick OWB question for  you: Is it possible to execute process flows from outside of OWB once they have  been created. Wondering if there is a template provided by oracle(like  “Sql_exec_template for OWB mappings) to execute Process flows…"&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;span style=""&gt;Well, OWB does contain a pl/sql  package called WB_RT_API_EXEC with a function inside it called RUN_TASK that  submits execution requests to the OWB runtime engine. The requests could be for  mappings, process flows or scheduled jobs.  The function spec looks  like:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;function  run_task&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;  ( p_location_name in varchar2&lt;br /&gt;, p_task_type in varchar2&lt;br /&gt;, p_task_name in varchar2&lt;br /&gt;, p_custom_params  in varchar2 default null&lt;br /&gt;, p_system_params in varchar2 default null&lt;br /&gt;,  p_oem_friendly in number default 0&lt;br /&gt;, p_background in number default 0&lt;br /&gt;) return number;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="margin-bottom: 12pt;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;This is actually the same function  used by the sqlplus_exec_template.sql script in OWB 10gR2 that you mentioned in  your email. It can be called using (assuming a repository owner connection  exists):&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"  style="margin-bottom: 12pt;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;(this is an  example…)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;declare&lt;br /&gt;result_num  number;&lt;br /&gt;begin&lt;br /&gt;result_num:= wb_rt_api_exec.run_task('PFMOD_LOCATION1',  'PROCESS', 'MY_PKG/MY_PF', ',', ',', 0 ,0);&lt;br /&gt;end;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;The full documentation of the  function can be found in &lt;your&gt;/owb/rtasst/wb_rt_api_exec.pl&lt;/your&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;As usual, if you have further good questions never hesitate to checkout &lt;a href="http://blogs.oracle.com/warehousebuilder/"&gt; Oracle OWB Blog &lt;/a&gt; and &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=57" forumid="57"&gt; Oracle Technology OWB Forum &lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style=";font-family:Arial;font-size:85%;color:navy;"   &gt;&lt;span style=";font-family:Arial;color:navy;"  &gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-8989851145084692395?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/8989851145084692395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-warehouse-builder-owb-r2-process.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/8989851145084692395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/8989851145084692395'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-warehouse-builder-owb-r2-process.html' title='Oracle Warehouse Builder OWB R2 Process Flows'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/R0C82B0Ac4I/AAAAAAAAAFo/8ERUbU0cflE/s72-c/pflow_intro.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4989825264367548710</id><published>2007-11-16T14:30:00.000-06:00</published><updated>2007-11-18T11:57:24.215-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Google Analytics</title><content type='html'>&lt;span style="font-family:arial;"&gt;OK, people know that I like Business Intelligence and BI in general. But I am seriously blown away with how nice Google Analytics is.  The tool simply rocks.  Even non-techies can use this tool on their websites.  And when it comes to consulting with this tool for clients....hahah evil laugh) I am only getting started.&lt;br /&gt;&lt;br /&gt;Go have a look yourself to see how amazing this tool is: &lt;a href="http://www.google.com/analytics/"&gt; google analytics &lt;/a&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4989825264367548710?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4989825264367548710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/google-analytics.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4989825264367548710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4989825264367548710'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/google-analytics.html' title='Google Analytics'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6916396034939208636</id><published>2007-11-16T11:24:00.001-06:00</published><updated>2007-12-12T15:24:53.235-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Virtual Machines'/><title type='text'>Oracle Virtual Machines @ the Oracle Virtualization Technology Center</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R2BRmnCjGCI/AAAAAAAAAHg/aFm8tD0uVTQ/s1600-h/ovm.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R2BRmnCjGCI/AAAAAAAAAHg/aFm8tD0uVTQ/s400/ovm.gif" alt="" id="BLOGGER_PHOTO_ID_5143200498213656610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Wow.  I like it.  I am downloading this now and will report my findings.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Check it out at Oracle's OTN site: &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/technology/tech/virtualization/index.html?rssid=rss_otn_news"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Also see a compelling article here about why VMWare is 'good' for your Oracle DB: &lt;/span&gt;&lt;a href="http://blogs.vmware.com/performance/2007/11/ten-reasons-why.html"&gt;&lt;span style="font-family:arial;"&gt; click here!&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.vmware.com/performance/2007/11/ten-reasons-why.html"&gt; &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6916396034939208636?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6916396034939208636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-virtual-machines-oracle_16.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6916396034939208636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6916396034939208636'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-virtual-machines-oracle_16.html' title='Oracle Virtual Machines @ the Oracle Virtualization Technology Center'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/R2BRmnCjGCI/AAAAAAAAAHg/aFm8tD0uVTQ/s72-c/ovm.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-912435096979330771</id><published>2007-11-13T22:55:00.000-06:00</published><updated>2007-11-19T15:31:53.174-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Fantasy Football 2007</title><content type='html'>&lt;span style="font-family:arial;"&gt;I say its fine every now and then to blog about something that is not technical in nature or that exclusively deals with Oracle.  After all, I am looking at data, databases, security, apps, frameworks, and other stuff that fries my eyes during the day.....so why not talk about this stuff at night?&lt;br /&gt;&lt;br /&gt;My Fantasy Football Team sucks.  Part of this is on me and my drafting.  MOST of it is on my team.&lt;br /&gt;With a great Running back draft for me, I have &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;brandon&lt;/span&gt; Jacobs (NY Giants), Larry Johnson (KC), and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Rudi&lt;/span&gt; Johnson (Cincinnati).  ALL of them were hurt for multiple games this season.  None have been great.  They have had games here and there.  NO consistency.&lt;br /&gt;&lt;br /&gt;I had 2  top tier Wide Receivers in Lee Evans and Larry Fitzgerald.  Lee Evans caught less footballs than I have eyeballs in his first 2 games.  That's not good.  It took Fitz quite a while to realize he was supposed to be catching balls too.&lt;br /&gt;&lt;br /&gt;My QB? Philip Rivers.  Cry me a river, you bastard.  I luckily took the Cleveland QB -Derek Anderson- and he is playing well!  My &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Cowbody&lt;/span&gt; 'D' is performing relatively well too.&lt;br /&gt;&lt;br /&gt;My Tight end (always a hard drafting choice outside of Antonio Gates) was Vernon Davis of SF.  He had high hopes this season.  Me too.  I think he has played..?!  Anyone seen him lately?  IS he out there?  Are ANY 49&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;ers&lt;/span&gt; out there??&lt;br /&gt;&lt;br /&gt;SAD thing is with all the injuries and crappy play by my crappy team, I might make the playoffs.&lt;br /&gt;Who is our #1 guy in the league?  he has Brady, Moss, Patriot's 'D', Adrian Peterson, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Braylon&lt;/span&gt; Edwards, Hines Ward, just to name a few....&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;LOL&lt;/span&gt;.  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Rediculous&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I'm out.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-912435096979330771?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/912435096979330771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/fantasy-football-2007.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/912435096979330771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/912435096979330771'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/fantasy-football-2007.html' title='Fantasy Football 2007'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-2033905564248378014</id><published>2007-11-08T21:59:00.000-06:00</published><updated>2007-12-23T00:40:29.998-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>Oracle BI Publisher Tips &lt;?OMG?&gt;</title><content type='html'>&lt;span style="font-family:arial;"&gt;I know I have a fair amount of BI Publisher posts here, and I will continue tp update old ones too.  However I figured I would mention a few gotchas and little tips here that have confused me sometimes and I know confused the heck out of clients and some smart colleagues I've worked with as well.  I'll be updating this post here and there.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;XML Nodes and comparing tags in different nesting levels:&lt;/span&gt;&lt;br /&gt;coming soon.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The dreaded copy paste... a binding problem?:&lt;/span&gt;&lt;br /&gt;Do not, under almost any circumstance copy-paste things inside your microsoft word BI Publisher RTF template.  Pay special attention to form fields and XSL code.  I have copy-pasted these form time to time from one place in my code to another and it failed to work.  But wait!  You might be thinking I pasted the elements into parts of a template that SHOULD work differently because of other tags involved, such as posting something outside of an if/else statement, or pasting something outside of the body tags, and so forth.  NOPE!  It happened to me multiple times if I merely pasted the code or form field right next to the original!  It would not render!&lt;br /&gt;&lt;br /&gt;Pay attention if your output data behaves or displays differently after a copy-paste.  Simply TYPE what you want to alleviate this problem :)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-2033905564248378014?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/2033905564248378014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-bi-publisher-tips.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2033905564248378014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/2033905564248378014'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/11/oracle-bi-publisher-tips.html' title='Oracle BI Publisher Tips &lt;?OMG?&gt;'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-4374342267429786059</id><published>2007-10-27T17:22:00.001-05:00</published><updated>2007-12-20T14:50:25.104-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>BI Publisher Barcoding in Oracle Applications 11i Tips</title><content type='html'>&lt;span style=";font-family:arial;font-size:100%;"  &gt;(to see a follow-up and more in-detail posting related to this post, go here- &lt;a href="http://cali97.blogspot.com/2007/11/bi-publisher-xml-publisher-oracle.html"&gt;link&lt;/a&gt;)  Now that I have some nice screen shots to accompany this, here we go.  Note: I did use some of the material that can be found on Tim Dexter's Oracle BI Publisher Blog, just to give some due credit.  I merely added more details for some of you that like to SEE things working too.&lt;br /&gt;&lt;br /&gt;First, this will not cover how to develop a BI Publisher Template, that is a whole 'nother topic.  This will also not talk about how to register the template or the data definition in Oracle Applications.  That will be covered in another posting as well.  This is more focused on how to get barcodes installed, into your templates, and to make sure they're registered in Apps as well and appearing on your reports.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;Finally I will be covering some 2-d barcoding later.  This post is for standard 1-d barcodes.  For those that don't know, 2-d barcodes are the funky blurry looking square barcodes that UPS, Federal Express and some others use.  It lets them scan the barcode in any direction, not just up and down.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;1. Install the barcode font in your WINDOWS_HOME/fonts directory&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt; 2. &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Check your fonts directory to make sure you have the font installed and it is present.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;3. &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;To test the output you need to let the publisher engine know where the font is on the desktop. Under the Bi Publisher client install directory you'll find a config directory and under there an 'xdo example.cfg' file.  Here I also show a finished xdo.cfg file too.  NOTE that any time I reference this xdo.cfg file, I am referring to the local file on your machine.  Editing this won't help you see fonts in Oracle Apps- you need to load the font to Apps to see your templates using it there.  This is also covered below.  I mention the xdo.cfg file because people like to test templates locally on their own computer first.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R2rFlzoj8II/AAAAAAAAAIU/6RQn1qGDZrw/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R2rFlzoj8II/AAAAAAAAAIU/6RQn1qGDZrw/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146142777530380418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Open it up and you'll see a sample entry for a font:&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/RyPFqCt55zI/AAAAAAAAADM/sn6LfRSx-uo/s1600-h/untitled.bmp"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/RyPFqCt55zI/AAAAAAAAADM/sn6LfRSx-uo/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5126158126952343346" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Here is an example of an 'after' of what your changes may look like in this file:  (note the directory and that we are only showing the portions we changed with respect to the above XML)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;font family="CarolinaBar-B39-25D1"&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;style="normal"&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;weight="normal"&lt;br /&gt;and...&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;truetype path="C:\WINDOWS\Fonts\CarolinaBar-B39-25D1-Normal.TTF" &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;&lt;span family="CarolinaBar-B39-25D1" style="" weight="normal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;truetype path="C:\WINDOWS\Fonts\CarolinaBar-B39-25D1-Normal.TTF"&gt;&lt;/truetype&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Note you can have more entries too, for example if you need a font to be in italics, or another entry if you need the font to be in bold.  Then again, remember we are dealing with barcodes here... :)  Just change the entry to point to your font via the path and for the family attribute put in the name you see in Word when selecting the barcode font.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:100%;"&gt;4. &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Rename the file to xdo.cfg for the changes to take effect.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;5. &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Open Word, and test your template.  I will use this standard template seen below.  Note the fields near the top in the Vendor and the Ship To boxes.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/RyS63St556I/AAAAAAAAAEA/I8Hi6J7Hh-U/s1600-h/untitled.bmp"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/RyS63St556I/AAAAAAAAAEA/I8Hi6J7Hh-U/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5126427734934415266" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;6.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;   Now we need to make sure also we have an asterisk * placed just before and after our fields that need to be coded into barcodes.&lt;span style=""&gt;  &lt;/span&gt;These are wrapping or ‘escape’ characters for the barcode.&lt;span style=""&gt;  &lt;/span&gt;So do this as seen in the next picture:&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/RyS76Ct557I/AAAAAAAAAEI/mVuHL-jw7sE/s1600-h/untitled.bmp"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/RyS76Ct557I/AAAAAAAAAEI/mVuHL-jw7sE/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5126428881690683314" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;7.   Then, using Microsoft Word,  I highlight the fields that will be barcoded, as can be seen below.  I then proceed to choose from the font menu my barcode font of choice for those highlighted areas.  Note you must have registered them properly to even be seen in Word.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_37Gh08TaV-M/RyS8git558I/AAAAAAAAAEQ/Q-0MiGk6cKY/s1600-h/untitled.bmp"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_37Gh08TaV-M/RyS8git558I/AAAAAAAAAEQ/Q-0MiGk6cKY/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5126429543115646914" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;8.  And there we have it seen below, at least in the template!&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_37Gh08TaV-M/RyS-KSt559I/AAAAAAAAAEY/w8DAcvAyYjg/s1600-h/untitled.bmp"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_37Gh08TaV-M/RyS-KSt559I/AAAAAAAAAEY/w8DAcvAyYjg/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5126431359886813138" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Now you need to deploy to the server. The template is simple enough, but we need the server publisher engine to know the location of the font. For both EBS and standalone there is an interface to load the font to the server, the steps are now pretty straightforward. In EBS just use the Font Manager.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Many of you will have seen the Administrator module on the Template manager in the E Business Suite ... the new properties UI is great and much easier to use but you can now also manage those troublesome MICR, Barcode and other fonts through the manager too.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;XML Publisher 5.6 has a new tab: Administration. This replaces the xdo.cfg configuration file. Now fonts can be uploaded and stored in the database instead of stored on the file system.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Under the Administration tab are sub tabs: Configuration, Font Mappings and Font Files and Currencies.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;To install a font requires only a few steps.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;1. Log in as XML Publisher Administrator.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R2rE4zoj8HI/AAAAAAAAAIM/8fYJR2oXpM8/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R2rE4zoj8HI/AAAAAAAAAIM/8fYJR2oXpM8/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146142004436267122" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;2. Navigate to Administration-&gt;Font Files-&gt;Create Font File.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rHCDoj8KI/AAAAAAAAAIk/0lhT2Lfd0SE/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rHCDoj8KI/AAAAAAAAAIk/0lhT2Lfd0SE/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146144362373312674" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rIqjoj8LI/AAAAAAAAAIs/BqmJzwduEww/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rIqjoj8LI/AAAAAAAAAIs/BqmJzwduEww/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146146157669642418" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;  &lt;span style=";font-family:Arial;font-size:100%;"  &gt;3. Fields are 'Font Name' and 'File'.  For Font Name choose any descriptive name.  File will browse your PC to locate the font file.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;4. Navigate to Font Mappings Tab-&gt;Create Font Mapping Set.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rJSjoj8MI/AAAAAAAAAI0/n17LNsALE9U/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rJSjoj8MI/AAAAAAAAAI0/n17LNsALE9U/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146146844864409794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;5. Mapping name is the name you will give to a set of fonts.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;6. Mapping code is the internal name you will give to this set.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;7. Type: 'PDF Form' for PDF templates. 'FO to PDF' for all other template types.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;8. Now, Create Font Mapping (this allows you to add multiple fonts to a font mapping set).&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;p:colorscheme style="font-family: arial;" colors="#ffffff,#252525,#3e3e3e,#3e3e3e,#fb0018,#f70010,#f70010,#b2b2b2"&gt;&lt;/p:colorscheme&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;  After you created the Font Mapping Set itself, you need to look in the bottom right AGAIN and choose the button Create Font Mapping (this allows you to add multiple fonts to a Mapping Set that you just &lt;/span&gt;&lt;span style="font-family:arial;"&gt;created).&lt;/span&gt;&lt;span style="font-family:arial;"&gt;  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;Screenshot of the new screen below:&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rLSDoj8NI/AAAAAAAAAI8/0n7Tsbh-hXw/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rLSDoj8NI/AAAAAAAAAI8/0n7Tsbh-hXw/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146149035297730770" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div shape="_x0000_s1026" class="O" style="text-align: center;"&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;  &lt;span style="font-size:100%;"&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;    &lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;9. Note: Font Family is the exact same name you see in Microsoft Word under Fonts.&lt;br /&gt;If you don't use the same name the font will not be picked up at runtime. THIS IS IMPORTANT!  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;p:colorscheme style="font-family: arial;" colors="#ffffff,#252525,#3e3e3e,#3e3e3e,#fb0018,#f70010,#f70010,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;/span&gt;&lt;div shape="_x0000_s1026" class="O"&gt;  &lt;div style=""&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -3.86%;"&gt;10.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;The following screen shot shows us a screen with a font mapping set, with 2 font mappings &lt;/span&gt;&lt;span style="font-size:16;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;inside of it.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;You can see the font family how it is defined:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_37Gh08TaV-M/R2rLvzoj8OI/AAAAAAAAAJE/RmMTBu6Jw9A/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_37Gh08TaV-M/R2rLvzoj8OI/AAAAAAAAAJE/RmMTBu6Jw9A/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146149546398839010" border="0" /&gt;&lt;/a&gt;&lt;p:colorscheme colors="#ffffff,#252525,#3e3e3e,#3e3e3e,#fb0018,#f70010,#f70010,#b2b2b2"&gt;  &lt;/p:colorscheme&gt;&lt;/span&gt;&lt;div shape="_x0000_s1026"&gt;  &lt;div class="O1" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color: rgb(251, 0, 24); position: absolute; left: -3.13%;"&gt;–&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;Note the font family MUST match the font name (not Filename) in the fonts directory that you uploaded &lt;/b&gt;&lt;/span&gt;&lt;span style="font-size:16;"&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;the font from!&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Look below!&lt;/span&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rMsDoj8PI/AAAAAAAAAJM/l8yllIeORFw/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rMsDoj8PI/AAAAAAAAAJM/l8yllIeORFw/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146150581485957362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:16;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;    &lt;/div&gt;  &lt;span style="color: rgb(247, 0, 16);font-size:100%;" &gt; &lt;/span&gt;&lt;/div&gt;    &lt;/div&gt;  &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;span style="font-size:100%;"&gt;10. Style and weight must also &lt;/span&gt;match how you use the font in windows.&lt;br /&gt;&lt;st1:city st="on"&gt;Normal&lt;/st1:city&gt; and &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Normal&lt;/st1:place&gt;&lt;/st1:city&gt; are good defaults.&lt;span style=""&gt;  &lt;/span&gt;If you want bold or italics, you must have the fonts registered in the windows directory we discussed, as well as in your xdo.cfg file.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;11. Navigate to Configuration General-&gt; FO Processing-&gt;Font Mapping Set.&lt;br /&gt;This can also be done at data definition and template level under Edit Configuration.&lt;br /&gt;A screenshot below shows the way to get to the Edit Configuration if you need to do it &lt;span style="font-weight: bold;"&gt;AT the d&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:100%;"  &gt;ata definition or template level. :&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rVPjoj8SI/AAAAAAAAAJk/IbmBn0W7_yQ/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_37Gh08TaV-M/R2rVPjoj8SI/AAAAAAAAAJk/IbmBn0W7_yQ/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146159987464335650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Hierarchy is Site-&gt; Data Def -&gt; Template.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;13. Select your new mapping set.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rPeDoj8QI/AAAAAAAAAJU/sfzlDkSKibo/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_37Gh08TaV-M/R2rPeDoj8QI/AAAAAAAAAJU/sfzlDkSKibo/s400/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5146153639502672130" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;14. Make sure the font is not referenced under File-&gt;Properties-&gt;Custom in the RTF template file.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;15. Upload a template that uses your special font and test using preview or in EBS.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-4374342267429786059?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/4374342267429786059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/10/bi-publisher-barcoding-in-oracle.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4374342267429786059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/4374342267429786059'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/10/bi-publisher-barcoding-in-oracle.html' title='BI Publisher Barcoding in Oracle Applications 11i Tips'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_37Gh08TaV-M/R2rFlzoj8II/AAAAAAAAAIU/6RQn1qGDZrw/s72-c/untitled.bmp' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1683008273620820463</id><published>2007-09-29T11:57:00.000-05:00</published><updated>2007-11-19T15:32:07.869-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Some quotes I think are awesome.</title><content type='html'>&lt;span style="font-family:arial;"&gt;"You're walking around blind without a cane pal. A fool and his money are lucky enough to get together in the first place."&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;" Guess you think you taught the teacher a lesson that the tail can wag the dog huh? "&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"Ever wonder why fund managers can't beat the S&amp;amp;P 500? 'Cause they're sheep, and sheep get slaughtered."&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"And where does your CEO put his million-dollar salary? Not in the company stock; he owns less than one percent. You, the shareholders, own the company. That's right, you! And you are all being royally screwed over by these, these bureaucrats, with their luncheons, their hunting and fishing trips, their corporate jets and golden parachutes. "&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"Teldar Paper has 33 different vice presidents each earning over 200 thousand dollars a year. Now, I have spent the last two months analyzing what all these guys do, and I still can't figure it out.  The new law of evolution in corporate America seems to be survival of the unfittest. Well, in my book you either do it right or you get eliminated."&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"Confidence is contagious. So is lack of confidence."&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"Dictionary is the only place that success comes before work. Hard work is the price we must pay for success. I think you can accomplish anything if you're willing to pay the price."&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"If it doesn't matter who wins or loses, then why do they keep score? "&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"Once you learn to quit, it becomes a habit."&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"The difference between a successful person and others is not a lack of strength, not a lack of knowledge, but rather a lack of will. "&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"I've never known a man worth his salt who in the long run, deep down in his heart, didn't appreciate the grind, the discipline. There is something in good men that really yearns for discipline and the harsh reality of head to head combat. "&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;"If you think it was luck, I'll do it again."&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1683008273620820463?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1683008273620820463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/some-quotes-i-think-are-awesome.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1683008273620820463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1683008273620820463'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/some-quotes-i-think-are-awesome.html' title='Some quotes I think are awesome.'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-107732555004112779</id><published>2007-09-29T11:48:00.000-05:00</published><updated>2007-10-27T17:21:43.472-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Publisher'/><title type='text'>BI Publisher / XML Publisher and Barcoding</title><content type='html'>&lt;div&gt;&lt;span style="font-family:arial;"&gt;My client awaits my return next week with bated breath and part of my fun responsibilities will be to make sure I can get nice and working bar codes on their BI Publisher Reports feeding from EBS 11i. Fortunately I won't be alone in my effort, but from previous client experiences, people had to jump through hoops and hurt themselves to get this working. I just haven't been hurt yet :) In the coming weeks I will update this posting with my findings. As always, the most helpful blog I always refer to for all things BI Publisher is &lt;/span&gt;&lt;a href="http://blogs.oracle.com/xmlpublisher/"&gt;&lt;span style="font-family:arial;"&gt;Tim Dexter's Blog&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;. Is this guy trying to win an Oracle Ace or something? :)&lt;br /&gt;&lt;br /&gt;OK, UPDATE!  We got this working.  It was not the more complicated 2-D bar coding that needs nice Java classes and so forth, but I will STILL show some nice screen shots and of course refer to good blogs where I dug up the info to do this.  There are HUNDREDS of people out there that need help with this so I will show as many screen shots and steps as I can without compromising my client!  Tune in very soon!&lt;br /&gt;&lt;br /&gt;OK.  Have an update with details.  See the post titled 'BI Publisher Barcoding in Oracle Applications 11i'&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-107732555004112779?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/107732555004112779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/bi-publisher-xml-publisher-and.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/107732555004112779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/107732555004112779'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/bi-publisher-xml-publisher-and.html' title='BI Publisher / XML Publisher and Barcoding'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1836905681066856892</id><published>2007-09-26T23:36:00.001-05:00</published><updated>2007-09-26T23:38:51.209-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><title type='text'>The OWB Repository Upgrade Assistant!</title><content type='html'>&lt;span style="font-family:arial;"&gt;Just what in the world is this little hidden Wizard tool doing? Let's find out more about the OWB Repository Upgrade Assistant, shall we?&lt;br /&gt;&lt;br /&gt;First, what does it do, and why do we use it?&lt;br /&gt;&lt;br /&gt;Next, how do we use it; exactly where do we find it?&lt;br /&gt;&lt;br /&gt;Any issues we know of?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1836905681066856892?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1836905681066856892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/owb-repository-upgrade-assistant.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1836905681066856892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1836905681066856892'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/owb-repository-upgrade-assistant.html' title='The OWB Repository Upgrade Assistant!'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-5287163814997678832</id><published>2007-09-26T20:26:00.000-05:00</published><updated>2007-09-27T11:21:23.294-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OWB'/><category scheme='http://www.blogger.com/atom/ns#' term='RAC'/><title type='text'>Oracle Warehouse Builder 10g R2 - OWB and Oracle RAC</title><content type='html'>&lt;div&gt;Right now I am working hard on making sure we have all of our connections to sources, targets, the metadata repository, and any other loose ends tied up on a nice start to yet another Data Warehousing and BI project- using the Oracle suite of tools!&lt;br /&gt;&lt;br /&gt;One thing I don't have much experience with that I wanted to share pitfalls about (and accept tips from readers as well) is using an Oracle RAC instance as our ultimate 'Target Schema' in our ETL using OWB. We have a multitude of data sources, of course, and we have our unified repository on the RAC instance. We also have our Target schema and tables on this same RAC instance. Nothing crazy just yet! Here is where the fun begins (note to self: it is always interesting to say its fun when it is actually a bit painful)....&lt;br /&gt;&lt;br /&gt;First, the Oracle RAC instance is using ASM. A bit abour ASM- ASM is a new feature in Oracle Database 10g that provides the services of a filesystem, logical volume manager, and software RAID in a platform-independent manner. Oracle ASM can stripe and mirror your disks, allow disks to be added or removed while the database is under load, and automatically balance I/O to remove "hot spots." It also supports direct and asynchronous I/O and implements the Oracle Data Manager API (simplified I/O system call interface) introduced in Oracle9i.&lt;br /&gt;&lt;br /&gt;Oracle ASM is not a general-purpose filesystem and can be used only for Oracle data files, redo logs, control files, and the RMAN Flash Recovery Area. Files in ASM can be created and named automatically by the database (by use of the Oracle Managed Files feature) or manually by the DBA. Because the files stored in ASM are not accessible to the operating system, the only way to perform backup and recovery operations on databases that use ASM files is through Recovery Manager (RMAN).&lt;br /&gt;&lt;br /&gt;ASM is implemented as a separate Oracle instance that must be up if other databases are to be able to access it. Memory requirements for ASM are light: only 64MB for most systems. In Oracle RAC environments, an ASM instance must be running on each cluster node.&lt;br /&gt;&lt;br /&gt;The diagram below shows a very basic topology, and yes this RAC is using ASM.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_37Gh08TaV-M/RvsJ5OgvV6I/AAAAAAAAAC0/d3Fh2FW268U/s1600-h/smiley_rac10gr2_install_f1.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5114692680561940386" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_37Gh08TaV-M/RvsJ5OgvV6I/AAAAAAAAAC0/d3Fh2FW268U/s400/smiley_rac10gr2_install_f1.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now that we have a few of the basic ideas out in the open...the real issues come into play for people like myself that don't know exactly how RAC is going to work with OWB services that are trying to deploy tables, data, and other things to a RAC target. Furthermore, what is going to happen with the OWB Repository, and the properties files that are created when a repository is created via OWB? Well we're learning.&lt;br /&gt;&lt;br /&gt;First I'll mention a few details about installing OWB in a RAC environment, and in particular- the repository setup on the RAC cluster.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;To install OWB in a RAC environment&lt;/strong&gt;:&lt;br /&gt;Create the RAC environment as described in the Oracle Clusterware and Oracle Real Application Clusters Installation Guide specific to your platform. If you have not already done so, it won't hurt to review the most recent Oracle Warehouse Builder Release Notes available for your version of the install!&lt;br /&gt;&lt;br /&gt;For each computer to host Warehouse Builder components, configure the tnsnames.ora file located in the OWB_ORACLE_HOME\network\admin directory. Also be sure to set the initialization parameter MAX_COMMIT_PROPAGATION_DELAY to a value of zero.&lt;br /&gt;Definitely configure tnsnames.ora for each Oracle Database server that will be a Warehouse Builder data source OR target. If you fail to configure tnsnames.ora for any host or database server, you may encounter a repository connection error such as "&lt;strong&gt;&lt;em&gt;The connection to the repository was lost, because of the following database error: ORA-12154:TNS:could not resolve the connect identifier specified&lt;/em&gt;&lt;/strong&gt;". This is a common error!&lt;br /&gt;&lt;br /&gt;Then review any last-minute install requirements before launching the Universal Installer and installing OWB.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;To install an OWB Repository in a RAC environment:&lt;/strong&gt;&lt;br /&gt;When OWB is installed, you'll then want to install an OWB repository. To launch the Repository Assistant on Windows, from the Windows Start menu, select Programs and navigate to the Oracle product group you installed in the previous step. Select Warehouse Builder, Administration, and then Repository Assistant. (To launch the Repository Assistant on UNIX, locate OWB_ORACLE_HOME/owb/bin/unix and execute reposinst.sh.)&lt;br /&gt;&lt;br /&gt;The Repository Assistant prompts you to define users and an owner for the repository.&lt;br /&gt;&lt;br /&gt;Now for each RAC node, make sure to register each one! So for each node, launch the Repository Assistant and select the Advanced Set up option. Connect to the node using the net service name. Select the option for registering the RAC instance. (see below)&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/_37Gh08TaV-M/RvvYbegvV7I/AAAAAAAAAC8/9GzJTQfK5J8/s1600-h/untitled.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5114919768367781810" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_37Gh08TaV-M/RvvYbegvV7I/AAAAAAAAAC8/9GzJTQfK5J8/s400/untitled.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;If the software is installed on separate disks, copy rtrepos.properties to each node in the cluster. If you did not install to a shared disk, then you must manually copy the file &lt;owb_oracle_home&gt;/owb/bin/admin/rtrepos.properties from the primary node to each node in the cluster. &lt;strong&gt;&lt;-- This is yet another point I forgot so please make a note of it! See metalink note below!&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;Then install the Warehouse Builder software on the client machines.&lt;br /&gt;&lt;br /&gt;When complete the installation process, you can launch all the Warehouse Builder components.&lt;br /&gt;When launching OWB components such as the Design Center, Control Center Manager, and Repository Assistant, select the log on option SQL*Net connection and specify the net service name you assigned in the tnsnames.ora file. Since you can connect to Warehouse Builder repositories using a net service name, you can embed RAC properties into the connect string to utilize RAC functionalities such as connect time failover, load balancing on server and load balancing of connections. Finally, the Control Center Service requires that service names for the individual nodes in the cluster be available. If these are not present after the RAC installation, you must manually ensure the availability.&lt;br /&gt;&lt;br /&gt;For RAC, it is recommended that you install the Warehouse Builder components on each node of the cluster. The Control Center Service is required on to each node of the RAC cluster.You can achieve this in a single installation of the Warehouse Builder software if you install on a shared disk such as an OCFS or NTS shared disk.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Metalink Note On OWB + RAC:&lt;/strong&gt;&lt;br /&gt;&lt;a name="top" send="true"&gt;&lt;strong&gt;Applies to: &lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;Oracle Warehouse Builder - Version: 10.2.0.1.31This problem can occur on any platform.&lt;br /&gt;&lt;br /&gt;&lt;a name="SYMPTOM" send="true"&gt;&lt;/a&gt;&lt;strong&gt;Symptoms&lt;/strong&gt;&lt;br /&gt;The Warehouse Builder Runtime Service fails to startup on a Real Application Cluster (RAC).The following can be found in the Runtime Service log file or in sqlplus depending on the way the Service is started.service startup failure reason ORA-29532: Java call terminated by uncaught Javaexception: oracle.jdbc.driver.OracleSQLException: ORA-28239: no key providedORA-06512: at "SYS.DBMS_OBFUSCATION_TOOLKIT_FFI", line 40ORA-06512: at "SYS.DBMS_OBFUSCATION_TOOLKIT", line 153ORA-06512: at "OWB_REP_OWNER.WB_RT_SERVICE_CONTROL", line 286ORA-06512: at "OWB_REP_OWNER.WB_RT_SERVICE_CONTROL", line 314ORA-06512: at line 1&lt;br /&gt;&lt;br /&gt;&lt;a name="CHANGE" send="true"&gt;&lt;/a&gt;&lt;strong&gt;Changes&lt;/strong&gt;&lt;br /&gt;Switch from one RAC node to another RAC node.&lt;br /&gt;&lt;br /&gt;&lt;a name="CAUSE" send="true"&gt;&lt;/a&gt;&lt;strong&gt;Cause&lt;/strong&gt;&lt;br /&gt;The file rtrepos.properties created into the owb_home/owb/bin/admin during the Unified Repository creation has not been deployed (copy) into the owb_home/aow/bin/admin on the other node(s).&lt;br /&gt;&lt;br /&gt;&lt;a name="FIX" send="true"&gt;&lt;/a&gt;&lt;strong&gt;Solution&lt;/strong&gt;&lt;br /&gt;On the RAC node used to perform the Unified Repository creation, locate the file rtrepos.properties in owb_home/owb/bin/admin and copy it on the other node(s) into the owb_home/owb/bin/admin directory.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-5287163814997678832?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/5287163814997678832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/oracle-warehouse-builder-10g-r2-owb-and.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5287163814997678832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/5287163814997678832'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/oracle-warehouse-builder-10g-r2-owb-and.html' title='Oracle Warehouse Builder 10g R2 - OWB and Oracle RAC'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_37Gh08TaV-M/RvsJ5OgvV6I/AAAAAAAAAC0/d3Fh2FW268U/s72-c/smiley_rac10gr2_install_f1.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-1118629846006443352</id><published>2007-09-16T14:42:00.000-05:00</published><updated>2007-09-16T15:50:08.235-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PL/SQL'/><title type='text'>Oracle PL/SQL Tokenizer and String Formatting</title><content type='html'>&lt;P&gt;Several times in my past projects I needed to do some complex actions on Strings or Varchars. &amp;nbsp;Doing this in Java is a no-brainer with the Tokenizer. &amp;nbsp;Sadly, I either didn't look hard enough or didn't see it in the PL/SQL base packages, but I created a nice little tokenizer that solved my problems. &amp;nbsp;I've used this little nifty code bit several times now.&lt;/P&gt;&lt;br /&gt;  &lt;P&gt;&lt;br /&gt;    &lt;FONT face="Arial"&gt;-----------------------------------------&lt;br /&gt;      &lt;br/&gt;--This is the tokenizer proc that is called several times that breaks down the strings by&lt;br /&gt;      &lt;br/&gt;--using the input parameters of 1. where to start, 2. the delimiting character or string&lt;br /&gt;      &lt;br/&gt;--and 3. the string to be broken down. It returns the extracted piece, and also the next&lt;br /&gt;      &lt;br/&gt;--position in the string so if the tokenizer needs to be called again, it will automatically&lt;br /&gt;      &lt;br/&gt;--start at the next position to extract the subsequent piece.&lt;br /&gt;      &lt;br/&gt;--Gregory Partenach  v1 October 2003&lt;br /&gt;      &lt;br/&gt;&lt;br /&gt;      &lt;br/&gt;PROCEDURE tokenizer ( iStart IN NUMBER,&lt;br /&gt;      &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sPattern IN VARCHAR2,&lt;br /&gt;      &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sBuffer IN VARCHAR2,&lt;br /&gt;      &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sResult OUT VARCHAR2,&lt;br /&gt;      &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;iNextPos OUT NUMBER )&lt;br /&gt;      &lt;br/&gt;IS&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nPos1 number;&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nPos2 number;&lt;br /&gt;      &lt;br/&gt;BEGIN&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;nPos1 := 0;&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;nPos2 := 0;&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;nPos1 := iStart;&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;nPos2 := Instr (sBuffer, sPattern, iStart);&lt;br /&gt;      &lt;br/&gt;IF&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;nPos2 = 0 then&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sResult := Rtrim(Ltrim(Substr(sBuffer, nPos1)));&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;iNextPos := nPos2;&lt;br /&gt;      &lt;br/&gt;ELSE&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sResult := Substr(sBuffer, nPos1, nPos2 - nPos1);&lt;br /&gt;      &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iNextPos := nPos2 +1;&lt;br /&gt;      &lt;br/&gt;END IF;&lt;br /&gt;      &lt;br/&gt;END tokenizer; -----------------------------------------&lt;br /&gt;    &lt;/FONT&gt;&lt;br /&gt;  &lt;/P&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-1118629846006443352?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/1118629846006443352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/oracle-plsql-tokenizer-and-string.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1118629846006443352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/1118629846006443352'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/oracle-plsql-tokenizer-and-string.html' title='Oracle PL/SQL Tokenizer and String Formatting'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-8089386631557156080</id><published>2007-09-16T11:05:00.000-05:00</published><updated>2007-09-16T14:28:17.297-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Portal'/><title type='text'>Setting up Oracle Portal 10g to use Oracle Reports PART 1</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_37Gh08TaV-M/Ru1by_yB1sI/AAAAAAAAAB4/1Y9s_03MVto/s1600-h/untitled.bmp"&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;I know many of you have been through this. I also know quite a few that haven't. Since I have had to integrate Reports with Portal in many different ways, I figured I would show one way I implemented this. I've had top-level consultants and co-workers tell me certain configurations don't work. Fortunately, in my experiences I have gotten the integration between Reports and Portal to work every single time. This will not go into detail about the Reports Server configurations...let's stick to the Portal side of things.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;This procedure will set up a report server in Oracle Portal that will be used to call your Oracle Reports.&lt;br /&gt;&lt;br /&gt;Log into Oracle Portal.&lt;/span&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_37Gh08TaV-M/Ru1ZU_yB1oI/AAAAAAAAABY/D-lzCLDyZUw/s1600-h/untitled.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5110839369388906114" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_37Gh08TaV-M/Ru1ZU_yB1oI/AAAAAAAAABY/D-lzCLDyZUw/s400/untitled.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Click the "Administer" tab.&lt;/span&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_37Gh08TaV-M/Ru1aEvyB1pI/AAAAAAAAABg/YIl6wKHk9q8/s1600-h/untitled.bmp"&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_37Gh08TaV-M/Ru1cY_yB1tI/AAAAAAAAACA/T5JRMKv6pYA/s1600-h/untitled.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5110842736643266258" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_37Gh08TaV-M/Ru1cY_yB1tI/AAAAAAAAACA/T5JRMKv6pYA/s400/untitled.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Click "Oracle Reports Security Settings".&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_37Gh08TaV-M/Ru1olfyB1uI/AAAAAAAAACI/AzqMRWaYxNk/s1600-h/untitled.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5110856145531164386" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_37Gh08TaV-M/Ru1olfyB1uI/AAAAAAAAACI/AzqMRWaYxNk/s400/untitled.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Click "Create Reports Server Access".&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_37Gh08TaV-M/Ru1pSfyB1vI/AAAAAAAAACQ/xwyZYrpc9T4/s1600-h/untitled.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5110856918625277682" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_37Gh08TaV-M/Ru1pSfyB1vI/AAAAAAAAACQ/xwyZYrpc9T4/s400/untitled.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Enter a name and display name for the Reports Server and select a provider.&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_37Gh08TaV-M/Ru1q_fyB1wI/AAAAAAAAACY/5id5pKF-Uk4/s1600-h/untitled.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5110858791231018754" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_37Gh08TaV-M/Ru1q_fyB1wI/AAAAAAAAACY/5id5pKF-Uk4/s400/untitled.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enter the Reports Server name and the web gateway URL for PDF reports. The Reports Server name can be looked up in Oracle Enterprise Manager. The current production gateway &lt;em&gt;may&lt;/em&gt; look like "https://my.site.com/reports/rwservlet". The two steps after this screen are unnecessary, so you may click the "Finish" button on this screen when done.&lt;br /&gt;&lt;br /&gt;When you've created an Oracle Report and are ready to access it in Portal, you will need to upload it to the server. The current path on the server where the reports can be placed (for example) &lt;em&gt;may &lt;/em&gt;look like: /u01/app/oracle/product/10.1.2/OAS/as_biportal/reports/samples/demo.&lt;br /&gt;&lt;br /&gt;Setting up the Report for use in Portal- You should first have your Oracle report created and know the name of all the parameters that will be passed into the report. Click "Create Reports Definition File Access".&lt;br /&gt;&lt;br /&gt;Enter the name and display name for the report and select the provider. Typical names can look like "RPT_ORDER_STATUS" and display names like "Report - Order Status", etc.&lt;br /&gt;&lt;br /&gt;Select the report server to use and the file name of the report (the report server was created in the prior step above). The file name is the actual name of the Oracle Reports .rdf file for the report.&lt;br /&gt;&lt;br /&gt;Select the destination type and format. For PDF reports, the type should be "Cache" and the format should be "PDF".&lt;br /&gt;&lt;br /&gt;Enter the parameters for the report. The "Name" field should match exactly the parameter names you defined within the Oracle Report. The two steps after this screen aren't always necessary, so you may click the "Finish" button on this screen when done.&lt;br /&gt;&lt;br /&gt;The report definition is now created and you will be returned to the below screen. Click the "Access" tab.&lt;br /&gt;&lt;br /&gt;Select the "Publish as Portlet" checkbox and click the "Apply" button. The screen will refresh.&lt;br /&gt;Then click the close button.&lt;br /&gt;&lt;br /&gt;You will be returned to the below screen. Click the "Customize" link to expose the report parameters to Portal.&lt;br /&gt;&lt;br /&gt;A popup window will be displayed listing the custom parameters you defined for the report, as well as several system parameters. For each custom parameter you defined, check the box labeled "Visible to user". This will expose the parameter to Portal screens that the report is placed on so that data can be passed from the screen and into the report.&lt;br /&gt;&lt;br /&gt;In the "Additional User Parameters" field you can enter the following code:&lt;br /&gt;&amp;amp;userid=[username]/[password]@[host string]&lt;br /&gt;Note that we don't have the 'Visible to user' option checked here. This is because this parameter is being passed to the Report as a security and data filtering action. Depending on who is logged into Portal, the user's name and password will be passed to the Report and the appropriate data will be retrieved to display on the Report. We don't want this parameter to be visible to anyone, the username and password are passed transparently.&lt;br /&gt;&lt;br /&gt;You can then click the "Save Parameters" button when done and then close the popup window manually. The report should now be ready for use in portal screens. You can also click the "Run Report" button after you've saved the parameters for the report. Depending on your report and the parameters that it requires, the report may not display correctly, but it should give you an idea if the report is at least being accessed and called correctly from Portal.&lt;br /&gt;&lt;br /&gt;Next time we will continue by showing how to create a Portal page for your Oracle Report.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-8089386631557156080?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/8089386631557156080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/setting-up-oracle-portal-10g-to-use.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/8089386631557156080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/8089386631557156080'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/setting-up-oracle-portal-10g-to-use.html' title='Setting up Oracle Portal 10g to use Oracle Reports PART 1'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_37Gh08TaV-M/Ru1ZU_yB1oI/AAAAAAAAABY/D-lzCLDyZUw/s72-c/untitled.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5582097748463419592.post-6996076362499022526</id><published>2007-09-16T01:47:00.003-05:00</published><updated>2010-02-05T19:49:49.978-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>First post on this blog</title><content type='html'>&lt;span style="font-family:arial;"&gt;Blogging is not new to me, but I am creating yet another one. This Blog will focus on my professional areas of interest. Namely, Oracle and other technical subject areas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;A bit about me without giving you an explicit resume- (if you want my resume, want to see where I worked, or more- please contact me through email &lt;/span&gt;&lt;a style="font-family: arial;" href="mailto:partench@gmail.com"&gt;partench@gmail.com&lt;/a&gt;&lt;span style="font-family:arial;"&gt; or look over a briefing at &lt;/span&gt;&lt;a style="font-family: arial;" title="New window will open" href="http://www.linkedin.com/in/cali97" target="_blank"&gt;http://www.linkedin.com/in/cali97&lt;/a&gt;&lt;span style="font-family:arial;"&gt; ). I've been doing technical work in some fashion since 1996. I've been to a few good schools, racked up a couple of higher degrees, and even considered going into healthcare/medicine until I realized it was almost as corrupt as politics.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I've been lucky enough to work on projects and software that made it to film (Pixar's "Finding Nemo"), &lt;/span&gt;&lt;span style="font-family:arial;"&gt;lucky to work 1 on 1 with &lt;/span&gt;&lt;a style="font-family: arial;" href="http://obrienportal.blogspot.com/"&gt;Shaun O'Brien&lt;/a&gt;&lt;span style="font-family:arial;"&gt; on many projects, as he was my direct mentor at my previous employer and is also employed by my current employer now too!  I can't shake that guy?!  Now, saldy he was hired away to be a Principal Product Manager at &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.oracle.com/"&gt;ORACLE&lt;/a&gt;&lt;span style="font-family:arial;"&gt; for JDeveloper and the ADF Framework.  Congrats to him.  Unfortunately, 90% of my work is buried and hidden deep in my client's vaults never to be seen by outside eyes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;My areas of specialization and interest are in Oracle Database Development, Data Warehousing, Business Intelligence, Informatics, Tuning, Motion Picture Visual Effects, Graphical Rendering Engines, ...I could go on!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;On a lighter note, the real person side of me is enjoying city life in Chicago. I live just a block away from the Lincoln Park zoo. Its quite a change from San Francisco! I enjoy trying new restaurants, taking in art museums as well as creating a bit of my own art, and of course seeing the Chicago Bears play on Sundays. I'd like to get into rock climbing when time permits, and I'm already planning a trip or 2 to check out some vineyards in Michigan and maybe Napa Valley as well. Again....I could go on!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5582097748463419592-6996076362499022526?l=cali97.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cali97.blogspot.com/feeds/6996076362499022526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://cali97.blogspot.com/2007/09/first-post-on-this-blog.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6996076362499022526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5582097748463419592/posts/default/6996076362499022526'/><link rel='alternate' type='text/html' href='http://cali97.blogspot.com/2007/09/first-post-on-this-blog.html' title='First post on this blog'/><author><name>Greg</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
