SAP Build Code est le nouvel environnement de developpement assiste par IA de SAP pour les developpeurs professionnels. Contrairement a SAP Build Apps (Low-Code), Build Code s’adresse aux developpeurs Pro-Code et integre Joule AI directement dans le processus de developpement. Cet article montre comment SAP Build Code fonctionne avec ABAP Cloud et quand utiliser quel outil.
Qu’est-ce que SAP Build Code ?
SAP Build Code est le composant Pro-Code de la plateforme SAP Build, introduit en 2024 :
| Aspect | Description |
|---|---|
| Base | SAP Business Application Studio (BAS) |
| Integration IA | Joule AI nativement integre |
| Public cible | Developpeurs professionnels |
| Technologies | CAP, RAP, Fiori, ABAP Cloud |
| Deploiement | Base sur le cloud (navigateur) |
SAP Build Code vs. autres produits SAP Build
SAP Build Code fait partie de la famille SAP Build plus large, mais se distingue nettement :
| Produit | Approche | Public cible |
|---|---|---|
| SAP Build Apps | Low-Code/No-Code | Citizen Developer |
| SAP Build Process Automation | Workflow/RPA | Analystes metier |
| SAP Build Work Zone | Portail/UX | Tous les utilisateurs |
| SAP Build Code | Pro-Code + IA | Developpeurs professionnels |
Plus d’informations sur Low-Code vs. Pro-Code dans l’article SAP Build vs. ABAP Cloud.
SAP Build Code vs. ADT vs. Business Application Studio
Une question frequente : Quel IDE utiliser pour ABAP Cloud ? Voici la comparaison detaillee :
Comparaison des fonctionnalites
| Fonctionnalite | ADT (Eclipse) | BAS (Navigateur) | SAP Build Code |
|---|---|---|---|
| Installation | Installation locale | Aucune (navigateur) | Aucune (navigateur) |
| Developpement ABAP | Complet | Complet | Complet |
| Developpement CAP | Non | Oui | Oui (optimise) |
| Joule AI | Oui (depuis 2024) | Limite | Entierement integre |
| Generation de code IA | Oui | Partiel | Etendu |
| Mode hors ligne | Oui | Non | Non |
| Performance | Tres bonne | Bonne | Bonne |
| Multi-projets | Oui | Oui | Oui |
| Collaboration equipe | Git | Git + Dev Spaces | Git + Dev Spaces + IA |
| Integration SAP | BTP, On-Prem | Axe BTP | Axe BTP |
| Couts | Gratuit | Abonnement BTP | Licence Build Code |
Quand utiliser quel outil ?
Choisir ADT (Eclipse) si :
- Vous developpez principalement en ABAP Cloud
- Le travail hors ligne est important
- Vous connectez du S/4HANA On-Premise
- Une performance maximale est requise
- Vous avez deja de l’experience Eclipse
Choisir Business Application Studio si :
- Vous ne voulez pas d’installation locale
- Le developpement Fiori/CAP est au centre
- Vous travaillez depuis differents appareils
- Le partage de Dev Space en equipe est important
Choisir SAP Build Code si :
- Vous voulez utiliser au maximum le support IA
- Vous combinez CAP et ABAP Cloud
- L’integration Joule est decisive
- Vous construisez des Full-Stack Cloud Apps
Plus d’informations sur BAS sous SAP Business Application Studio.
Integration de Joule AI dans SAP Build Code
La caracteristique distinctive de SAP Build Code est l’integration profonde de Joule AI. Joule est l’IA generative de SAP, specialement entrainee sur les technologies SAP.
Que peut faire Joule dans SAP Build Code ?
| Capacite | Description | Exemple |
|---|---|---|
| Generation de code | Code ABAP/CAP depuis le langage naturel | ”Cree une vue CDS pour les commandes” |
| Explication de code | Comprendre le code existant | ”Que fait cette methode ?” |
| Documentation | Generer commentaires et docs | ”Documente cette classe” |
| Tests unitaires | Creer des cas de test | ”Genere des tests pour cette validation” |
| Analyse d’erreurs | Identifier et corriger les bugs | ”Pourquoi ce code echoue-t-il ?” |
| Objets RAP | Creer Behavior, CDS, Service | ”Cree un RAP Business Object” |
| Modele de donnees | Suggerer des modeles de donnees | ”Concois un modele pour la gestion de projet” |
Workflow Joule : Generer une vue CDS
Voici comment fonctionne le developpement assiste par IA en pratique :
1. Prompt a Joule :
Cree une vue CDS Interface pour les commandes clients avec les champs :- Numero de commande (cle)- Numero client- Date de commande- Montant total- Statut (ouvert, en cours, termine)2. Joule genere :
@AccessControl.authorizationCheck: #NOT_REQUIRED@EndUserText.label: 'Commandes clients"define view entity ZI_CustomerOrder as select from zcustomer_order{ key order_id as OrderId, customer_id as CustomerId, order_date as OrderDate, @Semantics.amount.currencyCode: 'Currency" total_amount as TotalAmount, currency as Currency, @ObjectModel.text.element: ['StatusText'] status as Status,
case status when 'O' then 'Ouvert" when 'I' then 'En cours" when 'C' then 'Termine" else 'Inconnu" end as StatusText}3. Revue et ajustement : Vous examinez le code genere, ajustez les details (par ex. noms de champs, annotations) et l’integrez dans votre projet.
Workflow Joule : Classe ABAP avec tests unitaires
1. Prompt :
Cree une classe ABAP pour la validation des codes postaux francais.La methode doit verifier si un code postal contient exactement 5 chiffres.Genere egalement les tests unitaires correspondants.2. Joule genere la classe :
CLASS zcl_cp_validator DEFINITION PUBLIC FINAL CREATE PUBLIC.
PUBLIC SECTION. METHODS validate_cp IMPORTING iv_cp TYPE string RETURNING VALUE(rv_valid) TYPE abap_bool.
ENDCLASS.
CLASS zcl_cp_validator IMPLEMENTATION.
METHOD validate_cp. " Code postal francais : exactement 5 chiffres DATA(lv_cp) = condense( iv_cp ).
rv_valid = xsdbool( strlen( lv_cp ) = 5 AND lv_cp CO '0123456789" ). ENDMETHOD.
ENDCLASS.3. Joule genere les tests unitaires :
CLASS ltcl_cp_validator DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
PRIVATE SECTION. DATA cut TYPE REF TO zcl_cp_validator.
METHODS setup. METHODS test_valid_cp FOR TESTING. METHODS test_invalid_cp_letters FOR TESTING. METHODS test_invalid_cp_too_short FOR TESTING. METHODS test_invalid_cp_too_long FOR TESTING. METHODS test_cp_with_spaces FOR TESTING.
ENDCLASS.
CLASS ltcl_cp_validator IMPLEMENTATION.
METHOD setup. cut = NEW #( ). ENDMETHOD.
METHOD test_valid_cp. cl_abap_unit_assert=>assert_true( act = cut->validate_cp( '75001' ) msg = 'Un code postal valide devrait etre accepte" ). ENDMETHOD.
METHOD test_invalid_cp_letters. cl_abap_unit_assert=>assert_false( act = cut->validate_cp( '7500A' ) msg = 'Un code postal avec des lettres devrait etre rejete" ). ENDMETHOD.
METHOD test_invalid_cp_too_short. cl_abap_unit_assert=>assert_false( act = cut->validate_cp( '7500' ) msg = 'Un code postal trop court devrait etre rejete" ). ENDMETHOD.
METHOD test_invalid_cp_too_long. cl_abap_unit_assert=>assert_false( act = cut->validate_cp( '750011' ) msg = 'Un code postal trop long devrait etre rejete" ). ENDMETHOD.
METHOD test_cp_with_spaces. cl_abap_unit_assert=>assert_true( act = cut->validate_cp( ' 75001 ' ) msg = 'Un code postal avec espaces devrait etre valide apres nettoyage" ). ENDMETHOD.
ENDCLASS.Plus d’informations sur Joule et ABAP sous Joule pour ABAP.
Configuration de SAP Build Code
Prerequis
- Compte SAP BTP (Trial ou productif)
- Abonnement ou licence SAP Build Code
- Navigateur moderne (Chrome, Firefox, Edge)
- Connexion Internet (base sur le cloud)
Configurer l’acces
Etapes pour configurer SAP Build Code :
1. Ouvrir le SAP BTP Cockpit2. Selectionner le Subaccount3. Services → Instances and Subscriptions4. Rechercher "SAP Build Code" et s'abonner5. Attribuer le role utilisateur : "SAP_Build_Code_User"6. Ouvrir le SAP Build Lobby7. Selectionner "SAP Build Code"8. Creer un nouveau projet ou ouvrir un existantCreer un projet pour ABAP Cloud
Dans SAP Build Code, vous pouvez creer differents types de projets :
| Type de projet | Description | Pertinence ABAP |
|---|---|---|
| Full-Stack Application | Backend CAP + UI Fiori | CAP comme alternative a ABAP |
| ABAP Cloud Project | ABAP Cloud pur | Developpement ABAP direct |
| Fiori Application | UI pour services existants | Consomme les services RAP ABAP |
| Mobile Application | SAP Mobile Development Kit | Utilise les APIs OData ABAP |
Connecter un systeme ABAP
Connecter un systeme ABAP Cloud dans SAP Build Code :
1. Ouvrir le projet2. Appeler le "Service Center"3. Cliquer sur "Add Service"4. Selectionner "SAP S/4HANA Cloud" ou "SAP BTP ABAP Environment"5. Entrer l'URL du systeme6. Authentification (utilisateur/mot de passe ou OAuth)7. Tester la connexion8. Parcourir les services et objetsWorkflow de developpement dans SAP Build Code
Workflow Full-Stack typique
Un scenario frequent : Vous developpez une application Full-Stack avec un backend ABAP Cloud et une UI Fiori.
Etape 1 : Backend en ABAP Cloud (utiliser ADT en parallele)
Pour la logique ABAP complexe, ADT reste recommande :
" Developper le RAP Business Object dans ADT" Behavior Definitionmanaged implementation in class zbp_i_product unique;strict ( 2 );
define behavior for ZI_Product alias Productpersistent table zproductlock masterauthorization master ( instance ){ field ( readonly ) ProductId; field ( mandatory ) ProductName, Price;
create; update; delete;
action ( features : instance ) setDiscountPrice parameter ZA_DiscountInput result [1] $self;
validation validatePrice on save { create; update; } determination setCreatedInfo on save { create; }}Etape 2 : Exposer le service dans SAP Build Code
Dans SAP Build Code, vous pouvez facilement integrer le service :
1. Ouvrir le Service Center2. Selectionner le systeme ABAP3. Rechercher le service OData (par ex. ZUI_PRODUCT_O4)4. Cliquer sur "Add to Project"5. Joule : "Cree une app Fiori List Report pour ce service"Etape 3 : Generer l’app Fiori avec Joule
Joule peut scaffolder des apps Fiori completes :
Prompt : "Cree une app Fiori Elements List Report pour les produitsavec une table filtrable, navigation vers les detailset dialogue de creation."Joule genere :
app/product/webapp/manifest.jsonapp/product/annotations.cds- Routing et navigation
- Textes i18n (francais/anglais)
Bonnes pratiques : SAP Build Code avec ABAP Cloud
1. Utiliser le developpement hybride
Combinez les forces des deux mondes :
| Tache | Outil |
|---|---|
| Logique ABAP complexe | ADT (Eclipse) |
| Vues CDS avec IA | SAP Build Code + Joule |
| UI Fiori | SAP Build Code |
| Debogage | ADT |
| Tests unitaires | ADT ou Build Code |
| Services CAP | SAP Build Code |
| Git/Deploiement | Les deux |
2. Utiliser Joule efficacement
A faire :
- Utiliser des prompts clairs et specifiques
- Toujours revoir le code genere
- Affiner iterativement (prompts de suivi)
- Utiliser pour le code boilerplate
- Faire generer la documentation
A eviter :
- Faire confiance aveuglément sans revue de code
- Faire generer entierement la logique metier complexe
- Adopter du code sensible a la securite sans verification
- Utiliser des zones critiques pour les performances sans optimisation
3. Etablir des workflows d’equipe
Workflow d'equipe recommande :
1. Creer une branche de fonctionnalite (Git)2. Developper le backend ABAP dans ADT3. Tester le service (OData, Postman)4. UI Fiori dans SAP Build Code + Joule5. Revue de code (Pull Request)6. Tests d'integration7. Deploiement via CI/CDLimitations et remarques
Limitations actuelles (etat 2026)
| Domaine | Limitation |
|---|---|
| Debogage ABAP | Limite dans Build Code, meilleur dans ADT |
| Hors ligne | Impossible (cloud uniquement) |
| Performance | Depend du navigateur |
| Refactorings complexes | ADT offre plus d’outils |
| SAP GUI | Non integre |
Licences
SAP Build Code necessite une licence separee ou fait partie de certains packages SAP :
- SAP Build Code Free Tier : Utilisation limitee pour les tests
- SAP Build Code Standard : Fonctionnalites completes
- SAP BTP Enterprise Agreement : Souvent inclus
Verifiez votre contrat SAP pour les conditions exactes.
Aide a la decision : Quand SAP Build Code ?
SAP Build Code est ideal pour :
- Developpement Full-Stack Cloud (CAP + Fiori + ABAP)
- Productivite assistee par IA avec Joule
- Nouveaux projets sans dependances legacy
- Equipes avec competences CAP et ABAP
- Prototypes rapides avec support IA
ADT reste meilleur pour :
- Developpement ABAP Cloud pur
- Projets S/4HANA On-Premise
- Debogage et analyse complexes
- Scenarios hors ligne
- Equipes ABAP etablies sans besoin de CAP
Approche hybride (recommandee)
Pour la plupart des equipes, une approche hybride est recommandee :
+------------------+ +------------------+| ADT | | SAP Build Code ||------------------| |------------------|| Backend ABAP |<--->| UI Fiori || Developpement RAP| | Services CAP || Debogage | | Joule AI || Tests unitaires | | Apps Full-Stack |+------------------+ +------------------+ | | v v +---------------------------------+ | Repository Git | | (Base de code commune) | +---------------------------------+Conclusion
SAP Build Code etend la boite a outils du developpeur ABAP Cloud avec le support IA et des capacites Full-Stack. Il ne remplace pas ADT, mais le complete. La combinaison d’ADT pour le developpement backend et de SAP Build Code pour l’UI et les fonctionnalites IA offre le meilleur des deux mondes.
Recommandation : Testez SAP Build Code en Free Tier, utilisez Joule pour le boilerplate et la generation d’UI, mais conservez ADT pour le travail ABAP approfondi. L’approche hybride maximise la productivite sans renoncer aux outils eprouves.
Articles connexes
- SAP Business Application Studio - Developpement base sur navigateur
- Joule pour ABAP - Assistant IA en detail
- SAP Build vs. ABAP Cloud - Low-Code vs. Pro-Code
- Configurer l’environnement de developpement ABAP Cloud - Configuration ADT