Académique Documents
Professionnel Documents
Culture Documents
2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Sommaire :
Les BLOB dans les forms
Le support BLOB dans les reports
Travailler avec les BLOB par programmation
Exemple d'application avec form et report affichant des images
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Note:
Le jeu de caractres du BLOB n'est pas automatiquement dfini au
chargement. Pour stocker le jeu de caractre du BLOB, vous devez fournir un
item de page supplmentaire sur votre page associe la colonne utilise
pour stocker le jeu de caractres pour le document qui est tlcharg.
2
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Si le BLOB concern est une image, vous pouvez l'afficher dans le form.
Vous pouvez utiliser le type d'item Display Image pour la grer de
manire dclarative. .
1.1.3 Supprimer la rfrence l'Image
Comme il n'y a pas de remise NULL avec File Browse, si vous voulez
Pour faciliter l'intgration d'un lien download dans un tat, le report doit
inclure la slection de la longueur du BLOB (par exemple,
dbms_lob.getlength(RESUME)). Si la longueur est de 0, le BLOB est NULL et
aucun lien download n'est affich. De la mme manire, comme vous
spcifiez un format masque pour une date ou numrique vous pouvez
formater le lien download. Le format DOWNLOAD est cependant plus
complexe que les autres formats masque car vous devez fournir au
moins trois paramtres, par exemple :
DOWNLOAD:EMP:RESUME:EMPNO
Obligatoire
Oui
Table Name
Oui
Column
Oui
Description
Identifie le format masque de report
DOWNLOAD.
Nom Case sensitive de la table
contenant la colonne cible de type
BLOB.
Nom Case sensitive de la colonne
3
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
4
5
6
7
containing
BLOB
Primary Key
Column 1
Primary Key
Column 2
MIME type
Column
Filename
Column
de type BLOB.
Oui
Non
Non
Non
Last Update
Column
Non
10
Content
Disposition
Non
11
Download
Text
Non
Exemple :
4
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
DOWNLOAD:EMP:RESUME:EMPNO::RESUME_MIMETYPE:RESUME_FILENAME:RESUME_LA
ST_UPDATE::attachment:Resume
Obligatoire
Yes
Table
Name
Yes
Column
containing
BLOB
Primary
Key
Column 1
Primary
Key
Column 2
MIME type
Column
Filename
Column
Yes
Last
Update
Column
Non
Character
Non
4
5
6
7
Description
Identifie le format masque report
IMAGE.
Nom Case sensitive de la table
contenant la colonne cible de type
BLOB.
Nom de la colonne Case sensitive de
type BLOB.
Yes
Non
Non
Non
5
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Set
Column
10
Content
Non
Disposition
11
Alt Text
Non
Exemple :
IMAGE:EMP:RESUME:EMPNO::RESUME_MIMETYPE:RESUME_FILENAME:RESUME_LAST_
UPDATE::attachment:Resume
Description
p_item_name
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Valeur de la cl primaire 1.
p_v2
Valeur de la cl primaire 2.
p_content_disposition
Source du report :
Code :
7
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
select p.product_id,
p.product_name,
p.product_description,
p.category,
decode(p.product_avail, 'Y','Yes','N','No') product_avail,
p.list_price,
(select sum(quantity) from demo_order_items where product_id =
p.product_id) units,
(select sum(quantity * p.list_price) from
demo_order_items where product_id = p.product_id) sales,
(select
count(o.customer_id) from demo_orders o, demo_order_items t where o.order_id =
t.order_id and t.product_id = p.product_id group by p.product_id) customers,
(select max(o.order_timestamp) od from demo_orders o, demo_order_items i where
o.order_id = i.order_id and i.product_id = p.product_id) last_date_sold,
p.product_id
img, 'f?p='||:app_id||':6:'||:app_session||'::::P6_PRODUCT_ID:'||p.product_id
icon_link, decode(nvl(dbms_lob.getlength(p.product_image),0),0,null,
'<img
style="border: 4px solid #CCC; -moz-border-radius: 4px; -webkit-border-radius:
4px;" '||
'src="'||
apex_util.get_blob_file_src('P6_PRODUCT_IMAGE',p.product_id)||
'" height="75"
width="75" alt="Product Image" title="Product Image" />')
detail_img, decode(nvl(dbms_lob.getlength(p.product_image),0),0,null,
apex_util.get_blob_file_src('P6_PRODUCT_IMAGE',p.product_id))
detail_img_no_style from demo_product_info p
Report Attributes
8
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
9
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Source :
Code :
return '<img
src="'||apex_util.get_blob_file_src('P6_PRODUCT_IMAGE',:P6_PRODUCT_ID)||'" />';
Page Process
Suppression de l'image
code :
-- empty the image
update demo_product_info
set product_image = null,
10
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
mimetype = null,
filename=null,
image_last_update=null
where product_id = :P6_PRODUCT_ID;
Conditions
11
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
1.4
12
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Settings
13
Daphn Nougier - 12/11/2014
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Page Process
Oracle Application Express Application Builder User's Guide Release 4.2 - E35125-05
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/advnc_blob.htm#HTMDB25911
Conditions Type
Exists(SQL query returns at least one row)
Expression 1
SELECT mimetype from personne where pers_id = :P3_PERS_ID and mimetype like
'image%'
Security
Pour afficher l'image et pas les tags HTML mettre Escape spcial characters no
15
Daphn Nougier - 12/11/2014