TruTek TruTalk Newsletter for Oracle Professionals
 TruTek Hands Waving

September, 2009
Greetings!
 
It's back to school time, and we've put together a terrific line-up of training classes:  

The Oracle 11i/R12 Applications DBA Concepts and Administration, Oracle 11i Workflow Builder Business Events and Administration, and Oracle 10g DBA Boot Camp I are all being taught in Salt Lake City this month.

In October, we've got both the Introduction to PL/SQL and the Advanced PL/SQL Tips & Techniques training classes coming to Salt Lake City.

We're hitting the streets! Take a look at our upcoming training classes. We're offering classes in UtahNew Jersey, Washington, Nevada, Arizona, Colorado, Massachusetts and California.

If you've started thinking about upgrading from Release 11i to Release 12, check out my Oracle E-Business Suite R11i to R12.1 Technical Upgrade class. This is a no holds barred, hands on class. This class offers an essential practice run at doing this upgrade. Plus, you'll perform the upgrade using my new book, the little r12 upgrade guide.

If you've been looking for a class that will really teach you what you need to know to be a great DBA, then sign up for Robert Freeman's upcoming Oracle 11g DBA Boot Camp I.

Get ready for another visit from Steven Feuerstein. His last seminar went over so well that we've decided to bring him back, this time for The Best of Oracle PL/SQL in November in New Jersey.

By the way - I'll be at OpenWorld 2009 in October. Drop me a line if you'd like to meet while I'm in San Francisco. 

Don't miss out on this terrific lineup of classes with the best trainers in their fields!

Sincerely,

Mike Swing
TruTek

IN THIS ISSUE
What We Do
Release 12 Onsite Training
Robert Freeman
Oracle E-Business Suite R11i/R12 Technical Upgrade Training
Oracle 11g Release 2 Has Arrived
Script to Download 11gR2 Documentation
How to "Crater" Your Upgrade
R12/11g Upgrade Issues
How Time Zones Work in Release 12
Patch 'til there's nothin' left to fix...
We Do More Than Just Training!
Counting with Tanel Poder
Hot Off the Press
OpenWorld 2009
Confio
Article Writing Contest
TruTek Training Schedule
QUICK LINKS
What We Do
TruTekTruTek is a national leader in technical and functional Oracle training and consulting. We also offer permanent placement services for full-time employees. We offer Oracle database and E-Business Suite consulting, training and remote services. We have a state of the art training facility in Salt Lake City, Utah. If you have 5 or more people interested in a class, we can also bring classes to your company if you would like onsite training.

And if you've wanted to take a training class, but were intimidated by the crowds, we also offer "Personal Training" for certain classes.
 
Our Road Warriors Can Bring Release 12 Training to You!

TruTek Road WarriorIn these tight economic times, finding a way to get the training you need can be tough. Perhaps you've got training budget, but not travel dollars? If that's the case, we'd just like you to know that our instructors are willing to pack up their hardware and bring the class to you. 

We offer two technical classes and two functional classes that cover what you'll need to know to make the switch to Release 12:
 
 
 

If you're ready to start learning about Release 12, give us a call. If you have a location in mind, we can track down additional students to help fill the class.
Learn From the Master: Robert Freeman
Yes, Grasshopper, you too can learn from the best - Robert Freeman, noted author, is also an Oracle ACE and a karate black belt. Don't miss Robert's upcoming classes: Oracle 11g DBA Boot Camp I, Backup and Recovery Using 10g RMAN, Oracle 11g DBA Boot Camp II, and Oracle Database 11g New Features.

Robert FreemanRobert's latest technical book, called OCP Oracle Database 11g Certified Professional Study Guide, is available. It's a prep guide for the Oracle Database 11g OCP Exam (Exam 1Z0-053). Check out this and other great books on our books link.

Robert Freeman's OCP: Oracle Database 11g Certification Kit      Robert Freeman's Oracle Database 10g RMAN Backup and Recovery           Oracle Database 11g New Features    

Oracle E-Business Suite R11i to R12.1.1 Technical Upgrade Training
the little r12 upgrade guideIf your company is starting to think about upgrading to Release 12, one of the most important first steps is to try out the upgrade. TruTek's Oracle E-Business Suite R11i to R12.1.1 Technical Upgrade class is a 5 day hands-on class where you'll upgrade the Release 11.5.10.2 Vision instance to Release 12.1.1. Mike Swing does his best to make it look easy, but in reality, a good upgrade takes a lot of planning and preparation.
 
How hard can it be? We'd like to think we've taken some of the agony out of upgrading by publishing a book, the little r12 upgrade guide, that takes you through the steps. Our guide - and the class - include additional patches that you'll need to apply, plus an assortment of "gotchas", with their solutions.

The class size is limited to 4 to 6 students to allow plenty of instructor attention for dealing with problems that arise, and questions that students have. Each student uses a quad core Linux server with 4-8 GB of memory and 1 TB of disk space to perform the upgrade.
 
Here's some feedback from a recent student:
Great Class.  Teacher was very informative and let you work at your own pace.  My company was upgrading to 12.1.1 and Mike let me try the upgrade during class instead of the 12.0.4 upgrade.  Best part of the class was each student was able to do their own upgrade.  That way if one upgrade failed all other students could keep working at their own pace.  Can't wait to take another class with Trutek. 
By the way, the 12.1.1 upgrade was successfully completed during the 5 day class.
 
Mike's upcoming training class,  Oracle E-Business Suite R11i to R12.1.1 Technical Upgrade, is in Seattle, WA, September 28-October 2, Denver, CO, November 2-6th, Las Vegas, NV, Nov 30-Dec 4th and New Jersey, Dec 7-11.

Mike's next book is in the works - "the little r12.1 upgrade guide". If you'd like to be notified when it is available, click here.

Oracle 11g Release 2 Has Arrived by Steven Feuerstein
Steven Feuerstein is a noted (and prolific) author, instructor, and an Oracle ACE. We received such good feedback from his last training class that we're bringing him back! Steven will be presenting The Best of Oracle PL/SQL Seminar on December 10-11 in New Jersey. Don't miss it!
 
In the meantime, we have Steven's feedback about Database 11g Release 2: 
 
What a big relief....I was in the beta program, checking out the new features of PL/SQL in this latest release of the Oracle database. That's quite a privilege, but also a burden; Oracle is very severe about not wanting us to talk about upcoming features before they officially release the product to their adoring public.
 
That's tough on me, because I have a hard time keeping my mouth shut about anything, especially wondrous new features in PL/SQL. So what I usually do is say something like this:
 
"It is possible, just possible that in the next release of Oracle you will be able to...."
 
And I leave it up to my audience to draw their own conclusions.
 
No longer. I can now disclose to you the new features for PL/SQL in Oracle Database 11g Release 2. Drum roll, please!
 
So what's new? Hmmm. Not much, in PL/SQL specifically.
 
Probably the most important thing to me won't mean much too most of you, because it is an improvement over an 11.1 feature - and who's upgraded to 11g already? Not many.
 
Still, I will tell you about it: when working with the Function Result Cache, you no longer need to include the RELIES_ON clause. Oracle will automatically determine what tables the cache is reliant on. When and if any changes are committed to that table, all dependent caches will be invalidated.
 
It's a nice improvement and it also means that for most of you, RELIES_ON will be completely ignored. Lucky you! This sort of "instant deprecation" reminds me of the RESTRICT_REFERENCES pragma that was required back in Oracle7 or 8 to be able to execute user-defined functions inside SQL statements. Now that was an enormous pain in the neck and in Oracle8i, it was no longer required.
 
Besides the enhancement to the Function Result Cache, we have the following changes in and additions to PL/SQL (I encourage you to download the 11.2 documentation library, even if you have no plans to upgrade to 11.2 anytime soon. Then you can review the PL/SQL Users Guide yourself!):
 

Surely, you are thinking, 11.2 consists of more than this. Certainly it does. The major new feature in 11.2 is "edition-based redefinition," which (according to the doc) " enables you to upgrade the database component of an application while it is in use, thereby minimizing or eliminating down time."
 
This is REALLY BIG NEWS. You can now "hot patch" your application code, which means that Oracle is finally and truly a 24x7 database platform. This feature will have a big impact on application architects and some impact on PL/SQL developers, but there is actually very little change in the PL/SQL language itself.
 
Oracle PL/SQL Programming by Steve FeuersteinAnd now for the biggest news of all: now that Oracle has officially released 11.2, O'Reilly can publish the 5th edition of Oracle PL/SQL Programming. This edition has lots of good stuff in it, but most important are: 

  • Optimize PL/SQL performance with the aid of a brand-new chapter in the fifth edition;
  • Understand and use new Oracle Database 11g features, including the edition-based redefinition capability, the function result cache, the new CONTINUE statement, fine-grained dependency tracking, sequences in PL/SQL expressions, supertype invocation from subtypes, and enhancements to native compilation, triggers, and dynamic SQL;
  • Use new Oracle Database 11g tools and techniques such as PL/Scope, the PL/SQL hierarchical profiler, and the SecureFiles technology for large objects.
Other Papers by Steven Feuerstein:
Script to Download 11gR2 Documentation by Christian Antognini
Troubleshooting Oracle Performance by Christian AntogniniWe're excited to announce that Christian Antognini will be conducting a class for us in 2010! Christian wrote the very popular book Troubleshooting Oracle Performance, and will be teaching a class based on the book.
 
Following is an article by Christian about RDBMS 11gR2: 

I don't know about you, but I like to work with the PDF version of the documentation. The problem is that the PDF files have names that are not very useful (or do you remember that the SQL Reference Guide is named e10592.pdf?). Hence, when I download the documentation, I like to store each PDF with its title as a file name. In addition, for easy access, I put them under the My Documents menu. The following image shows how it looks like on my laptop.

 
 
 
 
Christian Antognini 

It goes without saying that doing that for the 148 files of the documentation library is not only boring, but it is also very time consuming. Hence, I did it in the following way: 
  • opened the master book list
  • extracted the HTML code associated to the table containing the list of PDF files
  • applied a small XSL transformation to generate a script that downloads all files
  • executed the script

In this way, I just had to start the script, and about 10 minutes later the whole documentation library was stored locally. Note that with such a script it is also very simple to periodically re-download all files. Just to keep them up-to-date. 

If you think this is something useful for you, feel free to download my script by clicking the following link: download.cmd. The only requirement is that wget must be installed on your system. For me GNU Wget works fine. You can also use this KSH version of the script, submitted by a colleague of mine, Dani Rey.
How NOT to "Crater" Your E-Business Suite Upgrade by Mike Swing
Volcano Craters

When we teach our hands-on classes, our instructor always upgrades right along with the class so that if a fatal mistake is made, he can hand his instance over to a student. We've found this is necessary because at least one student comes up with a way to "crater" their upgrade during the class. How could this happen? Well, we continue to add additional ways to break an upgrade to our book, the little r12 upgrade guide, because we're constantly surprised by how many ways there are to mess things up. Students are under pressure during the class to finish the upgrade within the week, and keep up with new material that is being introduced each day. It's a lot like the atmosphere at work, if you think about it.

So here are two new ways to cause a fatal error in your upgrade:
   
       1.   Run the wrong version of adgrants.sql   

The upgrade of Release 11i to Release 12 requires ATG RUP6. RUP7 currently has unresolved issues with BNE objects. While applying either ATG patch, the worker running ademusr.sql may fail. The resolution is to run adgrants.sql from patch 5989593. The version of this adgrants.sql is 115.56. This version is for Release 11i. 

Before applying the 12.1.1 unified driver u6678700.drv, run AD preparation scripts.

To prepare your system for the Oracle Applications Tablespace Model (OATM) functionality, you must run some preparation scripts. Download and unzip the new patch 7197489. Follow the instructions in the readme for running these scripts:
    •   adgncons.sql
    •   adcrtbsp.sql
      •   Generated by adgncons.sql, this script creates the new tablespaces
    •   adgrants.sql (same adgrants.sql as 5726010 120.21)
      •   Grants SYS privileges needed by Applications, and creates required views in SYS.
A common fatal mistake is to skip the step to copy in the new adgrants.sql from either patch 7197489 or 5726010, both version 120.21). Make sure the right version of adgrants.sql is used.
 
Running the preparation scripts creates tablespaces and prepares the database objects only for new products. To migrate existing products to OATM, complete the instructions in the "Oracle Applications System Administrator's Guide - Configuration", for OATM.

        2.  Switch to spfile after the database upgrade

      After completing the DB Upgrade, the initialization parameters are updated in the pfile, and the spfile is created:

As the oracle user, run the following:
sqlplus "/as sysdba"
shutdown immediate
startup pfile='/home/d01/oracle/vis/db/tech_st/10.2.0/dbs/initVIS.ora
create spfile from pfile;

A common fatal mistake is to start the instance with the old (9206) pfile. This issue was encountered because we neglected to create a new spfile from the pfile before starting the applications upgrade patch. As a result, when the upgrade patch encountered an error and we needed to exit the patch, trying to restart the patch resulted in this error. 

E-Business Suite R12/RDBMS 11g Upgrade Issues: Things That Make You Go Hmm...
When we teach the Release 11i to Release 12 Upgrade class, we always try to use the latest available patchsets. For our most recent class in Albany, we were successful in upgrading to Release 12.1.1, but hit issues in two other areas, a Daylight Savings Time - DST Time Zone issue upgrading from RDBMS Version 9.2.0.6 to 11.1.0.7, and an error with the BNE Module when applying RUP 7.
 
Time Zone Issue Upgrading from RDBMS Version 9.2.0.6 to RDBMS Version 11.1.0.7
 
THE PROBLEM - Upgrading Version 9.2.0.6 to Version 11.1.0.7 fails wtin an "invalid number" because the DST patch version is not Version 4. The R12.1.1 software from the RapidWiz DVDs contains Release 11.1.0.7 of the RDBMS. Version 11.1.0.7 includes DST Patch Version 4.
 
To resolve the issue, the version should be the same. We tried applying the DST Version 10 to both the Release 9.2.0.6 and 11.1.0.7 Oracle Homes, but that failed. Then, we tried applying DST Version 4 to both Oracle Homes. This was successful.
 
The two options we tried are:
 
a. Running the database upgrade with no changes to the DST patches. It fails with an ORA-01722 invalid number: 
 
dbua
 
b. applying the DST Version 10 patch to both Version 9.2.0.6 and Version 11.1.0.7, but the upgrade fails with an ORA-01722: invalid number.
 
The resolution is to patch Version 9.2.0.6 and Version 11.1.0.7 to DST Version 4. Metalink Note: 458452.1, shows the DSTV4 Patch 5632264:
 
Time Zone 5
 
Use opatch to apply the database patch (5632264) to the Version 9.2.0.6 and Version 11.1.0.7 Oracle Homes. Download the 9.2.0.6 version from Metalink to apply to the 9.2.0.6 Oracle Home. Download the 10.2.0.3 version of 5632264 to manually apply to the 11.1.0.7 Oracle Home.
 
Manually apply Patch 5632264 to the 11.1.0.7 Oracle Home by copying the following files to the 11.1.0.7 Oracle Home::
 
5632264/files/oracore/zoneinfo/timezone.dat -> $OH/oracore/zoneinfo/timezone.dat
5632264/files/oracore/zoneinfo/timezlrgdat -> $OH/oracore/zoneinfo/timezlrg.dat
 
Then, run the database upgrade, using "dbua" or completing the upgrade manually.
 
RUP 7 Errored on the BNE Module
 
WARNING - Applying RUP7 in our environment caused failures in the BNE module that were not experienced using ATG RUP 6. TruTek recommends not applying ATG RUP7 until a resolution is provided by Oracle.
 
THE PROBLEM - While running RUP7 6241631, the following error occurs:
 
The failed worker shows:
 
Calling FNDLOAD function
The values of input parameters are:argc=[7],
argv[0]=APPS/*****, argv[1]=0, argv[2]=Y, argv[3]=UPLOAD, argv[4]=@FND:patch/115/import/afmdmsg.lct, argv[5]=@BNE:patch/115/import/US/bnemsgs.ldt, argv[6]=-, dn_inslog=[/d01/oracle/visappl/admin/VIS/log]
 
Returned from function FNDLOAD function
The values of output parameters are:status=[-1073775448]
 
Log file: /d01/oracle/visappl/admin/VIS/log/US_bnemsgs_ldt.log
Error calling FNDLOAD function
 
The log file, US_bnemsgs_ldt.log, shows:
 
Uploading from the data file /d01/oracle/visappl/bne/11.5.0/patch/115/import/US/bnemsgs.ldt
Altering database NLS_LANGUAGE environment to AMERICAN
Dumping from LCT/LDT files (/d01/oracle/visappl/fnd/11.5.0/patch/115/import/afmdmsg.lct(115.29), /d01/oracle/visappl/bne/11.5.0/patch/115/import/US/bnemsgs.ldt) to staging tables
Dumping LCT file /d01/oracle/visappl/fnd/11.5.0/patch/115/import/afmdmsg.lct(115.29) into FND_SEED_STAGE_CONFIG
Dumping LDT file /d01/oracle/visappl/bne/11.5.0/patch/115/import/US/bnemsgs.ldt into FND_SEED_STAGE_ENTITY
Dumped the batch (FND_NEW_MESSAGES BNE BNE_JAVASCRIPT_DISCLAIMER , FND_NEW_MESSAGES BNE VWR_TT_EXCEL_RENDER_ERROR ) into FND_SEED_STAGE_ENTITY
Uploading from staging tables
  Error during uploading. ORA-06550: line 240, column 32:
PLS-00302: component 'TRANSLATE_ROW' must be declared
ORA-06550: line 240, column 11:
PL/SQL: Statement ignored
ORA-06550: line 249, column 32:
PLS-00302: component 'LOAD_ROW' must be declared
 
Metalink has the following note that resembles the error:
 
FNDLOAD Fails With PLS-00302: Component 'TRANSLATE_ROW' or 'LOAD_ROW' Must Be Declared   Doc ID: 197778.1
 
The solution shows an old patch, 1865267 that doesn't resolve the issue.
 
While running 1865267, the following jobs fail:
There are now 47 jobs remaining (current phase=A7):
    0 running, 0 ready to run and 47 waiting.
 
ATTENTION: All workers either have failed or are waiting:
 
           FAILED: file afcpsm02.ldt on worker  2.
           FAILED: file afcpjcp1.ldt on worker  3.
 
ATTENTION: Please fix the above failed worker(s) so the manager can continue.
 
Current time is: Wed Sep 09 2009 15:14:53
 
After applying 4252551, and 4346113 (pre-reqs for 6024690)
 
Time is: Wed Sep 09 2009 15:25:34
 
There are now 9 jobs remaining (current phase=A9):
    1 running, 0 ready to run and 8 waiting.
 
   FAILED: file bnemsgs.ldt  on worker  1 for product bne username APPS.
 
Time is: Wed Sep 09 2009 15:25:34
 
ATTENTION: All workers either have failed or are waiting:
 
           FAILED: file bnemsgs.ldt  on worker  1.
 
ATTENTION: Please fix the above failed worker(s) so the manager can continue.
 
CONCLUSION: Note 753198.1 mentions bnemsgs.ldt and recommends Patch 7042138, but this patch does not resolve the issue. Since we could not find a solution for this problem, we will continue to upgrade to RUP 6 until a solution is provided by Oracle.
 
Give us the scoop - as you apply patches to your environment, why not share the gory details with your colleagues? Drop us a line if you run into issues, or even if you don't, so we can share the news with other E-Business Suite users who are preparing to "patch current".
How Time Zones Work in Release 12
Once you get the Time Zone patch working correctly on your RDBMS, you'll need to understand how to set up time zones for your company.
 
In our example, assume that the database servers are in Pittsburgh, and the clients (apps users) are located all over the world.  
Users have a hard time figuring out the time and date things really ran, whether it was based on local time or the server time. This is especially confusing for New Zealand, because the local time is a day ahead of the server time.

You can search for Time Zone related profile options by searching for %ZONE%::
 
Timezones in R12 1 
 
These are Profile Options that are returned:
 
R12 Time Zone 2
 
These are the ones you need to set to make Timezones work correctly:
  • Client Timezone default - can be overridden by the Regional User Preference - Timezone
  • Server Timezone - set to the location of the server
  • Concurrent: Multiple Time Zones - Set to Yes. This allows the Concurrent Manager to recognize that a job submitted by Kelly in Logan, Utah, scheduled to run at 10PM, is interpreted as scheduled to run at 12 midnight EST, in Pittsburgh, where the servers are located.
 R12 Time Zone 3

 R12 Time Zone 4
 
 
Patch 'til there's nothin' left to fix...
Steven Chan's Oracle E-Business Suite Technology blog included a number of interesting articles last month, including several about E-Business Suite Release 12.
 
Turbocharging Your EBS 12.0 Techstack Upgrade

Steven is presenting at Oracle OpenWorld 2009:
 
Using Oracle Application Server with E-Business Suite (Session S307958)
Wednesday, Oct. 14, 5:00 PM
Moscone West L2, Room 2008
 
Advanced Configuration and Cloud Deployment of Oracle E-Business Suite (Session S307956)
Ivo Dujmovic, presenter (Steven will be tagging along)
Thursday, Oct. 15, 9:00 AM
Moscone West L2, Room 2008
 
Meet the Experts:  E-Business Suite Technology Stack
Monday, Oct. 12, 1:00 PM
Applications Lounge, "Meet the Experts" Area
 
EBS Applications Technology Special Interest Group Panel
Sunday, Oct 11, 2:00 PM
Moscone West L3, Room 3009
 
 
Did You Know? We Do More Than Just Training!
At TruTek, we offer training classes, remote database and applications administration support, and on-site consulting. And in the next month, a few of our top consultants will be rolling off of projects, so check them out:

Mike Swing - Besides teaching many of our E-Business Suite technical classes, including several of our DBA classes, Mike has extensive experience implementing, upgrading and maintaining various Oracle RDBMS versions and the E-Business Suite. Mike teaches our classes on installing and upgrading to Release 12, so if you need someone with plenty of hands on experience, he is one of our best resources. Mike also has experience supporting RAC implementations and has a deep understanding of parallel concurrent processing, load balancing and failover. 
 
Corvin - With experience both as a technical manager and developer, Corvin has a solid background in Oracle-related technologies, including Oracle ERP systems and custom applications. Corvin would be a strong asset on an Oracle E-Business Suite implementation or upgrade, thanks to his experience with Purchasing, iStore, iPayment, Manufacturing, HR, Advanced Benefits and Assets.
 
Paul - Paul is an Oracle Applications DBA with plenty of experience supporting Releases 11.0.3 to 11.5.10. His skills include both Unix/Linux System Administration, as well as RMAN Backup and Recovery, disaster and capacity planning experience, and hardware and Oracle software integration.

Eric - Eric has a very deep understanding of both Unix and Oracle DBA technical material, and is a solid, very experienced Oracle Applications DBA. His strong analytical skills make him a valuable member of any team.
Dennelle - It's always good to have a skilled financials functional expert in your corner. Dennelle specializes in General Ledger, Fixed Assets, Purchasing, Payables, Receivables, Cash Management, Order Management, ADI, FSGs and UPK.  Dennelle is also a great trainer, so her hand-offs to clients go especially well.

Rick - With 15 years of manufacturing planning, forecasting and inventory management experience, and 10 years of functional Oracle ERP implementation experience, Rick is one of our top manufacturing experts for the E-Business Suite. Rick specializes in supporting the Oracle BOM, CST, EAM, ENG, INV, PO, MRP, MSCA and WIP modules.

Samuel - Here's a Database Administrator with excellent credentials. Samuel is an Oracle Certified Professional, an Oracle 10g Certified Technician, and he has an Oracle DBA Masters. Couple that with years of experience as a senior database analyst, and you've got someone that can manage your database and work well with any development team.

Susan - Offering strong technical skills combined with excellent project management and team lead capabilities, Susan is an experienced ERP application designer and developer. Susan is a Certified Oracle Application Developer, and can resolve issues quickly due to her wide variety of experience and technical knowledge.

Fred - Fred has strong experience supporting large, worldwide Oracle E-Business Suite implementations and upgrades as a project manager, lead, and functional consultant. Fred's experience includes both Project Manufacturing and Oracle Financials. 

Joe - Joe is an Oracle developer with over 12 years of experience in designing, building, maintaining and enhancing both ERP and custom applications across a variety of business sectors. 

Bob - Bob is an accomplished Oracle DBA with extensive experience as an Oracle Apps DBA. Bob's E-Business Suite experience includes installing, updating and cloning environments.

Nathan - Nathan has both functional and technical expertise, which makes him a valuable asset in supporting the E-Business Suite. Nathan has worked as both an Oracle Database Analyst and Oracle Financial Applications specialist, responsible for implementing Oracle Accounts Payable, Oracle Purchasing, Order Management, Fixed Assets, Cash Management, Accounts Receivable and Oracle General Ledger. Nathan has performed data conversions as well as Oracle database installation, reorganization, tuning, and instance recovery on various Linux, Unix, NT, and VAX/VMS platforms. Nathan's technical skills include RMAN backup and recovery, RAC on AIX, Oracle Warehouse Builder, Workflow and XML Publisher.

Jim - Jim is one of our best manufacturing consultants. His experience includes full life cycle implementations in manufacturing management, purchasing management, production planning, and materials control. Jim has worked as a Project Manager, Team Leader, and as a Functional Application Implementer.

Craig - Craig's most recent assignment had him multi-tasking as a Unix System Administrator, Oracle Database Administrator, Applications System Administrator and E-Business Suite Developer. Craig's solid technical background makes him an excellent candidate for any E-Business Suite team.

Also, if you're looking for a developer to design custom software or programs for your company, we have a Java team ready to roll!  We have other consultants with E-Business Suite, DBA and developer skills available as well.

Contact us if you'd like to see more resumes.
Select COUNT(*) and COUNT(column) are Different Things! by Tanel Poder
Tanel Poder, an Oracle ACE Director and Oracle Certified Master, is one of our most popular instructors. He'll be teaching two classes in February, 2010, Advanced SQL Tuning and Advanced Oracle Troubleshooting.

Every now and then I see someone wondering why Oracle is "returning wrong results" for some count queries when counting using COUNT(column_name) instead of COUNT(*) or COUNT(<constant>).

Oracle is actually returning correct results, its just that sometimes the people asking the questions haven't realized that COUNT(column) is something semantically different from COUNT(*).

COUNT(*) operation counts all rows fed to it by execution plan branch under it.

COUNT(column) operation on the other hand counts all non-null values in that column from rows fed to it by execution plan branch under it.

And here's a little example:

SQL> select count(*) from v$session;

COUNT(*)
----------
23
 
SQL> select count(username) from v$session;

COUNT(USERNAME)
---------------
1 <<-- only one non-null value in that column
 
SQL> select count(nvl(username,'blah')) from v$session; <<-- lets replace NULLs with non-nulls

COUNT(NVL(USERNAME,'BLAH'))
---------------------------
23
Hot Off the Press... Oracle Data Guard 11g Handbook 
Oracle Data Guard 11g Handbook
Co-authored by Larry Carpenter, Joseph Meeks, Charles Kim, Bill Burke, Sonya Carothers, Joydip Kundu, Michael Smith and Nitin Venguerleker, the Oracle Data Guard 11g Handbook describes how Data Guard provides superior data protection, availability, and disaster recovery using the tested techniques in this Oracle Press guide. Co-written by a team of Oracle experts, the Oracle Data Guard 11g Handbook provides a sound architectural foundation along with best practices for configuration, monitoring, maintenance, and troubleshooting. You will get full details on implementing deployment architectures to address requirements that extend beyond disaster recovery. This invaluable resource also includes a complete set of monitoring scripts available for download.


  • Develop a disaster recovery plan for your Oracle database to meet your organization's requirements
  • Configure and deploy Oracle Data Guard for your environment
  • Tune and troubleshoot your physical and logical standby databases
  • Implement the Oracle Data Guard Broker management framework
  • Integrate with Oracle Grid Control
  • Monitor your Oracle Data Guard environment
  • Enable read-only services and disaster recovery with Oracle Active Data Guard
  • Configure seamless database and application failover
  • Minimize planned downtime using Oracle Data Guard switchover
  • Handle backup and recovery with Oracle Recovery Manager
Don't Miss Our Favorite Gurus at OpenWorld!
These are the experts we turn to, not only for our training classes, but also for their deep knowledge about Oracle. Don't miss their presentations at Oracle OpenWorld 2009, which will be October 11-15 in San Francisco.

Steven Feuerstein
Why You Should Care About PL/SQL in Oracle Database 11g Now! - So Oracle has come out with another version. You probably won't be using it for years, so why should you bother learning about what's new in PL/SQL in Oracle Database 11g now? A very reasonable question, and the answer is: because once you understand what will be possible in Oracle Database 11g, it will change the way you write your code now. This session offers an overview of the most exciting new features for PL/SQL in Oracle Database 11g and proves to you beyond the shadow of a doubt that you should be designing your code at this moment to get ready for that version.

Automated Testing Options for Oracle PL/SQL -
We all know we should test our code more thoroughly, but who has the time and patience, and isn't our code "good enough" anyway? Did you know that it is widely accepted that if you have a program of 500 lines, you should expect to write 5,000 lines of test code? Ah, so that's why we don't test our code! If you are not satisfied with the number of bugs in your code or if you sometimes find yourself embarrassed when demonstrating your software to users, then attend this session to learn how you can automate the testing process, reduce bugs in your code, and increase confidence in your applications. The session reviews tools, from open source to commercial, that offer varying levels of testing automation.

Coding Therapy for Software Developers - We can't write software without our brains, and our brains come with a full load of "issues." The way our brain remembers the past and projects into the future has a big impact on how we write code. Moving beyond physiology, human psychology also plays its role, making it difficult for us to acknowledge ignorance and ask for help. This keynote address offers an intensive coding therapy session to help all attendees come to grips with their innate, unavoidable "issues," making it easier to write better code-and help others on their team write better code.

Mike Swing
Failover and Load Balancing of Parallel Concurrent Processing in Oracle E-Business Suite 11i/12 - This session introduces failover and load balancing concepts for Releases 11i and 12 and discusses new features. Failover mechanisms vary with each release and depend on an understanding of TCP concepts and SQL*Net. This makes the configuration critical. It examines the importance of dead connection detection, reviews the results of a case study, and explains generic service management relative to the starting and stopping of services for parallel concurrent processing. It also explains which features of Release 11i are now obsolete, discusses new features introduced in Release 12, and explores the effects of these new features.
 
Christian Antognini
Interpreting Execution Plans -  An execution plan describes the operations carried out by the SQL engine to execute an SQL statement. Every time you have to analyze a performance problem related to an SQL statement or simply question the decisions taken by the query optimizer, you must know the execution plan. Whenever you deal with an execution plan, you carry out three basic actions; you obtain it, you interpret it, and you judge its efficiency. The aim of this session is to describe in detail how you should perform the second of these three actions - in other words, how to read execution plans.

Jonathan Lewis
How to Hint - Hints are badly understood and difficult to use safely. The optimizer group is working constantly to make the optimizer so robust that hints will become redundant, but until it achieves this aim, it is important to understand what hints are and how they work. In Oracle 9 Database, there were about 127 hints, of which about 60 were documented. In Oracle Database 11g, there are about 236, and even the hints that seem to be well known and easily understood may be more subtle than you think, which fools people into believing that Oracle can "decide" to ignore a hint. This session explains what a hint is and then offers you insight into why hints generally should be avoided but are sometimes needed and must be treated with extreme caution.

Tim Gorman
Scaling to Infinity: Partitioning Data Warehouses on Oracle Database - This presentation explains and conclusively justifies one of most important technical decisions that can be made during the physical build of a data warehouse based on Oracle Database, regardless of size: how best to implement partitioning. Partitioning permits the full power of numerous advanced Oracle Database features to be brought to bear on the data warehouse, regardless of how large it grows or how busy it becomes in the future, which the speaker characterizes as the "virtuous cycle." Not starting with partitioning, regardless of how humble the beginnings, can lead to a deadly embrace of unfortunate circumstances that can doom a project to eventual-almost inevitable-failure, which the speaker characterizes as a "death spiral."

Dan Hotka
Tools of the Trade: All the Free Tools from Oracle - This session's speaker has used a variety of SQL tuning tools over the years. The presentation includes a live demonstration of various tools available from Oracle. It is packed full of tips and techniques, including scripts that help find offending SQL statements.

The session covers these topics:
� Oracle SQL Developer
� SQL*Plus autotrace
� SQL*Plus explain plan scripts
� SQL*Plus undocumented explain plan features
� TKProf (Oracle trace facility)
� The new Oracle Database 10g trace analyzer
� PL/SQL profiler (with scripts)

Scott Spendolini
Welcome to the Oracle Application Express Sunday Symposium (ODTUG/IOUG) - In this session, Scott Spendolini of Sumner Technologies and Dimitri Gielis of APEX Evangelists welcome the group and provide an overview for the entire day.

Troubleshooting Oracle Application Express - Oracle Application Express is made up of several technologies: PL/SQL, HTML, CSS, JavaScript, and Ajax. When something goes wrong, it's often more difficult to figure out what went wrong than it is to fix it. This presentation takes a brief look at each technology that makes up Oracle Application Express and discusses and demonstrates how to effectively track down and solve the problem. As an added bonus, every tool outlined in this presentation is available for free.
 
For a list of all sessions relating to the E-Business Suite, see:
Confio Igniter Suite

Confio builds performance management software that improves the effectiveness of IT systems and the people who run them. The Confio Igniter Suite currently includes products that help Oracle DBAs, managers, and developers continuously monitor the performance of databases and the applications that depend on them, isolate specific problems, and identify solutions in production systems.

Confio Ignite

Your Claim to Fame...
AmazonYou might argue that our newsletter staff weighs in more on the technical side than the functional side. Yes, we admit it, we're geeks. But that doesn't mean we don't want to include articles about the functional side of the E-Business Suite. Really, we do. So here's your chance to help us keep a balanced perspective in our newsletter. If you've got a good functional topic, please, let us know. Enter our writing contest!  If you'd like to enter, just write an article about Oracle or the Oracle E-Business Suite. Tell us about a technique that you've used that made your life easier at work. Or describe something you've learned from all those books on your bookshelf, and how it applied to your environment. If you're not sure if you've got a good topic, send us a note, and we'll help you figure it out. Go ahead, you know you want to!

Submissions should be sent to [email protected] by September 25th. We'll include the winning article in our next newsletter. And the winning author will win a very cool prize, a $50 Gift Certificate from Amazon!
Upcoming TruTek Training Classes
We're always open to adding new classes, so let us know your interests! We add new classes regularly, so be sure to check the latest version of the schedule on our website. 

 

 

Technical Classes

 

Sep 14-18

Oracle 11i/R12 Applications  DBA Concepts and Administration

SLC, UT

Sep 21-23

Oracle 11i Workflow Builder, Business Events and Administration

SLC, UT

Sep 21-25

Oracle 11g DBA Boot Camp I with Robert Freeman

SLC, UT

Sep 28- Oct 2

Oracle 11i/R12 Applications  DBA Concepts and Administration

Seattle, WA

Sep 28- Oct 2

Oracle E-Business Suite R11i-R12.1.1 Technical Upgrade

Seattle, WA

Sep 28-30

Introduction to SQL

Seattle, WA

Oct 19-20

Introduction to Oracle PL/SQL Programming

SLC, UT

Oct 21-23

Advanced Oracle PL/SQL Tips and Techniques

SLC, UT

Oct 26-30

Oracle Database 11g New Features with Robert Freeman

SLC, UT

Oct 26-30

Oracle E-Business Suite R11i-R12.1.1 Technical Upgrade

Austin, TX

Nov 3-5

Oracle Release R12 Applications System Administration

SLC, UT

Nov 10-12

Introduction to SQL

Denver, CO

Nov 9-13

Oracle E-Business Suite R11i-R12.1.1 Technical Upgrade

Denver, CO

Nov 9-13

Oracle 11i/R12 Applications  DBA Concepts and Administration

Denver, CO

Nov 10-13

Introduction to Oracle Business Intelligence EE (OBIEE)

SLC, UT

Nov 17-20

Scaling to Infinity: Partitioning in Data Warehouses on Oracle with Tim Gorman

SLC, UT

Nov 30-Dec 4

Oracle E-Business Suite R11i-R12.1.1 Technical Upgrade

Las Vegas, NV

Nov 30-Dec 4

Oracle 11i/R12 Applications  DBA Concepts and Administration

Las Vegas, NV

Dec 7-11

Oracle E-Business Suite R11i-R12.1.1 Technical Upgrade

New Jersey

Dec 7-11

Oracle 11g DBA Boot Camp I with Robert Freeman

New Jersey

Dec 7-11

Oracle 11i/R12 Applications  DBA Concepts and Administration

New Jersey

Dec 8-10

Introduction to SQL

New Jersey

Dec 10-11

The Best of Oracle PL/SQL Seminar with Steve Feuerstein

New Jersey

Dec 12-13

The Best of Oracle PL/SQL Seminar with Steve Feuerstein

Dallas, TX

Dec 15-16

Oracle Discoverer for End Users Training

SLC, UT

Dec 17-18

Oracle Discoverer for Administrators

SLC, UT

Dec 15-17

Introduction to SQL

Phoenix, AZ

Jan 11-15/10

Oracle 11g DBA Boot Camp II with Robert Freeman

SLC, UT

Jan 18-20/10

Introduction to Oracle APEX Iwith Scott Spendolini

SLC, UT

Jan 21-22/10

Introduction to Oracle APEX IIwith Scott Spendolini

SLC, UT

Jan 19-21/10

Introduction to SQL

Las Vegas, NV

Jan 25-27/10

Intermediate Oracle APEXwith Scott Spendolini

SLC, UT

Jan 28/10

Troubleshooting & Debugging APEX with Scott Spendolini

SLC, UT

Jan 29/10

APEX Installation and Administration with Scott Spendolini

SLC, UT

Jan 25-26/10

Oracle SQL Performance Tuning Tips and Techniques

Denver, CO

Jan 27-29/10

Advanced PL/SQL Tips and Techniques

Denver, CO

Feb 10-12/10

Advanced SQL Tuning with Tanel Poder

SLC, UT

Feb 22-25/10

Advanced Oracle Troubleshooting with Tanel Poder

Oakland, CA

Mar 23-26

Troubleshooting Oracle Performance with Christian Antognini

SLC, UT

May 17/10

Troubleshooting and Tuning Oracle with Jonathan Lewis

Boston, MA

May 18/10

Writing Optimal SQL with Jonathan Lewis

Boston, MA

 

Functional Classes

 

Oct 6-9

Oracle R11i/R12 Financials Business Process Overview

SLC, UT

Oct 6-8

Oracle Release 12 New Features (Functional) 

SLC, UT

Oct 19-22

Oracle Release 11i Procure to Pay

SLC, UT

Oct 19-20

Oracle Release 11i Accounts Payable

SLC, UT

Oct 21-22

Oracle Release 11i  Purchasing

SLC, UT

Oct 26-27

Oracle Release 11i Fixed Assets

SLC, UT

Nov 17-19

R12 AME

Albany, NY

 

Conferences and User Group Meetings - We'll Be There!

 

Oct 11-15

Open World

San Francisco, CA

Feb 16-18/10

RMOUG Training Days

Denver, CO


***Class Dates and Locations are Subject to Change.

Enough Already!
Our newsletter editor's dad, who is 82, likes to spend a little bit of time every day shredding his junk mail and then putting it into the pre-addressed stamped reply envelope and mailing it back in. That's one way to deal with too much information! We know how it is. You're on everybody's mailing list, and maybe you're just not interested in being there. Hey, we don't want to cram your mailbox unless you'd like to hear from us. So here's what you can do:

If you like our newsletter and think someone you know would like it as well, click on this box to forward it:
Forward to a Friend

And, if you're just not the right person for this newsletter, click on Safe Unsubscribe at the bottom of this newsletter and take yourself off the list.

And if you accidentally remove yourself from the list and want to be put back on, click here, enter your email and be sure to click Submit, then click Update Profile in the email that you receive.

And if we're just not hitting the topics that you want to hear about, either submit an article yourself, or click here and fill out our survey. We know people who know stuff - that's our claim to fame - and we'll get them to write about that stuff!
Contact us for Group Discounts and Additional Offers 801-486-6655