Translate

Freitag, 2. Juni 2023

Interactive Grid - customize Toolbar - add button und actions

Auch wenn es ein Crossposting ist...  möchte ich diese tolle Anleitung und Erklärung der GRID Funktionen rund um den Toolbar kurz hier erwähnen...

Link : https://tm-apex.hashnode.dev/customize-your-toolbar-interactive-grid-9

Danke an Timo Herwix....

Donnerstag, 2. Februar 2023

Es lohnt sich, Ideen beim APEX-Development einzubringen:










Oracle APEX Ideas & Feature Requests


Mal sehen, was hieraus wird... Bitte Voten !!!! (;-)

FR-2958: APEX_SUCCESS_MESSAGE to fade/dismiss after 3-5 secs - Oracle APEX




aktuell (Apex 22.1) funktioniert es hiermit:
apex.jQuery(function() {
  apex.theme42.util.configAPEXMsgs({
    autoDismiss: true,
    duration: 3000  // duration is optional (Default is 3000 milliseconds)
  });
});
--> Page attributes --> "execute when page loads"

Donnerstag, 10. März 2022

Label of Item alignment LEFT

Oracle APEX (since 5.0) comes with default settings for the labels of items "RIGHT" which looks like:

For several items on a page there is ample space wasted... and to my opinion labels aligned LEFT looks much more "in order"....

How to fix?

Go to "Region" settings -->
Appearance

Template: Standard

Template Options: Advanced --> Lable aligned: LEFT

and all lables of the items are nicely order left...

That's the trick.

Before:


After:










Good luck ! [ nächstes Mal wieder in DE]

And . . . . . . 

You can set this in your Region template!
How to ?

Go to Shared Components
pick: Templates
search for "Region" (templates) and copy "Standard" using the copy icon in the most right column and
name it: "Standard_labels_left" -
Create your new template.
Then search for it again and edit it (click on "Standard_labels_left") and you will see:





 







Now you can switch from "right" to "left" easily - and apply changes.


Whenever you have a form and like the labels to be aligned "LEFT", just assign this template to your region.

my 2 cents.

Donnerstag, 17. Februar 2022

Play beep sound

APEX 21.2 

Für die Bestätigung eines Befehles habe ich gerade mit einem "Beep-Sound" experimentiert, den ich als "Bestätigungs-Ton" nutzen möchte.

Hier meine APEX-Lösung:

1. "Beep-Sound" als "wav-Datei" runterladen... (von: https://www.soundjay.com/beep-sounds-1.html)

2. Die Datei "beep-02.wav" in Shared Components" als "application file" hochladen

3. -- > #APP_FILES#beep-02.wav

4. Seite erstellen mit einer Region namens "Region für Sound"
und einem Button namentlich "Play sound"...

5. Bei den Seitenattributen unter "Page HTML Body Attribute" einfügen: 

<script>
$('<audio id="chatAudio">
<source src="#APP_FILES#beep-02.wav" type="audio/wav">
</audio>')
</script>

6. Dynamic Action bei "Click" anlegen mit Namen: "sound"
    when: click
    selection type: button
    Button: Play_sound

7. "add True action" vom Typ "Execute Javascript Code" und bei

settings/code:     $('#chatAudio')[0].play();  

Referenz: https://stackoverflow.com/a/29517759

Danke an Okwo Moses !!! 

Der exakte Usecase folgt....

Viel Spaß damit !


Donnerstag, 9. September 2021

Interactive Report - resize image the smart way...

 I just came across a smart tipp how to resize (not compress) an image of a BLOB in an IR.

In the page properties under CSS- inline 

just put

img {

width: 100px;

height: 100px;

}

and adjust the pixel size and you are done:





thanks to Rex Araya https://apex.rexaraya.com/resize-image-in-apex-interactive-report/

and "Learning a'peks"

Dienstag, 17. August 2021

APEX - Render PDF in Region

 sorry for crossposting - but this one is worth mentioning:

Thanks to Vinish Kapoor and his detailed post on rendering a pdf or image in a static region.

This is a working example for APEX 21.1 (not tested on other versions)

The steps in short:

1. have a table (my_table) with a blob column and mimetype column - and id ofcourse...

2. create an application process (in shared components) of type AJAX callback

DECLARE
  vBlob blob;
  vmimetype varchar2(50);
BEGIN
  SELECT BLOB_column, mimetype_column INTO vBlob, vmimetype
                FROM my_table
                WHERE ID = V('P3_ID');
                 
  owa_util.mime_header(vmimetype,false);
  htp.p('Content-Length: ' || dbms_lob.getlength(vBlob)); 
  owa_util.http_header_close;  
  wpg_docload.download_file(vBlob);
  exception 
  when no_data_found then
   null;
END;

3. create a page with a region type static content and insert this:

<p align="center">
<iframe src="f?p=&APP_ID.:0:&SESSION.:APPLICATION_PROCESS=display_blob:NO:P3_ID,&P3_ID." width="99%" height="1000">
</iframe>
</p>
Note: contrary to Vinishs example 
I had to delete one " : " between NO and :P3_ID... (as shown above)
4. for my purpose I created a 2nd region of type IR or 
classic report and put a link on one of the columns to 
point to the same page 3 ... and defined a hidden item 
named P3_ID.
So as you can see from the above the APEX-URL calls 
the APPLICATION_PROCESS "display_blob" and passes 
the ID from the page to the process... which in turn 
renders the pdf within the iFrame.
I put the report on the left side of the page and 
the 2nd region aside of it.
Have fun and thanks to Vinish again! Great job !

Mittwoch, 31. März 2021

APEX PLUGIN Tutorial von Ronnie Weiss - sehr empfehlenswert !

Danke an Ronnie Weiss für sein akribisch erstelltes APEX Plugin Tutorial

Mit Anleitungs-Video und Beispiel-Code in jedem Tutorial.

Total cool ! Dauert ca. 2 Stunden zum Mitmachen. 

Mein Ergebnis seht Ihr hier: (Link zur Seite in der Oracle cloud











Ronnie ist übrigens ein eifriger APEX Plugin Entwickler. Seine sehr hilfreichen mittlerweile 29 Plugins sind auf APEX.WORLD unter Plugins zu finden.

Noch besser: es gibt zu seinen Plugins eine Demo-Anwendung, die man auch runterladen und zum Ausprobieren auf seinem eigenen Workspace installieren kann.