← Tous les articles

Développer en ABAP dans VS Code — guide pratique d'ADT for VS Code

Installer l'extension officielle ABAP Development Tools for VS Code, se connecter à un système et découvrir les fonctions du quotidien — raccourcis, transports, tests unitaires, ATC, notebooks SQL et serveur MCP pour les assistants IA.

ADTVS CodeABAPOutilsIA

Pendant des années, développer en ABAP voulait dire Eclipse (ou SE80). Avec ABAP Development Tools for VS Code, SAP propose désormais une extension officielle : vous écrivez de l'ABAP dans le même éditeur que pour CAP, Fiori et JavaScript.

Ce guide est une visite pratique, tirée de mon usage quotidien : quoi installer, comment se connecter et quelles fonctions font gagner le plus de temps. Il se base sur la version 1.2 de l'extension.

Pourquoi VS Code pour l'ABAP ?

  • Un seul éditeur pour tout — ABAP, CDS, Fiori Elements, UI5 et CAP côte à côte.
  • Démarrage léger et les fonctions VS Code que vous connaissez déjà : multi-curseur, palette de commandes, Git, thèmes.
  • Prêt pour l'IA — l'extension peut lancer un serveur MCP local afin que les assistants IA lisent les objets ABAP de façon contrôlée.

Installation

  1. Ouvrez la vue Extensions (Ctrl+Shift+X).
  2. Recherchez ABAP Development Tools et choisissez l'extension publiée par SAP (sapse.adt-vscode).
  3. Installez-la puis rechargez VS Code. La version 1.2 nécessite VS Code 1.109 ou plus récent.
L'extension ABAP Development Tools dans la vue Extensions
L'extension ABAP Development Tools dans la vue Extensions

Remarque : l'extension s'active à la demande — son language server ne démarre que lorsque vous ouvrez un objet ou un dossier ABAP.

Se connecter à un système

Toutes les commandes ADT se trouvent dans la palette de commandes, catégorie ABAP (Ctrl+Shift+P, puis tapez ABAP).

  1. Lancez ABAP: New Destination... et suivez l'assistant (système, mandant, utilisateur, langue de connexion).
  2. Lancez ABAP: Log On to Destination... pour ouvrir une session.
  3. ABAP: Open Destination Settings (JSON) affiche toutes les destinations en JSON — pratique pour recopier une configuration sur une autre machine.
Création d'une destination depuis la palette de commandes
Création d'une destination depuis la palette de commandes

Ajouter des objets à l'espace de travail

Au lieu d'une arborescence de projet, les objets ABAP apparaissent comme des dossiers dans l'Explorer de VS Code :

  • Add Package as Folder to Workspace... — un package et ses sous-packages
  • Add Local Objects of User as Folder to Workspace... — vos objets $TMP
  • Add Destination as Folder to Workspace... — tout le système

Pour aller directement à un objet, utilisez Open Object... (Ctrl+Shift+A), exactement comme dans Eclipse.

Un package ajouté comme dossier de l'espace de travail
Un package ajouté comme dossier de l'espace de travail

Les raccourcis à retenir

Raccourci Action
Ctrl+Shift+A Ouvrir un objet ABAP
Ctrl+Shift+Alt+N Créer un objet ABAP
Ctrl+F2 Contrôler l'objet (syntaxe)
Ctrl+F3 Activer
Ctrl+Shift+F3 Activer tous les objets inactifs
F5 Exécuter la classe comme application console
Ctrl+Shift+D Ouvrir la documentation ABAP
Ctrl+Shift+F10 Lancer les tests ABAP Unit
Ctrl+Shift+F11 Lancer les tests ABAP Unit avec couverture
Ctrl+U Déverrouiller l'objet

Si vous venez d'Eclipse ADT, les plus importants — Ctrl+F2, Ctrl+F3 et Ctrl+Shift+A — fonctionnent de la même manière.

Créer des objets

Create New ABAP Object... ouvre un assistant : choisissez le type d'objet (classe, vue CDS, behavior definition, service binding...), le package et, pour un package transportable, l'ordre de transport. Les aides à la saisie de l'assistant interrogent le système pendant la frappe.

L'assistant Create New ABAP Object
L'assistant Create New ABAP Object

Transport Organizer

La barre latérale de l'Explorer reçoit une vue ABAP Transport Organizer. Vous y voyez vos ordres et tâches, pouvez changer le propriétaire, ajouter des utilisateurs ou des objets, ouvrir les modifications d'un ordre et copier les numéros d'ordre ou de tâche.

La vue ABAP Transport Organizer
La vue ABAP Transport Organizer

Release est disponible directement dans le menu contextuel. Comme une libération ne peut pas être annulée, je préfère libérer uniquement selon le processus convenu dans l'équipe.

Historique des versions et comparaison

La vue ABAP Timeline liste les versions de l'objet courant. De là :

  • Compare with Latest — ce qui a changé par rapport à la version active
  • Select for Compare / Compare with Selected — comparer deux versions quelconques
  • Toggle Version — basculer entre source active et inactive
Comparaison de deux versions depuis l'ABAP Timeline
Comparaison de deux versions depuis l'ABAP Timeline

Qualité : ABAP Unit et ATC

Les tests ABAP Unit apparaissent dans le Test Explorer standard de VS Code. Lancez une fois Discover ABAP Unit Tests (Ctrl+Shift+F9) ou activez la découverte automatique pour l'éditeur actif ; ensuite, les tests s'exécutent avec ou sans couverture.

Pour les contrôles statiques, Run ABAP Test Cockpit contrôle l'objet courant et Run ABAP Test Cockpit With... permet de choisir une variante — par exemple une variante cloud readiness. Les résultats arrivent dans la vue Problems, d'où vous pouvez même faire une Request Exemption.

Résultats ABAP Unit dans le Test Explorer et constats ATC dans Problems
Résultats ABAP Unit dans le Test Explorer et constats ATC dans Problems

SQL Notebook pour l'aperçu des données

ABAP: SQL Notebook crée un notebook dont chaque cellule est une requête ABAP SQL. Chaque cellule peut viser un système différent (Set Cell System) et possède sa propre limite de lignes (Set Cell Max. Rows). Idéal pour garder ses requêtes d'analyse à côté de ses notes.

Un SQL Notebook avec une requête et son résultat
Un SQL Notebook avec une requête et son résultat

ABAP Feeds et débogueur

Le panneau ABAP Feeds, en bas, s'abonne aux flux du système (par exemple les erreurs d'exécution) avec des filtres modifiables. Le débogueur ABAP est activé par défaut (adt.debugger.enableDebugger) et utilise l'interface de débogage habituelle de VS Code.

Assistants IA : le serveur MCP

L'extension peut démarrer un serveur MCP local (port par défaut 2236). Les assistants IA compatibles MCP peuvent alors rechercher, lire et contrôler des objets ABAP via vos sessions ouvertes.

La sécurité est prévue d'emblée : les restrictions d'accès sont actives par défaut, et avec une liste d'autorisation vide, rien n'est permis. Vous indiquez explicitement les destinations et packages autorisés. L'outil edit file pour les objets ABAP est lui aussi désactivé par défaut.

settings.json
{
  // ADT MCP server for AI assistants – keep the allowlist on
  "adt.mcpServer.enabled": true,
  "adt.mcpServer.accessRestrictionsEnabled": true,
  "adt.mcpServer.accessRestrictions": {
    "destinations": "DEV_100_*",
    "packages-objectChanges": "ZSANDBOX*"
  },
  "adt.mcpServer.enableEditFileToolForABAPObjects": false,

  // Joule side-by-side (optional)
  "adt.joule.url": "",
  "adt.joule.editor.predictiveCodeCompletion": true
}
Paramètres du serveur MCP dans l'éditeur de paramètres de VS Code
Paramètres du serveur MCP dans l'éditeur de paramètres de VS Code

Mon conseil : commencez en lecture seule (packages-objectChanges vide) et n'autorisez les modifications que pour un package bac à sable.

Quand Eclipse reste nécessaire

Tout ce qu'offre Eclipse ADT n'est pas encore dans VS Code. Dans ce cas, Open with ADT for Eclipse ouvre l'objet courant dans Eclipse, et Share Link... crée un lien qu'un collègue peut ouvrir dans l'un ou l'autre outil.

En résumé

ADT for VS Code est déjà suffisant pour le travail quotidien en RAP et CDS : navigation rapide, activation, transports, tests unitaires, ATC et aperçu des données sont là — ainsi qu'un moyen sûr d'associer des assistants IA au développement ABAP. Essayez-le à côté d'Eclipse ; passer de l'un à l'autre se fait sans effort.

Commentaires

Laisser un commentaire