Projet de Diplôme, session 2003
Gestion des liens à l’intérieur d’un module page 1 sur 5 27.05.2017
Laurent Cottier
Gestion des liens à l’intérieur d’un module
Introduction
Le but de ce rapport est de montrer les différentes recherches effectuées pour obtenir des liens
à l’intérieur d’un composant de module. Ces liens sont destinés à faciliter la navigation dans
un composant de module comprenant une grande quantité de champs. Ils permettent d’éviter
d’employer la barre de défilement. La solution doit rendre possible un pointage au milieu d’un
composant de module.
Les boutons de navigation
Un bouton de navigation permet, comme son nom l’indique, de naviguer à l’intérieur d’un
module, d’un module à un autre ou à l’intérieur d’un seul composant de module.
Malheureusement, la cible du bouton de navigation est toujours le début du composant de
module pointé. Aucun rajout de code ne permet un quelconque changement de direction. Ce
moyen ne constituait donc pas une solution.
La flèche montre bien la destination.
Projet de Diplôme, session 2003
Gestion des liens à l’intérieur d’un module page 2 sur 5 27.05.2017
Laurent Cottier
Le lien hypertexte
Le lien hypertexte est la possibilité la plus « naturelle » qui vient à l’esprit. Il est en deux
parties : la première concerne l’ancre et la seconde le lien vers l’ancre. Avec HTML
(Designer nère des pages en HTML), la syntaxe pour l’ancre est <a name="test"></a> et
celle du lien est <a href="#test">lien</a>.
Créer le lien hypertexte est assez simple. L’écran ci-dessous résume la démarche nécessaire à
l’élaboration du lien :
Il faut juste ne pas oublier de changer les propriétés du composant de module comme suit :
Le problème surgit lorsqu’il s’agit de placer l’ancre. Si on fait afficher la source d’une page
générée par Designer, le code suivant concernant un champ apparaît :
<TR VALIGN="TOP"><TD ALIGN="LEFT"><B>Archive: </B></TD><TD ALIGN="LEFT">
<INPUT TYPE="text" NAME="P_ARCHIVE" SIZE="1" MAXLENGTH="2" VALUE="0"></TD></TR>
L’idéal serait de pouvoir rajouter …<B><A NAME="P2"></A>Archive:</B>… Mais
comme le code s’inscrit automatiquement, il est inadéquat de vouloir le retoucher ainsi. On
pourrait en effet modifier la page avec un éditeur HTML (Front Page par ex.), mais il faudrait
le faire pour toutes les objets sélectionnés et à chaque fois qu’un module est généré. Ce serait
une perte de temps que de vouloir le faire.
Projet de Diplôme, session 2003
Gestion des liens à l’intérieur d’un module page 3 sur 5 27.05.2017
Laurent Cottier
Un unbound item a été rajouté au milieu des autres champs avec comme nom celui de la cible
du lien hypertexte. Cet artifice devait permettre à la source du lien de pointer sur ce champ
« artificiel », mais cela n’a pas été le cas. Dans cette optique, la valeur par défaut a aussi été
modifiée, également en vain.
Item group
La possibilité de créer des groupes (comme l’image ci-contre) laissait
supposer une avancée. Peut-être y avait-il une possibilité de prendre le
groupe pour cible.
Malheureusement, la plupart des capacités de cet outil ne sont pas
disponibles en Web PL/SQL. Il n’est pas possible non plus de pointer
sur un groupe tel que celui-ci.
Projet de Diplôme, session 2003
Gestion des liens à l’intérieur d’un module page 4 sur 5 27.05.2017
Laurent Cottier
L’action Item
C’est d’un autre style de bouton que le bouton de navigation qu’est venue une solution. Pour
créer ce bouton, il faut suivre la démarche suivante :
- sélectionner le bon style de bouton
- Il faut lui donner un nom et sélectionner l’option « OnClick »
Projet de Diplôme, session 2003
Gestion des liens à l’intérieur d’un module page 5 sur 5 27.05.2017
Laurent Cottier
- Editer le code Javascript suivant :
document.getElementById('P_TEXTE').focus();
« P_TEXTE » symbolise le nom du champ à utiliser. Pour savoir quel est le nom du
paramètre correct, il faut la chercher dans la source de la page WEB manipulée. On
peut aussi connaître le paramètre grâce à l’application SQL Navigator. On peut faire
pointer un bouton sur n’importe quel champ de la table, pourvu qu’il soit affiché.
Cette solution est simple et efficace. Mais elle reste néanmoins limitée. Un bouton ne peut en
effet s’afficher que tout en haut ou tout en bas. Un développement plus poussé placerait les
boutons dans un autre frame, laissant ceux-ci toujours visible. La navigation serait à ce
moment idéale. Mais, faute de temps, cette solution est écartée.
Les boutons resteraient toujours visibles ainsi
Page 1
Page 2
Page 3
Page 4
1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !