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

Tuesday, February 17, 2009

My schedule and conferences

In the next months there are some nice Oracle and APEX conferences. It looks like APEX is getting more interest every year...

Some people asked when I would be in a particular part of the world, so here is my schedule till July:

- March 11th: APEX presentation and meet-up at Ordina, Utrecht, Netherlands
- April 20th-22th: European APEX Training Days, Manchester, UK
- May 3rd-7th: APEX sessions at IOUG Collaborate 2009, Orlando, Florida
- May 11th-12th: Oracle Education Application Express Advanced, Paris, France
- June 21th-25th: APEX sessions at ODTUG Kaleidoscope 2009, Monterey, CA

I'll blog more about the events in the next weeks.

There are some more trips planned to other parts of the world, but these dates are not fixed yet.

Although it's sometimes hard to be away from family (and for my family it's also not easy), I got a nice surprise from British Airways: I got upgraded to Silver Member, so my flights will be a bit nicer ;-)

Look forward to see you at one of the events.

Monday, February 16, 2009

UKOUG APEX SIG - the day after

On Friday I was in the UK for the first UKOUG APEX SIG. More than 50 people attended (the event was fully booked), more than 20 people were on the waiting list... just to show APEX is getting more and more attention.

Justin Hudd, the organizer of the event, gave an introduction and asked the people in the room about their experience in APEX. As usual we had a very mixed public: people just starting with APEX, people starting to do projects in it and then people with already a couple of years experience. But I was surprised, when the question came who's using APEX in his company (in production), 2/3 of the people raised their hand. That must have been the biggest difference with previous years, where people were looking at it and used it on the side. Now it seems to be used in production very much.

David Peake, product manager of Oracle Application Express, started with the first real presentation. He talked about the "Latest & Greatest from Development" where he gave an update on APEX 3.2 and 4.0. He talked about the APEX Listener, updateable tabular forms etc. (see SOD), but ofcourse the demos where the nicest. He did a migration of Forms to APEX (you can try that on apex.oracle.com too) and showed the new security features in APEX 3.2. For APEX 4.0 he showed Websheets and Dynamic Actions. I was in the back of the room and saw people looking at eachother with a face of "Oh my God" ;-)


In the next presentation of David (he was on all morning) he showed where APEX is used internally at Oracle, and which products Oracle brought out build in APEX. That presentation showed once more that APEX is not there for a short time, but will be a crucial option of the Oracle database.

In the afternoon I talked about Charts in APEX and beyond. The reason I changed the title of my presentation at the last moment was because Anychart brought out version 5.1.2 on the same day. The 5.1.2 release is really, really nice and I wanted to show a part of the new features as well. I'll do another blog post about the new version in the next days. Our APEX-Anychart integration site got already updated, but we're in the progress to extend it with some new examples and to provide you with a new download.


Next we saw a case study "Using Apex to Expose your Business to the Web" by Matt Nolan and Vincent Migue from e-DBA. They showed their own site and a project they did where they used a lot of web 2.0 features (scriptaculus, jquery etc.). You couldn't see the site was build in APEX as it had a complete different look and feel.


The final presentation of the event was by John Scott about "Dispelling Myths about Application Express". If your customers of your company is still not convinced of the power of APEX, you should definitely have a look at John's presentation! Most of the critics on APEX he proofs it's untrue with real numbers.


Before going to the bar we had a Q&A where people could ask anything they liked. We got questions about the integration of Oracle Apps and APEX (white paper to come soon), performance in APEX etc. One of the people in the audience was Jonathan Lewis. I found it very special to talk to an audience when such a respectful and knowledgeable person is in front of you.

I believe it was a very positive first APEX SIG in the UK and I guess something that won't end after this first one.

And finally some pictures from the bar...

Wednesday, February 11, 2009

test APEX 3.2 for everybody

Today Joel Kallman updated apex.oracle.com to APEX 3.2.0.



This means that after a period where only a few people had access to a beta version, you can test it out yourself!

In December I gave a demo of APEX 3.2 to a customer and they were pretty impressed with the product. It's definitely not a silver bullet, but it can be a good starting point and a great tool to manage your migration from Forms to APEX.

Next to the Forms Migration tool, APEX 3.2 brings some important security updates.

It won't take long before we can actually download the new version of APEX now...

Being in the UK

This morning I took the plane to the UK and instead of flying to Heathrow, I flew to Gatwick.

The flight was pretty good. I was impressed the stewardess new my name! I booked the flight through BA, but the flight was operated by SN Brussels Airlines and it happened that the BA standards correspond to the highest standard of SN. I had seat 1F, so not bad ;-)

Gatwick is a lot bigger than I thought and it's pretty good arranged: no queu to enter the UK, good trains... I was pleasantly surprised.

Tomorrow I'm traveling further to London and on Friday I'll be at the UKOUG APEX SIG.

I asked to change my presentation "What happens on an APEX page" by "Charts in APEX and beyond" as I really believe charts are so cool and Anychart 5.1.2 (due very very soon) even cooler.

Tuesday, February 10, 2009

Some date related tips to remember

The function INTERVAL DAY TO SECOND already exists from 9i, but I didn't use it that much before.

An Oracle By Example goes into more detail.

In APEX I created a quick example to show you how you can calculate the difference for dates. Behind the Calculate button I call a Process with this logic:

:P28_INTERVAL_DAY_TO_SECOND := CAST ( TO_DATE(:P28_end_date,'DD-MON-YYYY HH24:MI') AS TIMESTAMP WITH TIME ZONE )
- CAST ( TO_DATE(:P28_start_date,'DD-MON-YYYY HH24:MI') AS TIMESTAMP WITH TIME ZONE );

If you are looking for recurrent events (repeating intervals) you can use dbms_scheduler. In the early years of HTMLDB I created an APEX app called Agendimi which was basically an "online Outlook" for teachers. I wish I had the dbms_scheduler package to my disposal at that time!

Here's an example (found here, but adapted for APEX) to get the next 7 days (a plsql region in Apex on the same example page as above:
DECLARE
start_date TIMESTAMP;
return_date_after TIMESTAMP;
next_run_date TIMESTAMP;
BEGIN
start_date := CAST ( TO_DATE(:P28_start_date,'DD-MON-YYYY HH24:MI') AS TIMESTAMP WITH TIME ZONE );
htp.p('Next 7 days (only weekdays)');
return_date_after := start_date;
FOR i IN 1..7
LOOP
dbms_scheduler.evaluate_calendar_string(
'FREQ=DAILY;BYHOUR=9;BYMINUTE=0;BYDAY=MON,TUE,WED,THU,FRI', start_date, return_date_after, next_run_date);

htp.p(TO_CHAR(next_run_date,'DD-MON-YYYY HH24:MI Day'));
return_date_after := next_run_date;
END LOOP;
END;

Another nice one FM... I needed a date format like 1.1.2009, so I thought d.m.yyyy, but I couldn't put that into Oracle. Try: select to_char(sysdate,'d.m.yyyy') from dual; You'll get a nice ORA-01821 date format not recognised. So how do you get that format then?

You need to put FM in front of your date format:
select to_char(sysdate,'FMdd.mm.yyyy') from dual;

Monday, February 02, 2009

new ODTUG blog

Mike Riley, President of ODTUG, started a new blog yesterday.

If you want to know more about him, the working behind the scenes of ODTUG or other news about the ODTUG conference, keep an eye on his blog.

I also want to congratulate Mike to become President for 2009. I know him as a very motivated person with a great personality. I'm sure he'll be doing great...

Welcome to cyberspace Mike!

Friday, January 30, 2009

Create some dynamic data

When you are developing an application with a new database design (or an existing database design, but you didn't get any data), it can be handy to quickly create some test data in your tables.

Sure you can create some data manual to test your input forms, but what if you need more data? Or you want to test the performance with a large amounts of records.

Here's a simple select statement that creates you 25.000 random numbers and strings (you can change the number to whatever number you like):

SELECT rownum RNUM
, ABS(MOD(dbms_random.random,100000)) RANDOM_NBR
, dbms_random.string('A', 20) RANDOM_STR
FROM dual
CONNECT BY level <= 25000

You could also create a little procedure that populates your tables with it as you probably have some relationships going on as well (PK-FK). I just needed a select that generates me huge amount of records to test some charts in APEX with.

Update (thanks to Rob - see comments): dbms_random should not be used anymore, see the 10g and 11g documentation. So the select statement from 10g onwards would be:

SELECT rownum RNUM
, trunc(dbms_random.value(1,100000)) RANDOM_NBR
, dbms_random.string('A', 20) RANDOM_STR
FROM dual
CONNECT BY level <= 25000

Friday, January 23, 2009

Anychart 5.1 released

Today Anychart released version 5.1 of their charting product. I really looked forward to this release as it has some really nice features in!

We are currently working hard to get it compatible with the APEX integration kit, so if you're using this together with our kit, you'll need to wait a bit longer before doing the upgrade.

Here are some of my favorite new features:


Scrolling Support

All X / Y Axes based charts (Bar, Line, Area, Candlestick, etc.) can have Axes with scroll bar. You can also control the scroll barts with Javascript.






Heat Map Chart

Heatmap Charts, allows you to give graphical representation of data where the values taken by a variable in a two-dimensional map are represented as colors.

If you hover the legend the right numbers light up.



2D/3D Funnel Charts

Feature rich Funnel Charts both in 2D and 3D, smart labeling, animation, neck control and man more option.







3D Pie Charts and 3D Doughnut Charts

Nice looking, interactive 3D Pie Charts and 3D Doughnut Charts with Animation and all features of regular flat Pie and Doughnut Charts.






There are a lot of other nice features like Multiple X-Axis Support, One or more Interactive Labels or Tooltips, a combination of any chart type in a Dashboard etc. The complete list of changes you find here.

But as a last one... some people told me they would like to have better performance in their charts. Anychart 5.1 will help you with that!

AnyChart 5.1 is based on a new charting engine, which made it possible to improve performance and decrease rendering and update time dramatically. The new engine also allows to used larger data sets without significant time lags, and this applies to all chart types, including AnyMap extension. The below chart says enough...


PS: If you want to buy Anychart 5.1 you can still use the coupon code APEX15 to get a 15% discount!

Wednesday, January 21, 2009

One day APEX seminar by UK APEX SIG

The UK APEX SIG is kicking off with a one day free seminar on Friday 13th February in the Oracle City Office in London.

There will be five presentation by different speakers and you'll have also time to ask questions to the Experts. Justin Hudd, the organizer behind the event, will start with an introduction, shortly followed by following presentations:

  • Latest & Greatest from Development by David Peake
  • Apex @ Oracle – Learn How Oracle Utilises Application Express by Anthony Rayner
  • What happens on an APEX Page? by Dimitri Gielis (me)
  • Using Apex to Expose your Business to the Web by Matt Nolan & Vincent Migue
  • Dispelling Myths about Application Express by John Scott
We'll finish the day with an Apex Forum where you can ask any question... and then the bar!

I booked my flight to Belgium the following day, so I don't mind still talking about APEX with some drinks and food till late at night ;-)

Hope to see you there! (more info, see agenda)

Update from UKOUG: If you are a UKOUG member you can attend for free. But there is a non-member rate set up of £160 plus VAT. As members of UKOUG you get one space per membership free, then any additional places are charged the members rate of £80 plus VAT.


PS: We got some questions if our 3-day European APEX Training Days of March are still on? The answer is yes! We're handling the last details for the location (will be in Manchester, UK). More information will follow shortly.

Friday, January 16, 2009

JQuery UI, ThemeRoller and transparent datepicker

Recently we had some issues with JQuery UI which didn't render the widgets correctly.

An example of a JQuery UI widget is the datepicker (screenshot), like you can see working on Apex Blogs

If you want to change the look and feel of the date picker (or any other widget) you can do that by creating a new theme on the ThemeRoller site or by selecting one of the gallery.

However while we did that our datepicker became transparent and it looked like it couldn't find the css or the background images anymore. As we already used it in more projects, we were sure our code was right.

Finally we found that a different version of the JQuery UI can get you into that situation. The fix then is to use the version you know your css works with or to download the latest version of JQuery UI and create the theme again from the site and use that instead.

Sunday, December 21, 2008

Daddy, time to rest - Merry Christmas and Happy 2009

2008 past away as the speed of light! Everything went so fast and so many things happened, but now it's time for my daddy to have some rest and spend some more time with me.

If I look what my daddy did in 2008, I'm amazed... in work he

  • spend way to much time in the airports, did around 40 flights in 2008
  • visited a lot of different countries and places, some for the first time
  • presented one or more presentations and organized APEX-Meetups on 4 Oracle conferences: IOUG, ODTUG, OOW, UKOUG
  • did two European APEX Trainings Days
  • worked on different APEX projects; from small to enterprise level
  • received the Oracle ACE Directors award
  • released ApexBlogs.info, a blog aggregator written in APEX to catch all the posts about APEX
  • released Anychart 5 for APEX integration
  • and much much more
  • but he lost also a great friend
Looking closer at me, he
  • saw me growing really quickly and I also became more smarter every day
  • saw me crawling and not much later walking and running (now daddy and mummy need to keep their eyes on me, as I can go everywhere and reach anything I want :-))
  • started to build a nice home with lot of space to put my toys and a nice garden

Daddy also told me to thank you all for the wonderful experience and he hopes to see you again in the first week of January 2009...

I wish you a Merry Christmas and a Happy New Year!