Thursday, May 14, 2009

Another weird APEX video

I came across another video to promote Oracle Application Express. At least I think that is the goal, but as I don't understand the language I'm not sure about it ;-)

What I find a bit strange is that the author of the video doesn't have a high-speed connection to his APEX instance. So whenever he clicks it takes some time to load the page. Just for the people who didn't see APEX yet, this is not normal. There is definitely something wrong at his end or he must have a very slow line.

Anyway I like there are more videos coming out... actually I'm working on a couple too ;-)

Sunday, May 10, 2009

Another fun APEX video

I just came across a blog post of Jeff Erickson, Tech Editor at Oracle Publishing where he shows a nice video. An "Excel Master" becomes an "APEX Master"! djing!

Thursday, May 07, 2009

Collaborate 09 - Thursday

The final day... only one session to follow, one session to do and then flight back to Belgium.

The first session of the day was by Francis Mignault. He presented "How to build a multi-tenant SAAS application with Oracle Application Express".
I liked the presentation a lot. He started globally, but also went into the technical part. He showed some really nice things, like their integration of jquery in their application. Some people have doubts about performance and dynamic sql, but Francis showed once more APEX scales well. He's getting very good performance on modest hardware and is using dynamic sql a lot. He creates every page depending on the organization. So one APEX application for multiple customers. It looks like they have all their own application, but underlying it's the same one.

Next it was my turn to present "What happens on an APEX Page?"
I talked about how an APEX page is structured (page - multiple regions - multiple buttons and items and navigation for your page flow) and how an APEX page is working. A lot of people didn't know (or where not conscious) the page has two phases: a show (rendering) phase and an accept (processing) phase.
You can also view your page in different ways. The picture on the right shows you the page in the Events view. These steps you'll also see if you run your APEX page in debug mode. At the end I demoed some more advanced techniques; for ex. how you can track things if your page does AJAX. The session got also recorded but it might be hard to follow certain parts (especially demos) if you don't see what I'm actually doing on the screen. I'm also asked to do a webinar of it, but there is no date etc for it yet.

After having some final lunch we went to the airport. I'm on the same flight as a lot of other Europeans of the conference for ex. Jonathan Lewis, Mark Rittman and John Scott.

I look forward to see my family again...

Collaborate 09 - Wednesday

Before noon I didn't do that much. I stayed in the nice lobby of the Peabody Hotel and worked a bit. At a certain moment the music started to play and ducks came through the hall. That was fun to see. Apparently every day there is a duck ceremony in this hotel.


In the afternoon I went to John Scott's session "Dispelling Myths About Oracle Application Express".
I've already seen the presentation a view times, but every time John puts different jokes in. He had some good laughs. His session got also recorded and streamed, so you might have seen/see it online. John covers the most frequently "untruths" he has heard about APEX. He will also do this presentation again at ODTUG.


The next session was "APEX Interactive Reports: The Good, The Bad and The Ugly" by Karen Cannell.
If you as a developer or business user wants to know how to get most out of Interactive Reports, this presentation is worth to follow. Karen had a theme (The Good, The Bad and The Ugly is also a movie) and she even played the music of the film :-)

In the evening there was the "big" party. We were invited to Universal Studios.
It was my first time at Universal Studios and there were some pretty good attractions. One of my favorite was the Hulk and Spiderman. Universal Studio is divided in different parts and these parts are all by a certain movie theme.
John and I spend most of our time with Borkur and Mark Rittman. Later that night we bumped up to Karen Cannell, Crystal from ODTUG, David Peake, "RAC-lady" and many others.


It was a good night with a lot of fun, the only pity was we had to pay for our own drinks and food. But not having to queue to get onto an attraction made it good.

Tuesday, May 05, 2009

Collaborate 09 - Tuesday

It looks like my jetlag is not over yet as I woke up at 4 am again.

It's a habit to get at least once Egg Benedict as a breakfast while I'm in the States, so that is what I took today. It was not bad, but I think the Eggs Benedict in San Francisco was a bit better.

My first session of the day was "Introducing SQL Developer Data Modeling" by Sue Harper.
She gave a nice overview and demo of the possibilities of this Data Modeling tool. I believe this product is worth your try. You can both create a logical, relational and physical diagram or you can reverse engineer an existing database. The product is currently in beta, but it shouldn't take long anymore before it hits production. She also mentioned SQL Developer Data Modeling will be available as a stand-alone product and as an extension for SQL Developer. The first production release will be without a repository, instead it uses XML files.

The next presentation on my list was one of my favorite presenters Steven Feuerstein. Steven talked about "Coding Therapy for Software Developers".
You can actually download this presentation (and all his others) on Steven's ToadWorld website.
I liked his presentation a lot and he hit the nail on the head in a lot of his quotes. One I really liked was: "The fastest way to get the job done is to take your time." For ex. in APEX you can quickly create applications, but if you didn't think about the data model or anticipated the project and the customers future requests that might cause you problems in the future. Of course this counts for every development language, it's just so that with APEX you happen to see it quicker ;-) But that quote counts in real life too. We have some builders building our new house and I found their way of working very different than mine... I want things to be perfect, but for them good is good enough. The problem is their good is even not good enough for me, so they ended up redoing a wall three times! Hopefully it reminded them to the saying "more haste less speed".

In the afternoon we had the "APEX - Ask the Experts Panel". The panel existed out of Tony Jedlenski, David Peake, John Scott and myself. As we were with a small group (around 20 people) it was a very interactive meeting with lots of good questions.
Here are some of the questions with a brief answer.

"Dr. Paul Dorsey mentioned in his presentation he had questions (doubts) about the Security and Dynamic SQL in APEX."

As with any other development language you can also develop insecure APEX applications. But APEX helps you with making your application more secure. APEX already gives you some out-of-the box security options like Authentication, Authorization and SSP (session state protection). But you can leverage all the security options of the Oracle database as well for ex. if you don't want to allow certain rows or columns to be visible you can use VPD (virtual private database). Paul also said there is no development tool secure enough for him, but APEX will be one of the most secure once around.
Concerning the Dynamic SQL, John Scott has a nice presentation about Dispelling Myths about Oracle Application Express where he shows some statistics about APEX apps... at the moment the use of Dynamic SQL is no issue. But it's recommended to use a PL/SQL package in the database than to put all the PL/SQL code inside an APEX process. In that case it can be pinned by the database etc. It also makes debugging easier.

"When I've issues with APEX where do I go?"

The APEX Forum on OTN is a great place to ask you question first. A lot of smart people are in the forum to help you and it's rarely you are the first to come across a problem. If it tends out you are hitting a bug it's good to also log it in Metalink (create a TAR). If you want a new feature in APEX, there will be an application to log these in the next weeks.

"How do you do configuration management for your APEX apps?"

If you define some working practices that should help you a lot. For ex. you can always use the same directory structure for your javascript files, css files etc. You can also use developer comments in APEX to help you document your application. If you are with a larger team of developers naming conventions and an agreed why of working is a good idea.

"In an Interactive Report I've problems with large datasets"

We would need to have a reproducible case, so the person of that question will create an example. John tried an Interactive Report with 1 million records and that worked without a problem, so we'll see about that... If you have found this too, please put a comment on this blog.

David also talked a bit about APEX 4.0. One of the things I heard for the first time was that they are looking to make multiple Interactive Reports available on the same page (out-of-the-box). You find more about 4.0 in the Statement of Direction.

Later that afternoon John Scott had a book signing session and he sold 100% of his books (Pro Application Express) and signed every single one!

At night John, Tony and I had diner at Maggiano's Little Italy. It was a nice and relaxing evening and I enjoyed being outside (we had a table on the patio).
When walking there I saw a very strange building! You see what is wrong with it?

Monday, May 04, 2009

Collaborate 09 - Monday

As usual I woke up at 4 am, but I'm still doing good.

Today I started slow... I didn't follow any sessions before noon.

My first session of the day was "Running Oracle in the Amazon EC2 Cloud" by Tony Jedlinski.
Tony described how he created his Oracle Enterprise Linux instance with Oracle Database XE on Amazon EC2. His presentation was based on the white paper of Justin Lokitz, but Tony extended it with the new Amazon UI. I liked the presentation as he brought the message at a nice peace and I think most of the people knew how to get started now.
We have been playing with Oracle and APEX on Amazon too and so far everything went well. We are not to far off to actually use it for production hosting. Another tip I can say is that next to the UI Amazon provides there is also a nice plugin for Firefox called Elasticfox.

The next session I attended was "Oracle Application Express 3.2 Forms Conversion" by David Peake. I've seen that presentation many times now, but I always find it interesting to see how the public reacts to the presentation, which questions they have etc.
David gave a quick intro into APEX as some people where completely new to it and then started to talk about the conversion tool. He also demoed it of course!

I really looked forward to my last session of the day: "An Architectural Review of Application Express" by Dr. Paul Dorsey. I have a lot of respect for Paul, he's a very knowledgeable guy in different areas especially PL/SQL, Forms and JDeveloper. So I wondered what he thought about APEX. Paul is also an advocate of thick databases and he developed a product called BRIM to support that idea. APEX is living in the database, so that is inline with his view of thick databases. Yesterday I was sitting next to him at dinner and we had a nice talk about a project he's currently doing in Ethiopia. There he has the challenge of delivering applications with very limited bandwidth. His BRIM product is much lighter (transferring data) than any other development tool, including APEX, so I knew a bit more about his background.


I did enjoy the talk and he raised some very interesting points, but on some things I have a different view on. My impression was he reviewed APEX as is for ex. he said that an APEX page can only be linked to one table, which is not completely true. If you base the standard process on a view and you use instead of triggers as I described here, you can support multiple tables. So Paul looked at everything APEX allows you to do with the wizards and how APEX is behaving out of the box, but nothing more. So in that respect I can understand what he was saying. But I see different levels of people using APEX:

  • Level 1: You just use the wizard in APEX and are able to be productive with it
  • Level 2: You know also the Oracle database including SQL and PL/SQL and include that knowledge into you APEX applications (APEX is living inside the database so you can use all the database features)
  • Level 3: You know also more about web development like javascript and css and use that in your APEX applications
  • Level 4: You know also web 2.0 and use AJAX, jquery, json and other plugins to get exactly what you want
Paul talked about staying in the APEX sandbox (level 1) and don't try to do other things with it. Of course it's true that you need to have (other) knowledge to achieve what the wizard is not doing for you, but I don't agree you should stay in the sandbox. APEX has some nice API's you can use, so why not doing it? If you first look at APEX you might not know about them, I agree with that, but if you follow training and/or you ask more experienced APEX people to coach you, it doesn't take that long to know how to achieve other things.

Although Paul was sometimes very critical on APEX, he didn't flame it. He even said he liked APEX and it's a great tool in some cases, but does not full-fill in others, which I can agree with. You need to use the tool that fits within the projects. And he made a very nice quote at the end of his presentation: "APEX is frequently used to prototype or “get something out the door quickly” until the “real” application is built using some enterprise-level took architecture. APEX systems are typically completed in a few months and two years later, people are still waiting for the “real” application to work."

Paul is doing this presentation again at ODTUG this year, so I'm interested to know other people's reactions.

After the presentation I went to the Exhibition hall and the party to get some drinks, food and had talks with some nice people like Sue Harper, OracleNerd (Ched) and his wife, David Peake, Tony Jedlinski, Jeremy Sneyder and many others...

Sunday, May 03, 2009

Just arrived in Orlando

Just checked into the Peabody hotel. At first sight it's looking like a nice place to stay.
It's very hot in Florida, but probably inside it will be cool (due to the air conditioning).


The flight was really nice, Business Class was worth it. I got some good sleep and it's much more relaxing laying down in a "sofa" than sitting in a seat.


Now I'm going to register, fresh up a bit and then start the conference...

Flying to Orlando

Today I'm flying to Orlando, Florida for IOUG Collaborate.
It will be a long day today as my train to the airport left already at 5 am. I'll arrive in Florida at 3.30 pm, that is 9.30 pm Belgium time, so a 16,5 hours journey.

I tend to work on the flight, that's why I've two batteries for my laptop, but that is even not enough to hold till the end, so a while back I ended up buying an airport power cable. If you travel in World Traveler Plus you have a power connection in your seat, which works great.

At the moment I'm waiting for my connecting flight in Gatwick and I got a very nice surprise from BA... I got a free upgrade to Business Class!
I already looked up the seat I have (sitting in 3rd row) on SeatGuru (see picture). I'll have a real bed (I think) and I'm very curious to see how different flying Business is :-) I'll let you know in 10 hours time!

It's always good to adapt to the local timezone as quick as possible so my evening is fully booked. I'll start with the Welcome Reception (there will be an APEX table there) and a bit later I'm going to a restaurant called the Redrock Canyon Grill. Mike Riley, President of the ODTUG board, was so kind to invite me.

The next days will be busy again...

Tuesday, April 21, 2009

Amazing things happen

In the last days I got shocked a few times... but not in a bad way.

It started a week ago when I saw Susan Boyle chasing her dream of becoming a professional singer. If you didn't see her performance on "Britains Got Talent", you really have to watch it!
She doesn't look like and everybody was laughing when she came on stage, but once she started to sing, the crowed went bananas! It was stunning!


The next I saw was an incredible goal of Christiano Ronaldo in the Champions League game against Porto. If you have ever played football yourself, you know this is an unbelievable shot.


And then yesterday the announcement that Oracle is going to buy Sun.

Oracle is growing at the speed of light. When I thought they would stop buying companies, every other month there is a new announcement. But buying Sun has huge implications as now Oracle can deliver everything; hardware, OS, database and software.
Another interesting note is that MySQL becomes a database from Oracle now. And what about Java; will that be renamed to Oracle Java?
I'm not sure what this will bring for APEX, maybe it can replace all the MySQL/PHP solutions? My guess would be Oracle will offer a migration project for these solutions to the Oracle DB as that will bring more revenue.


Anyway, in times of economic crisis, amazing things are happening!

Monday, April 13, 2009

New Anychart Integration Kit for APEX and website

We're happy to announce that a new version of the Anychart Integration Kit for APEX is available now.
This release works with Anychart 5.1.2 and 5.1.3 and it fixes some issues of previous releases.

As there was a lot of interest in the product, we decided to create a new website which has all information in one place. In the FAQ we explain how things work, there is an installation section and an explanation how to get support and lots more...


At regular times we offer Webinars (online training) about APEX and charts. The next one is already planned for next week! (see the Webinars section on the site)

As with the previous site, a lot of demos are available. The integration kit helps you to make nicer charts. It not only gives your old standard APEX charts a cleaner look and feel, but it also allows you to create other types of charts. A complete list of charts you find on the Anychart website.

Next to the charts we included a section for Maps, Gauges and Gantt charts. These sections we'll update regularly. We plan to offer more webinars about these charts as well as how to create interactive dashboards.

We also created a section to log Bugs and Enhancements for this integration kit. If you go to the Support section you'll see a link at the bottom. It allows you to log your own issue or to have a look at other known issues.

We hope you like this new release and the new site!

Have fun with it!

Monday, April 06, 2009

My participation in ODTUG Kaleidoscope 2009

John Scott, Scott Spendolini, Patrick Wolf and myself prepared a really good APEX agenda for Kaleidoscope 2009. It will be the biggest APEX event so far! If you are quick you can still profit from the early bird registration.

The plan was I would also do a couple of presentations and some Panel discussions, but with pain in the heart I need to announce now I won't be able to join you for ODTUG 2009 in Monterey. I tried to postpone the decision as long as I could but it's not realistic to wait longer...

My wife is giving birth in the beginning of July and the risk to miss that is too high, especially because Belgium is so far away. Next to that it would be too hard for my wife to stay alone with our son.

So I'm a bit sad I'll miss ODTUG this year especially as I love ODTUG and APEX so much! I always like to meet all the people I meet on the internet. But I comfort myself I'll meet some of you at IOUG Collaborate in May or Oracle Open World in October this year... and I'm sure ODTUG next year will work further on the success of this year!

To be honest it was a really hard decision for me, but when I saw the below picture I knew there was only one right decision... I hope you understand.

Tuesday, March 31, 2009

Interesting sessions @ IOUG Collaborate 09

This year IOUG Collaborate 09 will be held in Orlando, Florida. This conference is one of the three conferences I go to in the States. ODTUG Kaleidoscope is more towards developers, Oracle Open World is more about the latest and greatest of Oracle, where IOUG Collaborate is a bit a mixture of all Oracle technolgies and applications.

There are about 10 APEX Sessions, which allows me to watch some other things as well.
Below you find the sessions I'll probably going to look at. There were some interesting sessions overlapping, which is a pity. There is also Tom Kyte on Sunday, but I'll just have arrived then.



Session NumberTitleSpeakersTrackCategoryPresentation PreferenceEvent DayPresentation Start Time
Q309Oracle in the CloudBill Hodak (Oracle)DatabaseVirtualizationQuick Tip (30 minutes)Monday, May 4, 200912:00 PM-12:30 PM
106Running Oracle in the Amazon EC2 CloudTony Jedlinski (Konoso LLC)Architecture and InfrastructureDesign/Configuration (hardware, storage, network)Technical Session (1 hour)Monday, May 4, 200901:15 PM-02:15 PM
558Oracle Application Express 3.2 Forms ConversionDavid Peake (Oracle)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Monday, May 4, 200902:30 PM-03:30 PM
516An Architectural Review of Application ExpressPaul Dorsey (Dulcian, Inc.)Developer
Technical Session (1 hour)Monday, May 4, 200903:45 PM-04:45 PM
520Managing User Preferences in Application ExpressDavid Scott (Intec Billing)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Tuesday, May 5, 200909:45 AM-10:45 AM
136Introducing Oracle SQL Developer Data ModelingSue Harper (Oracle)Architecture and InfrastructureData Modeling (e.g. Normal Form, Designer, CAD, UML)Technical Session (1 hour)Tuesday, May 5, 200909:45 AM-09:45 AM
370Coding Therapy for Software DevelopersSteven Feuerstein (Quest Software)DatabaseBest PracticesTechnical Session (1 hour)Tuesday, May 5, 200911:00 AM-12:00 PM
Q342A Free Stress Testing Tool From Oracle!Debra Scarpelli (The Cornflower Group)DatabaseTool Evaluations (Oracle and Third Party)Quick Tip (30 minutes)Tuesday, May 5, 200912:15 PM-12:45 PM
343APEX - Ask the Experts PanelDimitri Gielis & John Scott (Apex Evangelists)APEX SIGAPEX SIGTechnical Session (1 hour)Tuesday, May 5, 200901:30 PM-02:30 PM
528Developing secure mashup's with ApEx.Marinus Kuivenhoven (Sogeti)Simon Boorsma (Sogeti)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Tuesday, May 5, 200903:15 PM-03:45 PM
531SQL/XML For DevelopersLewis Cunningham (TUSC)DeveloperDatabase Programming (e.g. SQL, PL/SQL, SQLPlus)Technical Session (1 hour)Tuesday, May 5, 200904:30 PM-05:30 PM
534Oracle11g New Features for DevelopersDan Hotka (www.DanHotka.com, LLC)Developer11g Features (for Developer)Technical Session (1 hour)Wednesday, May 6, 200908:30 AM-09:30 AM
523(No?) Visible Means of Support(ing Objects?) in ApEx?David Scott (Intec Billing)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Wednesday, May 6, 200909:45 AM-09:45 AM
539PL/SQL Collections: Processing Datasets Your WayMichael Rosenblum (Dulcian, Inc.)DeveloperDatabase Programming (e.g. SQL, PL/SQL, SQLPlus)Technical Session (1 hour)Wednesday, May 6, 200911:00 AM-12:00 PM
Q540Debugging in SQL DeveloperLewis Cunningham (TUSC)DeveloperDatabase Programming (e.g. SQL, PL/SQL, SQLPlus)Quick Tip (30 minutes)Wednesday, May 6, 200912:15 PM-12:45 PM
546Dispelling Myths About Oracle Application ExpressJohn Scott (APEX Evangelists Ltd)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Wednesday, May 6, 200903:15 PM-04:15 PM
545APEX Interactive Reports: The Good, The Bad and The UglyKaren Cannell (Integra Technology Consulting)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Wednesday, May 6, 200901:30 PM-02:30 PM
549How to Build a multi-tenant SAAS application with Oracle Application ExpressFrancis Mignault (Insum Solutions)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Thursday, May 7, 200908:30 AM-09:30 AM
552What happens on an APEX Page?Dimitri Gielis (Apex Evangelists Ltd)DeveloperApplication Express (i.e. ApEx)Technical Session (1 hour)Thursday, May 7, 200909:45 AM-10:45 AM


On Sunday there is a Welcome Event and IOUG created some tables around certain technologies. I know some people (John Scott, Tony Jedlinski, myself, ...) will be standing at the Oracle Application Express (APEX) table! It's a great time to meet other APEX minded people then and have some drinks and informal talks together...

I look forward to meet you in Florida!

Friday, March 27, 2009

APEX Column in OGh Visie

OGh Visie is a Dutch magazine of the Oracle Benelux User Group. They publish their magazine three times a year and it contains articles about Oracle products... and it's free.

In their last magazine "OGh OBUG Visie 2009 Voorjaar" they asked me to write a column about APEX. I wrote about the use of APEX and what's coming in the future. If you understand Dutch feel free to read the online version.

Roel Hartman also wrote an article about APEX 3.2 in that magazine.

Monday, March 23, 2009

CASE in Interactive Report (APEX)

In APEX 3.1.2 there is a problem with the CASE statement when you use it in the Compute function of an Interactive Report. You might see following error:


The above issue got fixed in APEX 3.2, as you can see here. So if you want that functionality, it's worth upgrading to APEX 3.2. There are more smaller fixes in like these and a number of security enhancements, so I recommend to use APEX 3.2 if you can.

But... when you try this CASE statement (use of smaller than, larger than or BETWEEN) you get an Invalid computation expression message.


Joel Kallman told me this is a bug (Bug 8347332) and it will be fixed in the APEX 3.2.1 patch set. The Apex development team was too restrictive in the operators they allow inside this type of expression.

If I can ask for one more enhancement: let us also be able to use Enters, because if I type some more when clauses it becomes a very long string. It would be nice if I could structure it like in the next screenshot. It would also nice if we could make that Computation field resizeable. As Patrick is now in the team, he already did that in his ApexLib and as JQuery will be in APEX, I hope to see it in 4.0 ;-) Thanks so much!


A workaround at the moment is to include the case statement directly in your SQL statement.
If you can't do that (like our client wanted to specify the above dynamic), you need to build it yourself or search for an alternative function that does work.

Tuesday, March 17, 2009

Marketing video of Oracle Application Express

Jeff Erickson of Oracle create a "one minute video" to promote APEX 3.2.

I expected to see 1 minute of video, but it was 2 minutes 22 seconds long ;-)

There is not that much technical info in, but if you have only 3 minutes to convince your customer or manager about APEX, you can quickly show that video.

Hopefully he wants to see more, so he makes some time for you to do a real demo. For me that is still the way to convince people about APEX... show it to them!

Monday, March 16, 2009

Worse things happen, but you have options

One day you find yourself in a situation you have to change something in an application and the worst happens... after the change the application doesn't work anymore.

It happened to me... it was a very small APEX application I created for my wife a long time ago. The application allows her to give points on the work of her students. At that time I created a tabular form on top of a view. The underlying tables get updated by an instead of trigger, like I describe here. Of course I forgot about the trigger, so when she asked me to add a field to the view, I did a replace of the view with the new definition.

I guess you know what happened? My wife wasn't able to update the points anymore because with the replace of the view the trigger got deleted. Nothing to worry I thought, I'll use a script to recreate the trigger. If I could find the script now! I created that app very quick and on the side and didn't treat it as a real project, so my source was not in source control.

Then you are happy you are inside the database with APEX as you can use all the features to recover from "disaster" or better human errors. So I thought to use flashback... but how does that work with a view and a trigger linked to that? I then thought I would find my object in the recyclebin of the Oracle database, but nothing there either...

What else can I try... in APEX you have the SQL Workshop and I sometimes use that to do some quick things and I know there is a history in there. The history is really handy in cases like this, but I was unlucky, the code was not there...


Next to try on the list... in SQL Developer there is also a history of the commands you do. I could go back in the SQL history till January, but that was not far enough. I guess there is a preference in SQL Developer to say how much it needs to remember, but I never touched that. Or it must have been with an upgrade of SQL Developer that I lost some history?
Nevertheless I'm so happy you can use F8 or go to View - SQL History and see all your statements.


The only thing left on my list was to restore a backup or a dump. In my case I kindly asked John to get a copy of my scheme like it was the day before.

But then you see the trigger was not there either ;-)

My wife only uses the application a few times a year, so I probably did another change on that view which had caused the trigger to disappear earlier. Finally John found a backup of a few months ago where the trigger still existed, so I could use that. Thanks again my friend!

So lessons learned:
-) Always treat your project as a real project, even if it's very small
-) Save your scripts, if it's not in source control, at least make a backup when you finish development (or even during development)
-) Use the features of the database if things go wrong
-) SQL Developer and APEX have a SQL history, which can save you hours
-) Get a good hosting provider in case all of the above goes wrong. Make sure backups are taken and kept (for a long time) and keep friendly with them
-) and if all that doesn't help, make sure you have a good memory so you can recreate it, because it seems that will be your only option

Thursday, March 12, 2009

Free APEX Training


John already blogged about it, but I thought to remind you about it again.

During days of economic crisis people told us their managers are not keen to spend money on trainings, so we are looking for ways to make everybody happy. The person who wants to come, can come and the manager who doesn't want to pay, only pays the absolute minimum.

We have been shuffling with ideas about discounts for 2 or more persons of the same company (we still might do that later) and about some free places for our training.

So the idea we had, was to give a free place on our upcoming APEX Training course to the person who can give us the best reason why they deserve the place.

There are very few rules, only -

  1. Your reason must be 50 words or less
  2. You must be able to attend the course
  3. Our decision is final and will be based purely on the one that makes us laugh the most
  4. The winning entry (and any other notable ones) will be displayed on our site/blogs
Email your submissions to training@apex-evangelists.com with a subject line of ‘Free Place Submission’ (or click here to have it auto-filled for you). I don’t mind you also post it as a comment of this entry, but then also send it via mail as that is where we will base the final decision on.

Monday, March 09, 2009

Is APEX still worth looking at?

A while back I got following question:

I am a Oracle Developer and wanted to ask you what is the scope of APEX in the near future. Forms and Reports are still very much alive and APEX jobs are not that much I have seen in the US market. APEX is quite old now (about 3 to 4 years old). What is your view on it?

I would appreciate your input. I have invested huge amount of time in APEX as I was excited as you are with APEX technology and now I feel was it really worth it? Is the future of Forms and Reports -> APEX or is it J2EE. I mean Forms/Reports -> to -> APEX or Forms/Reports -> to -> Jdeveloper (J2EE). I personally like APEX much better.

Apparently still a lot of people are struggling with this question, so I decided to do a post about it, but I'll break down the question in different parts.

Is Oracle Application Express (APEX) old?

It's not "new" anymore, the first public release was in 2004. But is it bad that APEX is getting older? With every new release we got a lot of nice features which made APEX more mature and worth looking at. The Oracle database is very old too, but with every release new features got introduced. The database is also doing a lot of things for you now, which in the past cost you a lot more effort. I see APEX like that, with every new release the development of an application is made easier for you and you get more possibilities to make your application even nicer.

Are there jobs for APEX developers?

I guess we, APEX Evangelists, a company 100% dedicated to APEX, proves you can make a living out of it. Day in day out we work with APEX with many different customers. Development, support, training and consultancy are our main activities. So I can definitely see a job for you in this domain. Sure .NET and Java are asked very much and the APEX market is smaller, but it's growing every day...

What is the future of APEX?

APEX 3.2 got released a couple of weeks ago, which includes a Forms to APEX conversion tool. The next major release of APEX is 4.0 which will include some very nice web 2.0 features. Some of the highlights of that release will be Updateable Interactive Reports (improved tabular forms), Websheets, an APEX listener and Dynamic Actions. A full list can be found in the SOD.

Forms to J2EE or Forms to APEX?

It depends... What is your infrastructure? What knowledge do you have in house? What are your requirements? Why do you want to change?

You have three options, really:

1) Stay with Forms and Reports. You really need to ask yourself why you want to change. Is it because of license costs? Or do you need to web enable and extend your application? Only you know the answer, but going to another technology is not something you do in 1..2..3, so think about it before you start. Both J2EE as APEX provide you with tools to make the migration as painless as possible, but you still need to do some things yourself.

2) Go to J2EE. Already a lot of people went into that direction as Oracle itself is following that strategy for the Applications Suite. I'm not specialized in that area but if you look at the blogs of Grant Ronald or Duncan Mills they have all that information. The ADF development team is doing some really nice work and have some really cool features available.

3) Last but not least you could also chose to convert your Forms to APEX. One of the biggest advantages for me, especially in times of economic crisis, you avoid paying a license for the Oracle Application Server (OAS). APEX doesn't require the full Oracle Application Server, but can run on Apache or directly from the database (later, in APEX 4.0, with the APEX listener it can also run on a java environment like for ex. Tomcat or OC4J). Of course the full Oracle Application Server has some nice features which you won't have, but typically APEX doesn't need the OAS. Next to that most likely you can reuse your existing knowledge...
Especially with APEX 3.2, which includes a Forms to APEX conversion tool, it's worthwhile investigating this option. If you already have a lot of people knowing SQL, PL/SQL and HTML, APEX might be a good fit for you, as these are the main building blocks. But remember this conversions tool is not a silver bullet, you still need to do a lot of work to get your Forms conversion completely finished, so please, see it as a real project and treat it like that.

So to conclude, I'm still happy I chose APEX as my preferred technology. I still don't know that many tools that can create data centric applications at the speed of APEX. More and more people are starting to use it. APEX let you extend your application easily... To make web 2.0 (or 3.0/4.0) applications we intensively use JQuery and other 3rd party components (for ex. Anychart) with APEX too. I really look forward to the APEX 4.0 release as that will already have some of these enhancements out-of-the-box. So we still have things to look forward to and stay passionate about it...

Friday, March 06, 2009

Anychart Integration Kit 5.1.2 for APEX

For the people who didn't see it yet, we put a new download on http://anychart.apex-evangelists.com which let you use the integration kit for Anychart 5.1.2 (and above).

People using Anychart 5 should still use the Anychart 5 integration kit which you find on the same site.

We are currently working on a new site (see image) that shows some of the new features and will also includes the Maps, Gauges and Gantt charts. Something to look forward to!


The integration kit is still free, but includes a Trial version of Anychart. You would need to buy the full version of Anychart to remove the Trial watermark. To make things more clear you can now buy Anychart 5, Anymap and Gantt charts together with the integration kit directly on the site of Anychart.

You can still use the APEX15 promotion code to get a 15% discount on all the products of Anychart which includes the APEX integration kit.

We are happy to help you with any installation issues if you buy Anychart with the APEX integration kit. Next to that we also offer consultancy to help you with creating your charts, dashboards, maps, gauges and gantts or any other question you have about Anychart or APEX.

Thursday, February 19, 2009

European APEX Training Days - April

After our highly successful Utrecht and London Oracle APEX Training Days (not to mention our original Brussels Training), Apex Evangelists have just opened registration for our 4th Oracle Application Express 3-Day training course. This time it will be held in the nice Midland Hotel in Manchester, UK, from the 20th-22nd of April.

So, what are these training days? Well, we host a lot of on-site training for clients, however we also hold ‘open training’ days, where anyone can sign up, come along and get training by people who know the product inside-out. We believe that our training provides the highest quality training for superb value for money.

The current agenda (subject to change) covers a variety of topics, but it doesn’t just stop there. We don’t believe in just a 9-5 training schedule and one of our core beliefs with these training events is to provide an open format where you can also raise any other (APEX related!) problems/questions you might have, particularly during some of our ‘out of hours’ relaxed sessions.

If you have been on one of our previous training events then you’ll notice the agenda has changed and even if the topic description might look the same the contents may have been modified, so if you’ve been to a previous event there is still value in attending this one (we’re proud to say that on every course so far we have always had someone who attended a previous event!).

Following the previous training, we expect interest to be high (and places are strictly limited, so please don’t delay to register).

You can find more information on exact location, pricing and signing up at http://www.apex-evangelists.com/training