Tuesday, April 30, 2013

Importing APEX Team Development Feedback from TEST to DEV (on same instance)

One of the great features in APEX is Team Development. It was introduced in APEX 4.0 and I already blogged about it before, so if you don't know what it is, have a look at my previous post first.

This post is about exporting the feedback from your other environments (TEST, ACC, PROD, ...) back into Development. It's a lot easier to have everything in one Team Development environment (typically DEV) for an application / workspace, so you need a way to get the feedback from the other environments feed into your development environment.

When you connect to your TEST environment, you can export the feedback through the normal export wizard in APEX (the wizard is the same to import/export apps, but then with the feedback tab):

Once you have your feedback exported to a sql file, you can connect to your development environment and import the feedback:

This goes well as long as you're importing from a different APEX instance than what you exported from.
In case you are running your TEST environment on the same database (and APEX instance) as your development instance, when you try to import the feedback you might get following error:
ORA-00001: unique constraint (APEX_040200.WWV_FLOW_FEEDBACK_PK) violated

It's a known limitation of APEX. The way to get around it is to export the feedback from TEST to a file (see first step), purge the data in that environment (TEST) and after that you can import it in your DEV environment.

You find the Purge Data under Team Development - Utilities (Team Actions on the right side):

Here you can purge the feedback (or other entries):

The import will work fine in your DEV environment. But be careful you are in the right environment, because once you purged the feedback in one environment you can't import it anymore in that environment. When you try doing that, you get following error:

Review PhoneGap 2.x Mobile Application Development (e-book)

Packt asked me if I was interested in reading one of their books, PhoneGap 2.x Mobile Application Development Hotshot, and write my thoughts on it.

As the topic is in my interest sphere and I was having a long flight ahead, I decided to use that time to read it. So I read the book on my iPad in about 9 hours, but didn't try the code the comes with the book yet.

I strongly believe in developing mobile applications for both smartphones as tablets. You can either go the native route (iOS, Android, Windows phone, ...) or go the HTML5, CSS3, JavaScript route. I see a market for both, but I personally lean more towards the HTML5 way, as I can use the skills that I currently have. PhoneGap (built on Cordova) bridges the gap between what you can do standard in HTML5 and what you can do if you would code natively for the device. PhoneGap offers a JavaScript API to access the hardware of the device, for example the camera, microphone, accelerometer, filesystem etc.  PhoneGap wraps your HTML and JavaScript into a native shell, specific to the device, so you could even submit it to the platform's app store.

The book is mostly build of examples, which is a great way to see the potential of the tool. The author starts with giving a brief overview what PhoneGap is and where it fits in. It also walks you through how to prepare your environment to run the examples. Next it's all examples... The first chapter talks about how to create multilingual applications and sets the foundation for the other chapters. I found it interesting to see the author is using the YASMF framework (instead of for example JQuery Mobile).

In the second chapter you basically build a basic twitter application which also allows you to share the information. To do the sharing she used ShareKit, a very nice open source project.
In the following chapters she builds applications around the PhoneGap's File APIs, geolocation features together with Google Maps, recording and playing of audio, using the camera to store pictures and video, all very nice examples.

Chapter 8 is interesting as it builds a game! Behind the scenes it's using the HTML5 canvas, multi-touch gestures and the accelerometer. It's also reusing some of the things you learned in previous chapters like the file api, but it expands now to use localStorage.

The final two chapters are about expanding PhoneGap with native functions from the device and supporting bigger mobile devices like the iPad.

As you can see, a lot of ground is covered, with all excellent and useful examples!

Before, I only played a bit with PhoneGap, but I didn't find it hard to follow the content. I found the chapters well structured. I like to know why I'm doing something, so it was great to see that was covered first and then it builds up by designing the app (UI/interactions), the data model, putting it together and wrapping it up. You need a good understanding of HTML and JavaScript to follow the examples, but the author highlights that too in the Preface.

Saturday, April 27, 2013

APEX 4.2.2 patch set released

Today APEX 4.2.2 was released. As with every patch set a number of bugs got fixed, but this patch also contains a new packaged application to build surveys.

Here's a screenshot of the app:

If you are on 4.2 or 4.2.1 (first patch set), you should get the update from Oracle Support, the patch number is 16277995.

If you are on a previous version you should download the entire APEX version from OTN.

I upgraded my virtual machine in about 6 minutes.

If you want to read more, Joel Kallman and Marc Sewtz did some blog posts about APEX 4.2.2.
Marc recorded some nice videos about the updated PDF Printing in APEX 4.2.2 in combination with the APEX Listener.

Happy patching...