Apex - Appel
L'appel Apex fait référence au processus d'exécution de la classe Apex. La classe Apex ne peut être exécutée que lorsqu'elle est appelée via l'une des méthodes répertoriées ci-dessous -
Déclencheurs et bloc anonyme
Un déclencheur appelé pour des événements spécifiés
Apex asynchrone
Planification d'une classe Apex pour qu'elle s'exécute à des intervalles spécifiés ou exécution d'un travail par lots
Classe de services Web
Classe de service de messagerie Apex
Services Web Apex, qui permettent d'exposer vos méthodes via les services Web SOAP et REST
Contrôleurs Visualforce
Service de messagerie Apex pour traiter les e-mails entrants
Appel d'Apex à l'aide de JavaScript
La boîte à outils Ajax pour appeler les méthodes de service Web implémentées dans Apex
Nous allons maintenant comprendre quelques façons courantes d'invoquer Apex.
À partir de Exécuter un bloc anonyme
Vous pouvez appeler la classe Apex via exécuter anonyme dans la Developer Console comme indiqué ci-dessous -
Step 1 - Ouvrez la Developer Console.
Step 2 - Cliquez sur Debug.
Step 3- Exécuter la fenêtre anonyme s'ouvrira comme indiqué ci-dessous. Maintenant, cliquez sur le bouton Exécuter -
Step 4 - Ouvrez le journal de débogage lorsqu'il apparaîtra dans le volet Journaux.
Depuis le déclencheur
Vous pouvez également appeler une classe Apex à partir de Trigger. Les déclencheurs sont appelés lorsqu'un événement spécifié se produit et les déclencheurs peuvent appeler la classe Apex lors de l'exécution.
Voici l'exemple de code qui montre comment une classe est exécutée lorsqu'un déclencheur est appelé.
Exemple
// Class which will gets called from trigger
public without sharing class MyClassWithSharingTrigger {
public static Integer executeQuery (List<apex_customer__c> CustomerList) {
// perform some logic and operations here
Integer ListSize = CustomerList.size();
return ListSize;
}
}
// Trigger Code
trigger Customer_After_Insert_Example on APEX_Customer__c (after insert) {
System.debug('Trigger is Called and it will call Apex Class');
MyClassWithSharingTrigger.executeQuery(Trigger.new); // Calling Apex class and
// method of an Apex class
}
// This example is for reference, no need to execute and will have detail look on
// triggers later chapters.
À partir du code du contrôleur de page Visualforce
La classe Apex peut également être appelée à partir de la page Visualforce. Nous pouvons spécifier le contrôleur ou l'extension du contrôleur et la classe Apex spécifiée est appelée.
Exemple
VF Page Code
Apex Class Code (Controller Extension)