Forum APEX - Développement Oracle Application Express

Le site des développeurs francophones APEX - Oracle Application Express

Vous n'êtes pas identifié(e).

Annonce

Bienvenue sur le forum Oracle APEX

S'il s'agit de votre première visite, nous vous invitons à consulter la FAQ en cliquant sur le lien ci-dessous. Vous pouvez poster ici toutes vos questions sur l'installation, le développement (composants clients et serveurs), l'administration des instances Oracle APEX. Par ailleurs, ce forum diffuse les annonces et actualités relatives à Oracle APEX.

Oracle APEX 4.1

Oracle APEX 4.1 est disponible depuis le 24 août 2011.

Oracle APEX 4.0

Oracle APEX 4.0 est disponible depuis le 23 juin 2010. Il existe 2 distributions, une distribution en langue anglaise uniquement et une distribution multilingue.

#1 2011-07-28 08:10:23

brendani
Membre
Inscription : 2010-09-30
Messages : 3

re-utilisation d'une valeur de filtre dans une LMD

Bonjour,

utilisant Apex 3.2, je cherche à savoir comment on peut re utiliser une valeur de filtre (STUDY = 'ABCD') d'un état interactif dans un process LMD attaché à un bouton (sur cette meme page).
Le process "on Submit- after computations and validations" doit etre l'equivalent du statement ci dessous mais en mode dynamique.

begin
insert into table2 select * from table1
where study =  'ABCD'; end;

J'ai bien essayé en pensant à l'avance que ça n'allait pas fonctionner la clause
Where study = :STUDY
car :STUDY n'est pas un element de page.
J'ai aussi essayé  study = :IR_STUDY  ça ne fonctionne pas non plus.
Avec le mode debbug = on, j'ai pu voir que le filtre était basé sur une variable crée par Apex:
where ("STUDY" = :APXWS_EXPR_1)
Alors, j'ai essayé mais sans succes.

J'ai pu voir aussi :
0.28: IR binding: ":APXWS_EXPR_1"="APXWS_EXPR_1" value="ABCD"
0.28: IR binding: ":APXWS_MAX_ROW_CNT"="APXWS_MAX_ROW_CNT" value="10000"

Il me semble etre proche de la solution, mais je suis bloqué.
Est ce quelqu'un peut m'aider ?

Merci par avance.
Brendani

Hors ligne

#2 2011-07-31 21:42:34

admin
Administrateur
Inscription : 2010-08-02
Messages : 83

Re : re-utilisation d'une valeur de filtre dans une LMD

Bonjour Brendani,

Les filtres définis dans un état interactif (Interactive report) sont mémorisés en temps réel dans la table WWV_FLOW_WORKSHEET_CONDITIONS du schéma apex pour la version 4 APEX_040000.

Pour utiliser ces filtres dans un processus PL/SQL, il faut d'abord référencer l'état intéractif avec un alias alphanumérique (section Advanced, propriété Region ALIAS). Attention, l'alias doit être unique dans l'application.

Ensuite, interrogez la colonne ALIAS de la vue APEX_APPLICATION_PAGE_IR pour connaitre la valeur INTERACTIVE_REPORT_ID.

Enfin, interrogez la table WWV_FLOW_WORKSHEET_CONDITIONS pour connaitre les filtres utilisées dans l'état interactif associés à l'INTERACTIVE_REPORT_ID.

Chaque filtre est stocké dans une ligne dans cette table (COLUMN_NAME, OPERATOR, EXPR).

Hors ligne

Pied de page des forums