Skip to main content

Posts

APEXPosed 2012

If you missed out on this year's KScope conference, you missed out on a tremendous amount of APEX content.  You missed the APEX 4.2 preview and discussions from Oracle.  You missed great sessions on the APEX Listener, jQuery, Dynamic Actions, etc.  You missed the opportunity to actually meet some of the best APEX experts on the planet. Fear not! APEXposed has you covered! APEXposed is a 2-day conference focused exclusively on APEX technical sessions.  A subset of the presenters from KScope will be presenting their sessions again in Montreal, Quebec this September 11th & 12th at the Centre Mont Royal.  And the best part?  You can attend this 2-day conference for as little as $350!  That's less than $30 per session! If you register by August 15th and use the discount code ENKITEC, you'll get the $350 price.  If you wait too long, the standard conference rate of $450 will apply, but the discount code will still be good. Hope to see you in Montreal!

Like No Other

APEX pie charts allow you to limit the number of records that are displayed in the chart. This can be controlled by editing the Series and setting the Maximum Rows parameter. However, APEX will automatically add an "Other" slice to your chart, which represents all of the other data from the query. Consider this example: you have 10 different widget types, and 10 of each type for a total of 100 units. Here's some SQL to quickly create this scenario, if you want to follow along: CREATE TABLE widgets (widget_type VARCHAR2(10)) / DECLARE z NUMBER := 1; BEGIN FOR y IN 1..10 LOOP FOR x IN 1..10 LOOP INSERT INTO widgets VALUES ('Type ' || z); z := z + 1; END LOOP; z := 1; END LOOP; END; / If you wanted to sum them based on type and just see the first five types, you can use a simple SQL statement like this: SELECT NULL link, widget_type label, COUNT(*) value FROM widgets GROUP BY widget_type ORDER BY 2 Which will in turn, p...

Only the Beginning

Well, it's official.  I am no longer a small business owner. Starting today, I will be working for Enkitec , heading up their APEX products division.  Here, Doug Gault and I will be responsible not only for our existing APEX products - the freshly renamed eFramework and eSERT - but charted with bringing several more to market in the next few months. I'm as excited as they are about this acquisition, as the match makes a lot of sense.  A great deal of their business is based on services, so our APEX knowledge will come in to play daily there.  We'll also be able to get some additional resources for our products & training verticals, so expect to see more announcements on that front - some as soon as next week! You can read the official press release here or on our re-skinned site .

Page Zero Supernova

Page Zero in APEX is a powerful tool.  For the uninformed, it allows you to put APEX components  on it and have them render on every other page in your application - unless conditionally set to do otherwise.  Components supported on page zero include regions, items, buttons, branches, computations and dynamic actions. For years now, anytime that I needed a region or item or button on more than one page, I would put it on page zero, and if needed set the condition to display as needed.  It saved a lot of time, as I would only need to create the component once, and was a lot easier to manage as there was only one copy for multiple pages.  As you needed that component to render on additional pages, all that was required was a small change to the condition. Dynamic Actions, which were introduced in APEX 4.0, are in my opinion, the best feature to happen to APEX.  In a nutshell, they make JavaScript development - specifically of the jQuery type - declarative.  You can specify a number of ...

Full of CRUD

Joel Kallman has an interesting and amusing reaction to a recent Gartner paper authored by Mark Driver posted here .  After reading Joel's reply and Mark's paper, it got me thinking a bit about what was both in and not in the Gartner review and conclusions regarding Oracle Forms migration paths. But before that, let's consider the longevity of Oracle Forms.  Oracle has pledged support for Forms time and time again, and despite the negative stigma that Forms usually drags along with it about being an older technology, it's a perfectly good place to leave any existing applications and perhaps even build a few new ones.  Thus, if you have no immediate need to urge to migrate, then simply don't do it.  In fact, a new version of Oracle Forms - 12c - is already in development and will integrate with Fusion Middleware 12c. If you're a Forms customer and for whatever reason want out, there's a number of different options that you can take, all of which are highli...

APEX UI Lessons - Part II

As soon as I posted this entry yesterday, I thought of a few additional "rules" that probably should have been included.   Pitor's comment also spurred on an additional rule.  So without further adieu, here they are: Standards Learn 'em and stick to 'em.  Period!  Most modern browsers do pretty well with them, so the closer you are to them, the better off your site will be in the long run.   Ignore Old Browsers When Possible Take a page from the Apple playbook here, and simply stop supporting browsers that are too old, despite the fact that they may still be in use.  (I'm looking at you IE 6 & 7…)  Be careful with this one, as you may have no choice but to support some of the older browsers, based on your customers or potential customers.  We wanted to be sure to provide support for at least IE 7 and above, and that decision did add some time and effort to our design process.  We did this because some of our existing and potential customers - at least...

APEX UI Lessons

There's something to be said for corporate standards for browsers. Sure, it's almost always some flavor of IE, but at least you're only charged with making sure that your application runs and looks good on one browser on a single OS.  However, when designing a product, you simply don't have that luxury anymore. Your application must now not only run but look good on all popular versions of popular browsers: MSIE, Chrome, Firefox and maybe even Safari. And if you think that these browsers behave exactly the same on different operating systems, you're completely wrong. As we put the final touches on sumnevaSERT v2.0, I wanted to share some of the experiences that I went through over the past few months with regards to user interface - mostly so that you can learn from my mistakes and plan accordingly. Design and stick with a Design Pattern This is the most important step. If you skip it, or do it poorly, it will flow throughout your entire project and ...

To V or not to V...

Earlier today, I tweeted the following: After this morning, I don't think I will ever use the "v" function again. #orclapex I wanted to qualify what I meant by that, since sometimes you only see one side of the conversation on Twitter. Also, it's been a while since my last post, so this give me the opportunity to remedy that as well. The APEX "v" function works, and works quite well. For those who have not used it, the "v" function is an APEX-specific function that when you pass an APEX item to it, it will return the value of that item for a specific user session. What's cool about it is that it also works from named PL/SQL program units, as long as they were initiated from an APEX session. Thus, you can write a PL/SQL package that takes in few, if any parameters and still can refer to items that are set in the APEX session state via the "v" function: PROCEDURE foo IS l_customer_name VARCHAR2(255) := v('P1_CUSTOMER_NA...

Where Did You Go?

Not only is the title of this post a great song by one of my all time favorite bands (extra credit if you can name them w/out using Google) but is a question that some of you have been wondering... Most of my time the past few months has been spent on designing & developing sumnevaSERT - a security evaluation tool built in APEX for APEX. sumnevaSERT is the result of working with many customers over the past few years and realizing that they spent very little time reviewing the security of their APEX applications. They all had the same exact reason for neglecting them: no time.  sumnevaSERT makes it blindingly simple to evaluate an APEX application for a number of potential security flaws. It slices through the APEX metadata and produces a single score based on what it finds. You can then drill into any of the categories to see details and advice on how to fix what it finds.  Despite releasing it today, we've already got a list of exciting new features and enhance...

ODTUG Webinar: APEX Team Development & Agile PM

Patrick Cimolini will be conducting a FREE webinar on Tuesday, November 16th at 3:00PM EST entitled "APEX Team Development and Agile Project Management" sponsored by ODTUG. Here's the abstract for the session: The release of Oracle Application Express (APEX) version 4.0 has brought the product to a high level of maturity. This maturity is clearly demonstrated by the addition of the Team Development module. Team Development captures features, to dos, milestones, and bugs. Feedback from all hands-on stakeholders (including end users) is captured by the Feedback feature that can be installed declaratively in one or two minutes. This Webinar briefly describes Team Development and shows how it can be configured to work successfully with an Agile Project Management methodology. If you haven't seen Patrick present at ODTUG before, then you can't miss this!  His knowledge of APEX is only surpassed by the wisdom that he has about project management in general. You can sign...

New Oracle APEX Hashtag: #orclapex

I saw a Twittersation - or however you say Twitter + Conversation - between Martin D'Souza & Dan Mcghan about a potential new hashtag for Oracle APEX. This, in my opinion, has been a long time coming, since #apex will bring back anything from Oracle APEX to the upcoming APEX show in Las Vegas to Apex, NC to even a tattoo shop. Martin suggested #orapex, which could likely get spelled #oraapex or #orapex, and thus added to the confusion.  Dan then chimed in with #oralcle_apex, which I thought was a spot long and replied with #orclapex. I guess I won, because in the time it took to get my kids to bed, there was a blog post as well as other Tweets in in multiple language, thus further justifying its logic!  And if it's on the Internet in not just one, but TWO places, then is HAS to be true! Thus, while the iron is hot, might I be so bold to propose a new hashtag for Oracle Aces: #orclace.  The current one - #aced - pulls back more high school kids proclaiming victory over a ...

APEXposed 2010 Dallas Discounts

The APEXposed conferences are almost here!  Brussels will kick off first on October 28th and Dallas will follow shortly after that on November 10th & 11th. If you're on the fence about attending, then perhaps this will push you over:  If you sign up with the code APEX, you will get $150 off of the registration fee!  And one of the first ten people to use the code APEX will get a completely free registration! That's only $450 for ODTUG members and $500 for non-members.  Remember - not only will you get to see some of the top APEX experts in the industry, but you can also attend any session in the PL/SQL track - all for one price!  Hope to see you there.

Comment Moderation Enabled

Hate to do this, but I have to turn on comment moderation.  Too many spammers out there, trying to convince me that my blog is the best blog in the world! I'll still approve anything that's legitimate; just want to see if I can get a handle on the noise...

An Oracle Hat-trick!

I'm sure that Kris Rice will appreciate the Hockey analogy, as his team has brought not one, not two - but THREE EA releases to market this week with the addition of the APEX Listener EA that was just announced !

SQL Developer 3.0 EA Released

On the heels of the Oracle Data Modeler tool, SQL Developer 3.0 EA 1 was just released to the wild.  There's quite a number of new and/or enhanced features - most of which seem to be quite useful.  A complete list of the new features can be found here . My favorite thing so far?  It uses a fixed-width font in the data grids. It's the little things... However - a feature that is noticeably absent is the ability to automatically apply the APEX refactoring results.  It would be nice if that after it generated the corresponding packages, it could replace all of the PL/SQL with the stubs to call each procedure.  That would make refactoring truly useful, especially in environments with a lot of APEX applications that need to be better managed.

SQL Developer Data Modeler 3.0 EA

Oracle just announced the Early Adopter release of SQL Developer Data Modeler.  You can download it from here:  http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html In case you missed it, Oracle is now offering SQL Developer Data Modeler for free, which is a tremendous savings from the original price tag and great for the database developer community. As an added bonus, this release actually comes with an actual icon that when double-clicked, launches the application.  A far cry from having to hand-code your own script. :)

Ready for OpenWorld 2010

I can't believe that another year has gone by already!  It's time to head out to San Francisco and spend a week with 40,000 other Oracle developers, DBA, managers, vendors and all of the people who work hard behind the scenes to make it all happen! All of the Sumneva folks will be busy this year, too, as we have quite an aggressive presentation schedule.  You can have a look at it here - we did update some of the Unconference times & locations. From the sounds of all of the Oracle Ace Directors , it seems like there will be many interesting announcements over the next few days. And if you will be in San Francisco, don't forget about the APEX meetup on Tuesday evening.

A Better Method

Just posted a new Tip over on sumneva.com that deals with quickly creating a package that can manage all DML transactions against a table or tables. I came across this feature in the days of APEX 4.0 EA1.  I immediately thought that it was a new APEX 4.0 feature - until I checked 3.2, and it was there too.  Basically, this allows you to easily create a table API which can be used to replace the built-in APEX DML processes. Why would you do this? If you wanted to create a more secure architecture, you may want to have a tableless schema - thus, the built in processes will do you little good.  This API can live in a separate schema, and facilitate all DML calls used to manage your data. Since it's in a PL/SQL package, you can easily add additional security or data integrity checks before performing any of the DML transactions - another major reason to consider this approach.

Software. Hardware. Complete.

Looks like Mark Hurd's unemployment stint is coming to a close, as it was announced that he would be joining Oracle this past weekend.  He will be replacing Charles Philips, who has since resigned his position.  It seems that Phillips had been looking to leave for some time , but had decided to stay through the Sun acquisition. Sure, there was a lot of controversy surrounding his departure, but even HP itself concluded that it could find no hard evidence of wrongdoing.  And as for the falsified expense reports, I think that Larry Ellison summed it up quite simply when he said that no CEO fills out his own expense reports, so if there was fraud, it was done by someone else. All issues aside, this move seems to put Oracle on a path to go squarely after IBM, as no doubt that Hurd won't be the last ex-HP employee making the switch to Oracle in the next few months.   Hurd's experience in hardware is something that Oracle needed in order to parlay the Sun hardware acquired in the...

Anonymous Pro

Anonymous Pro is a fixed-width font developed specifically for developers by Mark Simonson . Best of all - it's free under the  Open Font License . From it's home page:   "Characters that could be mistaken for one another (O, 0, I, l, 1, etc.) have distinct shapes to make them easier to tell apart in the context of source code." I installed it on my Mac and set SQL Developer's default font to it, and the text is a little crisper than Courier, my previous default. Anyone else have a favorite "coding" font?