Je suis confronté à un autre défi dans APEX et j'espère que vous pouvez aider.
J'ai créé un arbre en utilisant la méthode décrite dans John & Super livre de Scott, "Pro Application Express" par lequel le lien de page est stocké dans un tableau. Voici un exemple:
go to a page passing some parameters
f?p=&APP_ID.:3:&SESSION.::::P3_IDENTIFIER,P3_FAMILY_NAME:&P2_IDENTIFIER.,&P2_FAMILY_NAME.
Lorsque la page est exécutée cela fonctionne comme prévu. Je peux développer l'arbre et naviguer vers les paramètres de passage de page si nécessaire. Cependant, lorsque j'ai activé la protection d'état de session, ces liens «fabriqués à la main» ont cessé de fonctionner. Ce à quoi je m'attendais car le lien ne contient pas de somme de contrôle. Après une enquête, je vois que je dois utiliser APEX_UTIL.PREPARE_URL pour générer l'URL avec une somme de contrôle. Malheureusement, c'est là que je rencontre des problèmes. Je ne peux pas sembler pouvoir passer les valeurs de paramètres à la page appelante.
La requête de l'arbre original était:
select "IDENTIFIER" id,
"PARENT_IDENTIFIER" pid,
"TITLE" name,
"LINK" link,
null a1,
null a2
from <some table>
J'ai ensuite changé cette option pour utiliser APEX_UTIL.PREPARE_URL:
....
APEX_UTIL.PREPARE_URL('f?p='||:APP_ID||':3:'||:APP_SESSION||'::::P3_IDENTIFIER,P3_FAMILY_NAME:&P2_IDENTIFIER.,&P2_FAMILY_NAME.') link,
...
et cela fonctionne, la page est appelée et je peux voir les valeurs de la paramètres passés. Mais je ne peux pas utiliser cette méthode car elle est limitée à une seule page!
Enfin j'ai essayé stocker le numéro de page, les paramètres et les valeurs des paramètres dans différentes colonnes du tableau que l'arbre est basé sur, puis les réunir:
...
APEX_UTIL.PREPARE_URL('f?p='||:APP_ID||':'||navigate_to_page||':'||:APP_SESSION||'::::'||parameters||':'||parameter_values) link,
...
Where:
navigate to page has the value of: 3
parameters has the value of: P3_IDENTIFIER,P3_FAMILY_NAME
parameter_values has the values of: &P2_IDENTIFIER.,&P2_FAMILY_NAME.
Cela appelle maintenant la page, mais le paramètre les valeurs sont devenues littérales. donc où j'attends un identifiant, je vois & P2_IDENTIFIER et idem pour le nom de famille.
Qu'est-ce que je fais mal? Comment puis-je transmettre des valeurs à ma page appelée en utilisant apex_util_prepare_url?
En cas de besoin, les détails de mon environnement sont: Apex 3.2.1, Oracle Application Server 10.1.2.3. Oracle Database 10.2.0.3
Merci d'avance pour toute aide que vous pourriez être en mesure de fournir.
+1 et la réponse. Merci (encore!) Jeffrey qui a aidé. Merci également pour la note de côté sur les données entrées par l'utilisateur Cordialement Ian. –