Sunday, March 30, 2008

LA, Universal Studios and Malibu

Los Angeles, California, is a very nice place. First time I went there and I'll probably come back later for a real holiday. I didn't see Holywood due to lack in time, but I saw some other nice spots...

From Thousand Oaks to Universal Studios over Santa Monica beach to Malibu and back to Thousand Oaks. It's a pity I didn't see that many "stars"! I drove in Bel Air to look at the houses. They are very impressive, so is the area. I did the Citywalk in Universal Studios and saw the life guard cabin of Pamela Anderson of Baywatch. She was just free of duty that day, a real shame. ;-)

It was nice to see the water and have good air, especially after a week of hard work.

Below some pictures I took.

I hope my flight to Belgium will be not to difficult, as I heard that there're some problems in Heathrew (London, UK).

Friday, March 28, 2008

Online APEX Training

As the last days went really well, we (Apex Evangelists) thought it a good idea to provide next to our public and on-site Apex training, to also provide online Oracle Application Express training.

This makes our training available to anybody in any country.

We'll publish some more details about it soon!

Dynamic Breadcrumb in APEX

I got a question during the training how to create a dynamic breadbrumb. If you don't know what a breadcrumb is, it looks like this:

Breadcrumbs are nice to have a hierarchical navigation view or a visual flow how you came to that page. In Oracle Application Express breadcrumbs are rather static. You specify for which page the breadcrumb counts and if it has a parent. It's not "out-of-the-box" to make it more dynamic, so I made a quick example to show how you can create a dynamic breadcrumb.

In my example you've three different pages. The request was if you go to page 3, it should know from which page you came, so you can click the breadcrumb to go back to the page you came from. In my case Page 1 or Page 2.

You can use different breadcrumbs which you show based on a condition, but that's not really dynamic. So let's try to make it more dynamic!

Create 3 pages and call them: Master 1, Master 2 and Child

On the Master Pages add a Submit button to the Child Page. Also add a breadcrumb on all pages like you normally would do.

Do you see you have a problem? For the Child breadcrumb you need to specify a master, but you've two masters! So how to get around this?

Create two Application Items: AI_PARENT_PAGE, AI_PARENT_PAGE_NAME
(in the screenshot I've one more, but in this example you don't need it)

On the Master Pages, in the Branch for the Submit button, specify that it need to go to Page 3 and give the Application Items the value of the master page you're on. On the screenshot in my case Page 1 (Master 1).

Page 2 would be the same expect from the last line where you would have 2, Master 2.

In the breadbrumb you would reference the Application Items instead of the fixed page number and page name. Change the original breadcrumb for Master 1 to:

The result will be a dynamic breadcrumb!
You can download the example application which shows the feature here.

I thought it might be useful for others too, hope it helps some of you.

Thursday, March 27, 2008

First days in LA

The first days in LA were nice. The weather is excellent, especially when I read it's such a bad weather in Belgium!

The first days I had some meetings with the customer. As I'm living in Europe we have most of the time conference calls with customers in the States. Meeting them in real life gave me a visual image from the voice I heard before. Also seeing the environment they are working in in real life helps. The meetings are very intense as we're trying to cover a lot in a short time frame. Together with the meetings and seeing a lot of new people, the jetlag makes me "crash" in the evenings.

Yesterday we also started with a "get-up-to-speed" Oracle Application Express training.

This kind of training I didn't do that much before. Normally I'm in front of one kind of persons: business people or beginners or people who already have more experience in APEX.

But this time they are all together in one room! Next to that, at the same time we run the training as a conference. That means my laptop is connected to a web conference tool, so people from around the world see my screen. Next to that we've a voice line open for the whole day. I'm talking to a room of 30 people, but at the other end of the line there are more. I've been talking to people from Puerto Rico, Colorado , the UK and a lot others.
You also need to be careful with drawing on the board as the people on the other side of the line don't see it. To bypass that there's an online white board functionality to use. Amazing what technology can do!

The evenings are quickly over. Grabbing something to eat, prepare for the next day and have an early sleep as I get awake at 4.30 AM.

During one of the evenings I went together with Rich and his family to a famous Fish&Chips place not far from the harbor. There're some nice spots in LA, but I'll see more of it during the weekend. I plan to visit Universal Studios, Holywood, Malibu beach.

Creating Help in APEX

It's not a new feature of APEX 3.1, but I didn't use/see it that much before. With the new icons in APEX 3.1 the Help region draw my attention.

Did you already see the region type called "Help Text"?

If you don't like to write documentation, this feature is something you should look at. Of course we all start with writing our test cases and documentation about how the system will work before we actually develop, so not sure who will use this ;-)

Seriously, some of us do put some help text with the items, so if you click on the label of the item you get some help. Wouldn't it be nice in that case if you could also see the help of all items at once?

That's exactly what this new feature is doing! The Help Text Region gets filled with all Help Text of the items on that page.

An example will make it more clear...

1) Create a new Blank Page with as template "PopUp". On that page create a new region of type "Help Text". (see the above screenshot to select the region)
Give it an alias of HELP_PAGE (in Page Attributes)

2) On another page, create two new items: for ex. two text-items: name and address and add some text in the Help section. Also add some text for the Help in the Page Attributes
3) Last step to do: add a url to the Help page on every page
Go to page 0 (create Page 0 when you don't have it) and add a region (display before footer) with a link to f?p=&APP_ID.:HELP_PAGE:&SESSION.:&APP_PAGE_ID.
Also put a condition on the Help Region as we don't want to see the help on the help page itself.
("Current Page is NOT in Expression 1")

4) Run your page and click on the Help link
You should see the help of both items!

Nice, isn't it?

An export (APEX 3.1) of an application which shows this feature in action, can be downloaded here.

Monday, March 24, 2008

Worst airport?

I shouldn't maybe say these things, but the worst airport in my experience is LA.

The flight went really smooth. I flew from Brussels to London and from there to Los Angeles. I slept a bit after a tiring last week, worked on my laptop (thanks 2nd battery!) and the food wasn't that bad with British Airways. We even arrived to early in LA, but then it began...

The airport itself isn't to bad, but this time I had to queue for more than 2,5 hours to enter the States! I believe that's a bit too long... the CBP officers were not only slow (maybe due to hardware? software? other colleagues? etc), but very slow. Of course we picked the wrong queue! Next to us it went a bit smoother, but ours... There were multiple reasons why it didn't progress, but the most important reason: under staffed. (maybe Easter had something to do with it?)

The good thing is that the weather is great, especially compared to the UK and Belgium.

I finally managed to enter the States and go to our car which we hired for a week. The people are very friendly again and I'm staying in a nice hotel.

Happy Easter

Happy Easter to the readers of my daddy's Blog!
When my daddy came back on Friday, after he spend a week in London to present for an APEX class, I was so happy. I had to laugh a lot and enjoyed it to play with my daddy again. Daddy told me he couldn't stay that long in Belgium as some people expected him on-site. Luckily we enjoyed our Saturday together and in a weeks time I'll see him again.

It's hard, but at least my daddy promised me to take the good weather from LA back to Belgium. Bye Bye daddy, safe flight and hope to speak you soon through the video chat. The camera is already running...

Sunday, March 23, 2008

APEX Training for two weeks (and London)

Last week I was in London for our second European APEX Training Days. We had people from the Netherlands, Denmark, Greece, Belgium and the UK of course.

Twice a year we try to make a special program for the attendees. We started this time with our Best Practices in an APEX project. Afterwards we covered several topics including APEX 3.1 new features and beyond. (I've several draft posts about it, but didn't find the time to finish it yet.)

As on our first APEX training in Brussels we included a hands-on exercise on the second day. In the evening we also took the attendees out for a diner in "Sale e Pepe", a famous Italian in London.

On Monday John and I went to that restaurant to try it out (more an excuse to have some great food ;-)). At one moment John whistled we were sitting next to Terry Venables, a famous English coach/manager of Tottenham and the English squad. If John hadn't told me I wouldn't have recognized him I think, but it stays nice to meet such a guy in the restaurant.

On the closing day we had some other presentations like 3rd Party integration, a large Q&A section and a Quiz. The quiz was won by Jon, with a close second for Lucy. Lucy came also to our first APEX training! It was great to see her again. I guess we didn't do it that bad the first time ;-)

It felt nice when the attendees came to us to say goodbye and hearing that they really enjoyed it and learned a lot. I enjoyed it very much too! Thank you all.

After a short sight seeing trip in London I went back home to see my family. It's unbelievable how quick you miss your little kid.

I can't really enjoy the successful training and the time with my family as I already need to go to the States for another APEX training for one of our customers.

Till the end of April I'll be very busy, but then I plan to take a little break. I'll soon do some more postings about APEX 3.1 and my stay in the States.

Sunday, March 16, 2008

Heading to London with the Eurostar

From Belgium to the UK... Normally I fly with British Airways to Heathrow, but this time I thought to try the Eurostar (a high speed train).

After I arrived at the Bruxelles (Midi/Zuid) station I had to go to a "yellow" door (Eurostar entrance). The passport control is pretty much the same as when you fly by plane, but the queus are not so big. You only need to be 30 minutes in advance, so that's also nice compared to the 2h in advance with a plane.

I was a bit early and went to an ice cream bar. I know somebody who would kill for some Haagen-Dazs ice cream... so Natalia here's a picture of a place full of it! Of course I had to taste some of it and I must admit it's pretty good ice cream ;-)

The travel itself was very nice and quick. One stop in Lille and some time later we were already in London. We didn't get some food in the train, but you could go to a part of the train where they offered some drinks and snacks.

I arrived in London St Pancras at 20h (UK time) and had to take the underground (called Tube) to London Victoria. All went smoothly and some time later I checked in into the Victoria Park Plaza hotel. I was pleasantly surprised when they told me I got an "Executive Room Package". I don't know what it means yet, but apparently you've some more advantages. I'll find out soon ;-)

I'm staying in the Victoria Park Plaza hotel because we start our second 3-day European Application Express (APEX) Training Days on Tuesday. Some people who subscribed for this training were also on our first training in Brussels. I look forward to meet them again and of course I'm curious to meet the new faces.

But now I'm going to search for these advantages and have a look at London!

Update: Update of train station name after comment of Jason. (Thanks Jason!)

Saturday, March 15, 2008

Troubleshooting BI Publisher Desktop

I already had a draft title in my blogs folder, but never finished to write it. When I got this strange behavior again I decided to finish this post.

Sometime my BI Pubisher Desktop doesn't want to work in my configuration -
Macbook Pro with VMware Fusion:
- Windows 2003 SP1 (and hotfixes)
- Word 2003
- .NET framework 2.0
- J2RE 1.4.2 and JRE 6U3

Important to know is that you need to install especially the last two points (.NET 2.0 and Java).

First things I always check if it doesn't work:

- Did a Windows update had place?
I've put this update system to manual now, but default it's checking for updates and most of the people just install it (as I did before).

- Is the .NET Framework still working?
I installed .Net Paint and try if that still works.

- Is my Java environment still correct.
Again you can test that with a program or trying to run java from the command prompt.

- Can I still load the xml data file and add a field to the document?
for ex. select "All Fields" from the BIP Desktop toolbar in MS Word to include all fields/column/items/node (or whatever you call it) of the xml files in your document.

When one of the above doesn't work, it's probably best to reinstall the specific component.

However, for me all the above works! But if I double-click on a field to get to the BIP specific options/menu it doesn't work anymore. It tries to load the .net stuff but it looks like it fails at a certain point. The same happens when you want to add a conditional region, BIP Desktop fires up .NET and then nothing (you don't get the expected screen of BIP Desktop).

In my case the resolution was simple... I was calling the xml file from a network drive or a shared drive in my VM. As long as I called it from there it didn't work, but if I put the xml data file on my desktop or in another folder of my local hard drive it did work.

Sometimes it's something you don't expect and a very naughty thing ;-)

Monday, March 10, 2008

Eurovision Song Contest 2008 will be fun

In Belgium we had the last weeks the elections for our sending to the Eurovision Song Contest in Belgrado.

We had quiet some non-typical Eurovision songs this year. The song that the Belgium people voted for is "O Julissi Na Jalini" from Ishtar.

I wonder what the rest of the world thinks about it?

If I see what Ireland send in, we might have a chance! A singing Turkey...

Monday, March 03, 2008

Oracle APEX 3.1 Training for Europe

In two weeks time our European APEX Training Days will take place in London (UK).

As blogged before, on Friday APEX 3.1 went live under a big applause! If you would like to get one of the first trainings covering APEX 3.1 New Features, you can't miss our training ;-)

We still have some places left, but be quick as time flies! The training is from March, 18th till 20th in the heart of London. An awesome place! And a message to people not coming from the UK; the exchange rate has dropped... so you pay "less" compared to a few months ago!

Of course, if you're from the UK you don't have that exchange rate advantage, but we also provide group discounts.

Hope to see you soon at our event or maybe I'll speak you in the States at Collaborate or Kaleidoscope.


Sunday, March 02, 2008

iPhone? no HTC Touch Cruise

A few weeks ago I went for a new smartphone. I had a look at the iPhone, but that wasn't an option. In Belgium you're not allowed (due to the law) to bundle the physical device and the mobile contract itself. So there're no official iPhones in Belgium yet. Some people have a "hacked" version, but I didn't want to go for that.

The main features I want in my smartphone are:

  • Mobile phone (surprisingly)
  • Agenda
  • Contacts
  • GPS Navigation
  • Wifi
  • Easy synchronization with my MacBook Pro
At the end of 2006 I bought an HTC P3300 and I really liked it (see blog post). I could have kept that one, but I decided to have a look which new devices HTC had available. In a years time a lot should have changed. I saw some good reviews of the HTC Touch Cruise (P3650), the follow-up of the HTC P3300, so I decided to give it a try.

I bought it and I really like it. I had some problems with it in the beginning, finally called support and they told me I had to go for a new one. Went to the store, got a new one (excellent service!) and it had the same problem. The big clock (HTC Home plugin for the Today screen) wasn't showing although it was installed. HTC Support told me to do a hard reset, but that didn't help. Finally I found it myself; if you install that HTC Home plugin manually again, it works flawlessly. I guess the first device would have worked too ;-)

Even if the iPhone was available in Belgium, I think I would still go for the HTC Touch Cruise as I prefer to have a navigation system (gps) in my mobile phone. I was really impressed with the iPhones touch screen, but HTC has something similar, it's called the TouchFLO, so I can navigate with my fingers now too. The HTC Touch Cruise has a nice big screen and also supports 3G. The full spec you find on the htc website.

To synchronize my contacts and calendar with my MacBook Pro I use Missing Sync for Windows Mobile. It works really well. My iCal, Address book and Tasks get nicely synchronized.

Saturday, March 01, 2008

Upgrade local APEX to APEX 3.1 successful

While the Belgian people were enjoying their Friday night, the APEX Development team made APEX 3.1 available as a download. You can download it here.

I upgraded my local system to APEX 3.1 successfully, although I had one little problem.

Below the steps I followed:

1) Download and unzip APEX 3.1
2) Read the Installation Guide
3) Upgrade my configuration (a MacBook Pro running OSX Leopard with a VM (VMWare Fusion) with Oracle Linux, Oracle DB 11g, APEX 3.0.1

o11g> sqlplus / as sysdba

That step took about 10 minutes and ran without a problem.
As I upgraded my current version, the installation also upgraded my workspaces, which you can see in the screenshot at the end.
4) APEX runs in my configuration with the Embedded PL/SQL Gateway. So my next step was to upload the new pictures that come with APEX 3.1 into the database.
The Apex Development Team made a script you can run to do that step.
o11g> sqlplus / as sysdba

SQL> @apxldimg /your_dir_where_you_unpacked_apex_31_zip
That script gave me a little problem. As I downloaded and unpacked the zip in OSX I put the apex installation directory on a shared folder so my Linux VM could see it.
Due to permissions I got following error:

Of course this is not the APEX Development team fault, it's just due to my configuration. To correct this step I copied the directory to my /tmp on Linux and then the install of the images worked correctly.

4) Test the new version of APEX 3.1

Great! It works!

I also tried to run some applications I had in my workspace, most of them worked correctly, but for some I had problems with the template. For ex. an application with the Red Theme didn't show up correctly. I had to delete the theme and create the Red Theme from the Repository again to get it looking nice again.

Before we can upgrade our live servers, we need to make sure all our clients will follow too... Hopefully sooner than later as I think you can't miss the new features introduced in APEX 3.1!