Archive for the Category » APEX «
Im deutschsprachigen HTML-DB-Forum kam die Frage auf, wie man ein Textfeld per einfachem Klick auf Textbausteine mit eben solchen füllen kann. Da es sicher verschiedene Anwendungsfälle gibt, die damit etwas anfangen können, ein Blogbeitrag dazu.
Oder wie meine Landsleute sagen würden: “kaufmännisches Und” und Select List. Gerade stand ich vor der Aufgabe, eine dynamische Select List mit einem Report zu verbinden. Soweit kein Problem. Was ist aber, wenn der Anzeigename und der Wert der Select List aus dem “sprechenden Wert” der Datenbank bestehen und nicht die Kombination aus Wert und ID darstellen. Also in etwa so:
SELECT name d, name r FROM table
Auch das funktioniert, solange kein “kaufmännisches Und” in der Select List vorkommt. Wird ein solcher Wert dann ausgewählt, zeigt der Browser einen HTTP 400 Error.
Es gibt aber eine einfache Lösung dafür, nämlich die Funktion APEX_UTIL.URL_ENCODE. Der Code sieht dann so aus:
SELECT name d, apex_util.url_encode(name) r FROM table
Es ist wieder an der Zeit, euch ein Buch vorzustellen. Diesmal handelt es sich um den Titel “Oracle Application Express 4.0 with Ext JS”.
So, bis gestern hattet ihr Zeit, an einem kleinen Gewinnspiel teilzunehmen. Es kamen insgesamt 11 Kommentare zusammen, von denen ich 3 nicht gezählt habe. Diese kamen entweder vom Autor des Buches, oder als Antwort von mir, oder es handelte sich um eine Doppelmeldung.
Um mir die Arbeit leicht zu machen, habe ich Random.org genommen, die mir 2 Zufallszahlen generierten.
Nun stehen die Gewinner fest: Es sind Kommentator Nr. 1 – Phil und Kommentator Nr. 5 – Stephane. Gratulation euch beiden. Eure Mailadressen gehen gleich an den Verlag raus. Alles weitere dann auf dem Mailweg.
Vor ein paar Tagen erst habe ich einen kleinen Beitrag zum “Oracle APEX 4.0 Cookbook” geschrieben. Nun hat mir Packt Pub 2 eBooks zur Verfügung gestellt, die ich unter meinen treuen Lesern verschenken darf.
Wie kommt ihr an ein Buch heran? Ganz einfach, schreibt ein Kommentar unter diesen Beitrag, und teilt allen mit, weshalb ihr APEX einsetzt, oder weshalb es sich von anderen Technologien hervorhebt.
Ich hoffe doch mal, dass mehr als 2 Kommentare abgegeben werden und deshalb entscheidet am Ende der Zufallsgenerator über die Gewinner. Denkt aber bitte daran, eine gültige Email-Adresse im Kommentar einzutragen, damit ich euch erreichen kann.
Einsendeschluß für die Kommentare ist der 1. März 2011, der Rechtsweg ist ausgeschlossen.
And now the English have for the readers:
A few days ago, I made a small contribution to the written “Oracle APEX 4.0 Cook Book “. Now I Packt Publishing has made available two eBooks that I can give to my faithful readers.
As you can match a book? Quite simply, a commentary writes this post, and inform all of the reasons she uses APEX, or why it stands out from other technologies.
I strongly hope that more than 2 comments are submitted, and therefore ultimately determines the random number on the winners. Think but please remember to enter a valid email address in the comment so I can reach you.
The deadline for comments is 1 March 2011, the decision is final.
Bücher über Apex gibt es inzwischen reichlich. Und wer wie ich, täglich mit Apex arbeitet, die einschlägigen Foren und Blogs kennt, braucht in der Regel kein Buch darüber zu lesen.
Lange war es nur als Beta auf apex.oracle.com für Tests greifbar. Nun kann APEX 4.0 jeder auf seinen eigenen Servern installieren. Die neue Version ist endlich da.
Gefunden bei Joel.
Es gib verschiedene Arten, auf Messages hinzuweisen. Damit sind die kleinen Textboxen gemeint, die z.B. nach einem Page-Process angezeigt werden.
Ein sehr einfacher Weg ist die Verwendung eines Effekts aus dem jquery-UI. Ich habe mich für den “Bounce”-Effekt entschieden. Dieser bewirkt, dass die Textbox z.B. von oben herab an ihre gewohnte Position “fällt”. Um die Meldung nicht dauerhaft anzuzeigen, wird sie mit dem “Fadeout”-Effekt nach wenigen Augenblicken ausgeblendet.
Wie jquery in APEX eingebunden wird, habe ich schon in vergangenen Beiträgen gezeigt. Um den “Bounce”-Effekt in der gesamten Anwendung darzustellen, verändert man am besten das Pagetemplate, von dem die Anwendung gebrauch macht. Bei meinem Theme 13 und dem “Two Level Tabs”-Pagetemplate sieht der Header-Code anschließend so aus:
<html lang="&BROWSER_LANGUAGE." xmlns="http://www.w3.org/1999/xhtml" xmlns:htmldb="http://htmldb.oracle.com">
<head>
<link rel="stylesheet" href="#IMAGE_PREFIX#themes/theme_13/theme_3_1.css" type="text/css" />
<link rel="stylesheet" href="#WORKSPACE_IMAGES#jquery-ui-1.8.custom.css" type="text/css" />
<script type="text/javascript" src="#WORKSPACE_IMAGES#jquery-1.4.min.js"></script>
<script type="text/javascript" src="#WORKSPACE_IMAGES#jquery-ui-1.8.custom.min.js"></script>
#HEAD#
<title>#TITLE#</title>
</head>
<body onload="#ONLOAD#"><noscript>&MSG_JSCRIPT.</noscript>#FORM_OPEN#<a name="PAGETOP"></a>
<script type="text/javascript">
$().ready(function()
{
$("#t13MessageHolder").effect("bounce", { times:3 }, 500);
$("#t13MessageHolder").fadeOut('slow');
});
</script>
Zu erkennen ist, dass ich zuerst die CSS und JS-Dateien von jquery und der UI Datei eingebunden habe, um dann bei jedem Seitenaufruf für den DIV-Container “t13Messageholder” den “Bounce”-Effekt und das Fadeout aufzurufen. Wer ein anderes Theme als Nr. 13 verwendet, muss die Bezeichnung für den DIV-Container entsprechend anpassen.

