APEX Training

Saturday, 29 March 2014

OGh APEX Conference

Last week I was presenting at OGh (ORACLE GEBRUIKERSCLUB HOLLAND) APEX World. My topic was "APEX 4.2 Application Deployment and Application Management". I can only recommend this conference to all the APEX users in Europe. This is definitely the biggest APEX conference on our continent. If you don't travel to ODTUG then this is something you shouldn't miss. They have an international track where you can listen to the well known APEX developers and book authors. This time Dan McGhan, Martin Giffy D'Souza, Joel Kallman, Dietmar Aust, Roel Hartman, Peter Raganitsch. For the tracks in Dutch, they are also willing to switch their language to English at any time if there are visitors not understanding Dutch. All together, Dutch people are open minded and I admire their sense for organizing such events - they definitely know how to do it.

Wednesday, 19 March 2014

APEX 5.0 Page Designer Videos

There is a nice series of videos regarding APEX 5.0 Page Designer on YouTube. You can watch it here. David Peake is showing how the new Page Designer works. It is worth of having look at it and much easier that finding it out yourself. Enjoy.

Thursday, 13 March 2014

APEX Plugin Page

I just noticed that http://www.apex-plugin.com is programmed using php and jomla. Shouldn't it use Oracle APEX?

APEX IR Query Plugin

I already posted about the function for getting the IR query here:

http://www.deneskubicek.blogspot.de/2013/05/getting-interactive-report-query.html

Now, I decided to create a dynamic action plugin based on that function. The plugin has been submitted to the plugin directory at http://www.apex-plugin.com/ and should appear there soon. If you want to see how it works and download the code, you can do it here as well: https://apex.oracle.com/pls/apex/f?p=43045:1

Friday, 7 March 2014

Oracle APEX Cookbook : Second Edition

I was asked to review this book and write a couple of words about it. Of course I didn't go through all the 444 pages of the book because I don't have enough time. From what I could read and review, I can say that this book contains a lot of well explained examples for almost all APEX features. So, if you are new to APEX and want to speed up your learning process then this is a good choice. Experienced APEX developers can also use this book as a reference.

Monday, 3 February 2014

APEX 5.0 - New Features - Sub Region - Region Position

One of the first things I checked in APEX 5.0 EA was the region positioning of the sub regions. I was positively surprised to see that I can now position the regions next to each other as well. In earlier versions the only option was underneath. Having this possibility it will be much easier to create complex forms where you need to take care of positioning multiple items in more than one column. At the moment this is doable but somewhat tricky.

Sunday, 2 February 2014

APEX 5.0 - early adopter is cool

This is definitely the best APEX version ever. I just tested it and it took less than a couple of minutes to get used to it. You know how hard it is to accept major changes. This time it was easy. The changes made in the builder will for sure increase the productivity although this was never a weakness of APEX. There are of course some things missing (or I just couldn't find them) like how to create a simple form. Some features are still not implemented like workspace user management. Some things remained the same like a wizards for page creation. However, I can confirm that it is worth of requesting a workspace and starting to use it. It is simply cool.

This is how the page builder looks like:



And this is a result of my first test:



And here is the link: https://apexea.oracle.com/pls/apex/f?p=4000:1

Enjoy.

Tuesday, 14 January 2014

APEX Training 2014 - Best Practices

Our next training will be held in Bensheim on 26th of May 2014. You can find the details here.

Die Erfolgreiche Trainingserie geht auch in diesem Jahr weiter. Dietmar Aust und ich organisieren ein weiteres Best Practice Training am 26.05.2014 in Bensheim. Diesmal findet das Training auf der Basis von APEX 4.2 statt. Nutzen Sie die Möglichkeit von Experten zu lernen und melden Sie sich an. Einen Link zu der Anmeldeseite finden Sie hier.

Sunday, 12 January 2014

Barcode Report

This example seems still to be interesting to some people in the community. The number of requests and questions I am getting regarding it forced me to update it. Now the rendering is using an application process instead of a public procedure - using public procedures in XE is somewhat tricky.

Thursday, 19 December 2013

Classic Report - Preserve Pagination after PPR

In this example you can see how easy it is to preserve report pagination after PPR. With a little jquery coding you can attach a function to the pagination request and this way "document" where the pagination goes. After a report refresh you may read those values and paginate back to where you were.

Tuesday, 17 December 2013

SQL Developer 4.0

I personally didn't like SQL Developer because of it's clumsy java interface and found TOAD much better. Now, the version 4.0 looks more professional, cleaner and nicer. The new look and feel has been improved a lot. You can now reorder editor tabs without any side effects. SQL Developer has a big advantage if you have to work on a device for which you have no administrative rights - it doesn't require an installation. It is almost perfect if there wouldn't be a funny logic for making it available. On the SQL Developer download page you can choose between several versions:

1. Windows 64-bit - zip file includes the JDK 7
2. Windows 32/64-bit
3. Mac OS X
4. Linux RPM
5. Other Platforms


Only the 64-bit version includes JDK. It is a mystery to me why the other installation versions do not include the same. If your system is a 32-bit only and you have no way to install anything, you will be faced with a problem. The 64-bit jdk will not run there. I helped myself with the following trick:

1. downloaded the jdk 7.0 from here
2. installed it on an another computer
3. copied the entire folder of the installation to the computer where I have no admin rights - jdk1.7.0_45 - and placed it into the SQL Developer folder
4. finally, I changed the sqldeveloper.conf file by changing the line for setting the java home

SetJavaHome D:\oracle_tools\sqldeveloper\4.0\sqldeveloper\jdk1.7.0_45

After this change it worked as expected.



Wednesday, 4 December 2013

APEX Listener and Excel Upload

If you are using APEX Listener version 2.0, you can download a sample application here. In this application I am showing how to:

1. create an excel upload page
2. manage multiple excel sheets after upload

This new APEX Listener feature is great and I hope they will extend it to the other excel file formats - currently it works for .xls only. If you are using APEX 4.2.3 this will probably not work since there is a bug in that version of APEX.

So, the current limitations are:

1. xls files only
2. APEX 4.2.3 is buggy related to this feature
3. you can upload up to 49 columns since it is using APEX Collection and one column is used for excel tab names during the upload

In addition, you will need to add these four lines of code to the defaults.xml file:

<entry key="apex.excel2collection">true</entry> <entry key="apex.excel2collection.onecollection">true</entry> <entry key="apex.excel2collection.name">EXCEL_COLLECTION</entry> <entry key="apex.excel2collection.useSheetName">true</entry>



Enjoy.











Tuesday, 8 October 2013

APEX and Session State Protection

Prior to configuring Session State Protection in your applications you need to be aware of one important thing. Setting it up and configuring the settings will change the settings for all the items in your application - even if the items were protected before that change using some other protection methods. Deactivating the protection will again remove the protection completely. At the end this could mean a lot of work - get a backup and manually restore the original settings.





Monday, 2 September 2013

Meine Präsentation bei Orbit - Oracle Day

Am 18.09.2013 organisiert die Firma Orbit eine Verantstalltung mit dem Namen "Oracle Day". Der Titel meiner Präsentation ist "APEX – Applikationen im Expressverfahren". Die Agenda ist ziemlich interessant und umfasst viele Themen bezüglich Backup-Strategien, APEX, Geodatenverarbeitung und Business Intelligence-Lösungen. Die Agenda kann hier gefunden werden. Die Veranstaltung ist selbstverständlich kostenlos. Also, meldet euch an und wir sehen uns dort.

Sunday, 25 August 2013

APEX Presentations September and October

September and October 2013 are going to be tough. I am supposed to hold five presentations all together. Here is the schedule and the presentation titles:

04.09.2013 - MT AG (Ratingen, Germany) - "My Demo Application - die wohl populärste APEX Demo Anwendung"

18.09.2013 - Orbit (Bonn, Germany) - "APEX - Applikationen im Expressverfahren erstellen"

19.09.2013 - DOAG Regional (Mannheim, Germany) - "APEX, Installation, Bereitstellung, Schnittstellen und AddOns richtig verwalten"

22.10.2013 - SlOUG Slowenian Oracle User Group Conference (Ljubljana, Slowenia) - "Ten things you need to know about APEX – APEX Features, Deployment and Application Programming"

24.10.2013 - HROUG Croatian Oracle User Group Conference (Rovinj, Croatia) - "APEX 4.2 – Installation, Deployment and Application Management"

Thursday, 8 August 2013

Tuesday, 16 July 2013

Oracle APEX 4.2 New Features und Tipps aus der Praxis

Unser nächster Kurs wird im November, am 11.11 und 12.11 in Bensheim stattfinden. Das Thema ist ziemlich spannend - APEX 4.2 New Features und unsere Erfahrungen aus der Praxis mit der neuen Version. Wir werden diesmal sehr viel über dem APEX Listener, Einsatz von jQuery und über Restfull Web Services reden und natürlich, praktisch üben. Dieser Link informiert Sie über alle weiteren Details zum Kurs.

Sunday, 16 June 2013

JDD Publisher

JDD Spreadsheet Publisher enhances existing software application‘s cabilities by a flexible data export to Microsoft Excel. Design your templates in Microsoft Excel and use a simple placeholder syntax. The JDD Spreadsheet Publisher takes both, data and template and renders a ready-to-use Microsoft Excel© workbook in your design layout.

Your benefits:

- Flexibility

Templates can be customized in a fast and straightforward way just by using Microsoft Excel. Eliminate discussions between IT and business about security, effort and delivery periods.

- Process Reliability

Your development environment is Microsoft Excel©. You specify the design of the Excel report. JDD Spreadsheet Publisher only cares about data and correctly adjusted relations inside the workbook. Use any of the Excel built-in functions and features to enhance your report.


Thursday, 6 June 2013

Create a Success Message using Dynamic Action - Second

You can extend this simple example by adding a counter to it and close it after the specified number of seconds:

var my_counter = 5;

var success_message = $('#P299_MESSAGE').val() + '<br/>' 
+ 'This message will close in ' + 
'<span id="my_sec">' + my_counter + '</span>' + ' seconds.';
$('.t10messages').empty();
$('.t10messages').append(<div class="t10success" style="display: none;">
</div>
');
$('.t10success').append(success_message);
$('.t10success').fadeIn(1000);

var time_in_seconds = setInterval(function() {

my_counter--;

$('#my_sec').empty();
$('#my_sec').append(my_counter);

if (my_counter == 0) {
    clearInterval(time_in_seconds);
    $('.t10success').fadeOut(1000);
    }
}, 1000);

Using jQuery this is quite easy to acomplish.


Thursday, 23 May 2013

Create a Success Message using Dynamic Action

This simple example is showing how to create a success message using dynamic actions. One thing needs to be mentioned though. The last one of the three actions depends on your current template:

var success_message = $('#P299_MESSAGE').val();

$('.t10messages').empty();
$('.t10messages').append('<div class="t10messages"><div class="t10success" 
style="display: block;"></div></div>');
$('.t10success')
.append(success_message)
.slideDown('slow');

The best thing is either to open the template and have a look at the structure of the success message part or to use firebug and inspect the HTML structure on your page.

Enjoy.