Apex - Debug

Il debug è una parte importante in qualsiasi sviluppo di programmazione. In Apex, abbiamo alcuni strumenti che possono essere utilizzati per il debug. Uno di questi è il metodo system.debug () che stampa il valore e l'output della variabile nei log di debug.

Possiamo usare i seguenti due strumenti per il debug:

  • Console per gli sviluppatori
  • Log di debug

Debug tramite Developer Console

Puoi utilizzare la Console per gli sviluppatori ed eseguire funzionalità anonime per il debug di Apex come di seguito:

Example

Considera il nostro esempio esistente di recupero dei record dei clienti che sono stati creati oggi. Vogliamo solo sapere se la query restituisce o meno i risultati e, in caso affermativo, controlleremo il valore di List.

Incolla il codice fornito di seguito nella finestra di esecuzione anonima e segui i passaggi che abbiamo fatto per aprire la finestra di esecuzione anonima.

Step 1 - Apri la Console per gli sviluppatori

Step 2 - Apri Execute anonymous da "Debug" come mostrato di seguito.

Step 3 - Apri la finestra Esegui anonimo e incolla il codice seguente e fai clic su Esegui.

// Debugging The Apex
List<apex_customer__c> customerList = new List<apex_customer__c>();
customerList = [SELECT Id, Name FROM APEX_Customer__c WHERE CreatedDate =
today];
// Our Query
System.debug('Records on List are '+customerList+' And Records are '+customerList);
// Debug statement to check the value of List and Size

Step 4 - Apri i registri come mostrato di seguito.

Step 5 - Immettere "USER" nella condizione di filtro come mostrato di seguito.

Step 6 - Apri l'istruzione USER DEBUG come mostrato di seguito.

Debug tramite log di debug

Puoi anche eseguire il debug della stessa classe tramite i log di debug. Supponi di avere un trigger nell'oggetto Cliente e deve essere sottoposto a debug per alcuni valori variabili, quindi puoi farlo tramite i log di debug come mostrato di seguito -

Questo è il codice trigger che aggiorna il campo Descrizione se il cliente modificato è attivo e si desidera controllare i valori delle variabili e dei record attualmente nell'ambito -

trigger CustomerTrigger on APEX_Customer__c (before update) {
   List<apex_customer__c> customerList = new List<apex_customer__c>();
   for (APEX_Customer__c objCust: Trigger.new) {
      System.debug('objCust current value is'+objCust);
      
      if (objCust.APEX_Active__c == true) {
         objCust.APEX_Customer_Description__c = 'updated';
         System.debug('The record which has satisfied the condition '+objCust);
      }
   }
}

Seguire i passaggi indicati di seguito per generare i registri di debug.

Step 1- Imposta i log di debug per il tuo utente. Vai a Configurazione e digita "Registro di debug" nella finestra di configurazione della ricerca, quindi fai clic su Collegamento.

Step 2 - Imposta i log di debug come segue.

Step 3- Immettere il nome dell'utente che richiede l'installazione. Inserisci il tuo nome qui.

Step 4 - Modificare i record del cliente quando l'evento dovrebbe verificarsi per generare il registro di debug.

Step 5- Ora vai di nuovo alla sezione dei log di debug. Apri i registri di debug e fai clic su Ripristina.

Step 6 - Fare clic sul collegamento di visualizzazione del primo registro di debug.

Step 7 - Cerca la stringa "USER" utilizzando la ricerca del browser come mostrato di seguito.

L'istruzione di debug mostrerà il valore del campo in cui abbiamo impostato il punto.