APEX Best Practices

Oracle-Apex-Best Practices has been released by Pact-Pub recently.

First impression on me was that it’s not a beginner guide to APEX. It’s an enterprise level Apex development features book.

When developers begin to learn APEX, they think “we can do simple web projects with APEX but not more”. But this book shows that everything can be done with APEX.

If you don’t have experience about APEX, I recommend reading a beginner APEX books before you read this book.

- In the first chapters it tells the APEX architecture and gives the key points how to design and manage single or multiple applications. I wish there could be much more examples on this chapter.

- The book covers also advanced level oracle reporting features such as analytic and grouping functions and tells how to use them in APEX.

- There is a large chapter about printing of reports on different platforms and many examples about how to implement that.

- All enterprise applications must have good implemented security levels. Application level security steps from database to user interface items are well-explained with examples.

- Many APEX developers complain about debugging on APEX. There is a chapter about how to debug and alternative debugging tools from database level to user interface level. Also that is so helpful to understand what happens when user clicks a button from end to end.

- If it’s an enterprise application, we should have source version system and deployment procedure. Last chapter examines how to manage this with examples.

Everything is understandable and is easy to implement for our production environment. Screen shots are taken from 4.1 version of APEX but all can be used in 4.2 too. Also there is a mini appendix for RESTfull web services which is the new great feature in 4.2 version of APEX. I think ever APEX developers should read this book for better designed APEX application. Many thanks to writers of this book: Learco Brizzi, Illon Ellen-Wolf and Alex Nuijten for this great job.

Customized Page Level Tabs as like Oracle.com

Recently I tried to customize Page Level Tabs template and I combined page level tabs with the Pull Down Menu list on APEX 4.1. Here is the result:

Here is the source code of my template:

1- Save this List Template as “Page Level Tabs List 2″
2- Create list from Shared Components for the menu. For sub-items use parent list option. Save your list template as “Page Level Tabs List 2″
3- Create a “List Region” and chose your menu list as the source of region.

Thats it :)

PS: The image “#IMAGE_PREFIX#apex/builder/down_dark_12x12.gif” comes with oracle 4.1 default.

Oracle Application Express 4.1 is avaliable on www.tryapex.com

Now APEX has great features with the new 4.1 version. My favourite new functionalities are
- No more Primary Key needs for Tabular forms for update and delete operations. ROWID usage is avaliable now. But it has a little bug now. You should manually add APEX$ROWID as alias to ROWID column.


SELECT
"ROWID" APEX$ROWID,
"YEAR_MONTH" FROM MYTABLE

- Uploading data from excell or copy paste function is opened to end users. Thats great! Now end-users can upload their data from excell into a table defined by developer. Thats what makes life easier for end-users.

Oracle Application Express 4.1
Oracle Application Express 4.1 will focus on enhancement to existing functionality and additional capabilities to support applications running on mobile devices. Application Express 4.1 is planned to incorporate the following:

Development for Mobile Applications – Include themes and HTML templates suitable for smart phones and mobile devices.
Error Handling – Improve error handling and user-defined exception processing.
Tabular Forms – Continue to expand tabular forms validations.
Dynamic Actions – Allow dynamic actions to be defined for buttons and enhanced conditional processing.
Plug-Ins – Add plug-in support for additional components and enhance plug-in definitions.
Use of ROWID – Allow usage of ROWID for Automatic DML processing (as an alternative to identifying the PK columns).
Websheets – Improved user interface, new page section types, and enhanced spreadsheet / datagrid integration.
Data Upload – Enable end-users to upload data into an existing table (within an application).
Accessibility – Improve accessibility in existing themes and HTML templates.
Numerous functional and performance improvements.

Click to see new features
Click to go APEX

APEX – Easy way to fill select list

In APEX 4.0 there is a cool new future to fill child select list with AJAX. Lets do it..

First we create a select list item in a region and name it as DEPARTMENT (In my case P2_DEPARTMENT).

And we configure List of Values section. I just write simple SQL:
SELECT DNAME,DEPTNO FROM DEPT

This first item is the PARENT item. Lets create the child named EMPLOYEE (P2_EMPLOYEE). Our aim is to fill Employee select list depending on selected Department.

In the List Of Values section i just put the SQL which is filtered by selected Department.
SELECT ENAME D, EMPNO R FROM EMP WHERE DEPTNO = :P2_DEPARTMENT

The key point is the Cascading LOV Parameter Item(s) parameter. I just put the Parent select list item’s name to there which means when P2_DEPARTMENT item changed, fill P2_EMPLOYEES depending on Department. :)

Apex is cool to create fast applications.

SVM-Support Vector Machines

This week there was a presentation about SVM by Hüsnü Şensoy in Turkcell Teknoloji. It was great pleasure to listen that presentation. He explained Datamining basic concepts and the Support Vector Machines clearly. I recognized that I am staying apart from Math these days.

Here is the details of the presentation.

Don’t forget Math is a must to be a real engineer.

Starting to be an engineer

I want to share my experiences about computer engineering with you. I am not graduated yet but i work in the leading GSM company Turkcell Teknoloji in Turkey as a part time worker.

I have learned so many new things about engineering. New disciplines, new work mates, new rules, new visions…But as result of these all, I’ve learned that no developer can do great things without team work. You might develop a small part of a huge project. But without your work that huge puzzle will not be completed.

So today, just concantrate to your work and do it perfectly even it is a small job. In future you will see the whole puzzle by yourself.

Thnks