J'utilise Oracle APEX et j'ai une région de rapport dans une page qui affiche les colonnes d'une requête SQL. Je souhaite ajouter des boutons d'édition à la première colonne de ce rapport afin que l'utilisateur puisse cliquer dessus et modifier/réviser l'un des résultats. Comment ajouter ce bouton d'édition? Merci.Comment ajouter un bouton d'édition à chaque ligne d'un rapport dans Oracle APEX?
Répondre
Ajouter une colonne à l'instruction SELECT du rapport comme celui-ci:
SELECT '' edit_link, -- This is the new column ...
Aller au rapport onglet Attributs.
Déplacez la nouvelle colonne EDIT_LINK en haut de la liste des colonnes (si vous voulez qu'elle soit la première).
Cliquez sur l'icône en forme de crayon et de papier à gauche de l'alias EDIT_LINK pour ouvrir la page Attributs de colonne.
Accédez à la section Column Link de la page Attributs de colonne. Choisissez l'une des icônes indiquées par [Icône 1], [Icône 2], ... (vous pouvez également utiliser l'une des vôtres mais qui est plus avancée).
Remplissez les champs de liaison restants pour indiquer à quelle page de votre application vous voulez vous rendre lorsque le lien est enfoncé et dans quelles valeurs vous allez passer. Des listes de valeurs sont fournies pour vous aider. Par exemple, vous pouvez spécifier:
- Page: 42
- Point 1 Nom: P42_EMPNO
Point 1 Valeur: # EMPNO #
(Ce naviguerait à la page 42, l'option de réglage de la page P42_EMPNO à la valeur de EMPNO dans la ligne du rapport en cours.)
Appuyez sur le bouton Appliquer les modifications.
Maintenant exécutez la page et vous aurez un lien d'édition pour chaque ligne.
Vous pouvez utiliser la section Column Link (selon la réponse de Tony Andrews) sur n'importe quelle colonne du rapport pour ajouter des liens. par exemple. "Emp Name" peut être lié aux détails de l'employé, "Dept Name" peut être lié aux détails du département, etc.
Dans mon cas, je voudrais appeler une fonction javascript pour afficher un formulaire modal pour éditer l'information de cette ligne spécifique. Je suspecte que j'ai placé la cible à l'URL, et l'URL à "Javascrip: function();" , mais comment passer par le PK primaire pour éditer juste cette ligne? –