vendredi 21 août 2009

Le conflit des générations dans la famille ALV

L'ALV (ABAP List Viewer) est une des plus utiles fonctionnalités de SAP afin d'écrire des reports. Avec le temps, SAP a développé plusieurs "évolutions" afin de limiter le code à produire pour pouvoir exploiter l'ALV ou pour coller au modèle ABAP Objets vers lequel il s'était orienté suite à la sortie des contrôles SAP Enjoy.

1ère génération (4.6 et +) : l'ALV à base de modules fonctions

Il s'agit des FM 'REUSE_ALV_GRID_DISPLAY' et consorts.

2ème génération (4.6C et +) : ALV Objet

On utilise cette fois des classes telles que CL_GUI_ALV_GRID.
A noter qu'un mécanisme de BAdIs s'appuyant sur une classe dérivée (assez méconnnue) permet de personnaliser l'affichage de la grille ALV.

3ème génération (NW2004 et +) : ALV Object Model

Frappée d'une malédiction (impossibilité de faire de l'édition de cellules), il s'agit de la classe CL_SALV_TABLE.


Je n'ai traité ici que le cas des grilles ALV, mais il existe également les listes hiérarchiques et les arbres.
  • Simple list:
  • Hierarchical sequential list:
  • Tree
A notre que le Web Dynpro ABAP exploite également un composant WD ALV et que ce sera bientôt le cas avec Web Dynpro Java (annoncé pour la version NW 7.10)

Liens utiles:
FAQ ALV
An Easy Reference for ALV Grid Control

ABAP Controls, Tree's and editable ALV with drag & drop

1 commentaire:

Christophe a dit…

Notre blog a perdu de son contenu depuis ton départ. J4ai mis un peu de temps pour répondre car je n'avais pas accès de Log.