Panoramica su Apex Code
Apex è un linguaggio di programmazione fortemente tipizzato e orientato agli oggetti, che consente di eseguire istruzioni di controllo del flusso e delle transazioni su un server con Lightning Platform in combinazione con le chiamate all'API Lightning Platform. Mediante una sintassi dall'aspetto simile a Java e dal funzionamento simile alle procedure memorizzate in un database, Apex consente agli sviluppatori di aggiungere una logica applicativa alla maggior parte degli eventi di sistema, compresi i clic sui pulsanti, gli aggiornamenti dei record correlati e le pagine Visualforce. Apex Code può essere avviato da richieste di servizi Web e da trigger per gli oggetti.
Versioni (Edition) richieste
| Disponibile in: Salesforce Classic (non in tutte le organizzazioni) e Lightning Experience |
| Disponibile in: Enterprise Edition, Performance Edition, Unlimited Edition, Developer Edition e Database.com Edition |
Apex può essere memorizzato sulla piattaforma in due forme diverse:
- Una classe è un modello in base al quale vengono creati gli oggetti Apex. Le classi sono costituite da altre classi, metodi definiti dagli utenti, variabili, tipi di eccezioni e codice di inizializzazione statico. Da Imposta, immettere Classi Apex nella casella Ricerca veloce, quindi selezionare Classi Apex.
- Un trigger è un Apex Code che viene eseguito prima o dopo che si sono verificati eventi DML (Data Manipulation Language) specifici, ad esempio prima che i record di oggetti vengano inseriti nel database o dopo che i record sono stati eliminati. I trigger vengono memorizzati come metadati in Salesforce. Un elenco di tutti i trigger dell'organizzazione è disponibile nella pagina Trigger Apex in Imposta.
Apex in genere viene eseguito nel contesto di sistema, ovvero le autorizzazioni e la protezione a livello di campo dell'utente corrente non vengono prese in considerazione durante l'esecuzione del codice. Le regole di condivisione, tuttavia, non vengono sempre ignorate: la classe deve essere dichiarata con la parola chiave without sharing per garantire che le regole di condivisione non vengano applicate.
È necessario che almeno il 75% del proprio Apex sia coperto dai test di unità per distribuire il codice agli ambienti di produzione. Inoltre, tutti i trigger devono avere almeno alcune coperture di test.
Dopo aver creato classi e trigger, nonché i test, riprodurre l'esecuzione utilizzando la Developer Console.
È possibile aggiungere, modificare o eliminare Apex tramite l'interfaccia utente di Salesforce solo in un'organizzazione Developer Edition, in un'organizzazione di prova Enterprise Edition di Salesforce o in un'organizzazione Sandbox. In un'organizzazione di produzione Salesforce, è possibile modificare Apex solo utilizzando la chiamata di deploy dell'API dei metadati, le estensioni Salesforce per Visual Studio Code o lo Strumento di migrazione Ant. Le estensioni Salesforce per Visual Studio Code e lo Strumento di migrazione Ant sono risorse gratuite fornite da Salesforce a supporto dei propri utenti e partner, ma non sono considerati parte dei Servizi ai fini dell'Accordo principale sui servizi di Salesforce.
Per ulteriori informazioni sulla sintassi e l'utilizzo di Apex, vedere il manuale Apex Code Developer's Guide.
- Apex Developer Guide e strumenti per lo sviluppatore
I manuali Apex Developer Guide e Apex Reference Guide sono il riferimento completo per il linguaggio di programmazione Apex. L'Apex Developer Guide spiega come richiamare Apex, come lavorare con i limiti, come scrivere i test e molto altro ancora. L'Apex Reference Guide fornisce informazioni di riferimento su classi, interfacce Apex, eccezioni e così via. Per scrivere il codice Apex, è possibile scegliere tra diversi strumenti di Salesforce e di terze parti. - Definizione di classi Apex
Salesforce memorizza le classi Apex come metadati. - Definizione di trigger Apex
Apex Code si può invocare mediante trigger. I trigger Apex si possono configurare per eseguire azioni personalizzate prima o dopo modifiche di record Salesforce come inserimenti, aggiornamenti o eliminazioni. - Esecuzione di Apex Code anonimo
La Developer Console consente di eseguire Apex Code come un altro modo per generare dei registri debug che coprono una specifica logica di applicazione. - Che cosa accade quando si verifica un'eccezione Apex
Quando si verifica un'eccezione, l'esecuzione del codice si arresta. Tutte le operazioni DML elaborate prima dell'eccezione vengono ritirate e non vengono confermate nel database. Le eccezioni vengono registrate nei registri debug. Per le eccezioni non gestite, cioè per le eccezioni che il codice non è in grado individuare, Salesforce invia un messaggio email che include informazioni sull'eccezione. L'utente finale visualizza un messaggio di errore nell'interfaccia utente Salesforce. - Gestione delle eccezioni Apex nei pacchetti gestiti
Quando si crea un pacchetto gestito per AppExchange, è possibile specificare un utente in modo che riceva una notifica via email quando si verifica un'eccezione non rilevata da Apex. - Gestione delle classi Apex
Una classe Apex è un modello in base al quale vengono creati gli oggetti Apex. Le classi sono costituite da altre classi, metodi definiti dagli utenti, variabili, tipi di eccezioni e codice di inizializzazione statico. - Gestione dei trigger Apex
Un trigger è un Apex Code che viene eseguito prima o dopo che si sono verificati eventi DML (Data Manipulation Language) specifici, ad esempio prima che i record di oggetti vengano inseriti nel database o dopo che i record sono stati eliminati. - Gestione delle impostazioni di versione per Apex
Per favorire la compatibilità retroattiva, le classi e i trigger Apex vengono memorizzati con le impostazioni di versione per l'API Salesforce e per tutti i pacchetti gestiti con riferimenti. - Visualizzazione delle classi Apex
Dopo aver creato una classe, è possibile visualizzare il codice contenuto nella stessa, nonché l'API in base al quale è stata salvata la classe e verificare se la classe è valida o attiva. - Visualizzazione dei dettagli dei trigger Apex
I trigger Apex sono memorizzati nell'applicazione come metadati sotto l'oggetto a cui sono associati. - Creazione di una classe Apex da un WSDL
Una classe Apex può essere generata automaticamente da un documento WSDL memorizzato su un disco rigido locale o in rete. - Monitoraggio dell'area di attesa dei processi Apex
La pagina di impostazione dei processi Apex contiene informazioni sui processi Apex, inclusa la percentuale di utilizzo di Apex asincrono e il numero di operazioni Apex utilizzate al di fuori del limite di 24 ore dell'organizzazione. Monitorare lo stato dei processi Apex per limitare il potenziale problema di limite prima che si verifichi. - Monitoraggio dell'area di attesa Flex Apex
Utilizzare la pagina Area di attesa Flex Apex per visualizzare e riordinare tutti i processi batch che hanno uno stato In attesa. Oppure, riordinare i propri processi batch a livello di programmazione utilizzando Apex code. - Pianificazione di processi Apex
Utilizzare lo strumento di pianificazione Apex e l'interfacciaSchedulablese si dispone di classi Apex specifiche che si desidera eseguire regolarmente, oppure per eseguire un processo Apex batch utilizzando l'interfaccia utente Salesforce. - Domande frequenti su Apex
Domande frequenti sui servizi Web esterni, sui tipi di schema WSDL supportati e sulle differenze tra classi e trigger Apex.

