Skip to main content
Join the Agentforce Hackathon on Nov. 18-19 to compete for a $20,000 Grand Prize. Sign up now. Terms apply.
Estimación de tiempo

Escribir lógica de negocio en Apex

Nota

Nota

¿Su idioma de aprendizaje es español? Comience el reto en un Trailhead Playground en español y utilice las traducciones proporcionadas entre paréntesis para navegar. Copie y pegue solo los valores en inglés, ya que las validaciones del reto se basan en los datos en inglés. Si no aprueba el reto en su organización en español, le recomendamos que (1) cambie la configuración regional a Estados Unidos, (2) cambie el idioma a inglés, siga las instrucciones descritas aquí y, a continuación, (3) vuelva a hacer clic en el botón Check Challenge (Comprobar el reto).

Consulte la insignia Trailhead en su idioma para obtener más información sobre cómo aprovechar la experiencia de Trailhead en otros idiomas.

Seguir la ruta marcada por Trail Together

¿Desea contar con la ayuda de un instructor a medida que trabaja en este paso? Eche un vistazo a este vídeo, que forma parte de la serie Trail Together.

(Este clip comienza en la marca del minuto 34:00, en caso de que desee volver atrás y ver el comienzo del paso de nuevo).

Introducción

Apex es un lenguaje de programación único y orientado a los objetos que está optimizado para ejecutarse en la arquitectura multiinquilino de Salesforce. Apex permite que los desarrolladores automaticen procesos de negocio de back-end complejo y se compila en bytecode Java.

El lenguaje de Apex está optimizado para interactuar con los datos de Salesforce y está integrado firmemente con la capa de persistencia de Salesforce. Apex proporciona SOQL (Lenguaje de consulta de objeto de Salesforce), parecido a SQL, para ejecutar consultas e instrucciones de DML (Lenguaje de manipulación de datos) para realizar operaciones de base de datos con los objetos creados anteriormente.

Crear e implementar la clase de Apex

  1. En Visual Studio Code, en force-app/main/default, haga clic con el botón derecho en classes (clases) y seleccione SFDX: Create Apex Class (Crear una clase de Apex).
    SFDX: Crear selección de clase de Apex
  2. En la paleta de comandos de Visual Studio Code, asígnele a la clase el nombre HouseService. Haga clic en Enter (Entrar) | Enter (Entrar).
  3. Sustituya el contenido del archivo por el siguiente código.
    public with sharing class HouseService {
        @AuraEnabled(cacheable=true)
        public static List<House__c> getRecords() {
            try {
                // Create a list of House records from a SOQL query
                List<House__c> lstHouses = [
                    SELECT
                       Id,
                       Name,
                       Address__c,
                       State__c,
                       City__c,
                       Zip__c
                       FROM House__c
                       WITH USER_MODE
                       ORDER BY CreatedDate
                       LIMIT 10
                    ];
                      return lstHouses;
            }
            // Code to handle exception
            catch (Exception e) {
               throw new AuraHandledException(e.getMessage());
            }
        }
    }

    Aspectos destacados del código En este código, cree una clase HouseService que tenga un método llamado getRecords. El método devuelve la lista de registros de casas (como colección ordenada) mediante una consulta al objeto House__c.
    Tenga en cuenta que en la clase HouseService de Apex, se obtiene automáticamente el objeto (House__c) que creó anteriormente (en el paso 2) como una clase sin la escritura de un archivo de clase. Además, puede hacer referencia a los campos del objeto House__c como propiedades sin tener que declararlas.
    Hemos utilizado SOQL para escribir nuestras consultas haciendo referencias al objeto y los campos del objeto. La consulta se compila y se comprueba su tipo durante el momento de la compilación.
    Ha establecido un vínculo estrecho entre el modelo de datos y la clase de Apex. Ahora no podrá dividir el código porque no se compilará si hace algún cambio inconsistente en el código con el modelo de datos.
  4. Guarde el archivo.
  5. Haga clic con el botón derecho en HouseService.cls y seleccione SFDX: Deploy Source to Org (Implementar fuente en organización). Verá un mensaje de confirmación que le informa de que la clase de Apex se ha implementado en la organización correctamente. La implementación del código también lo compila en el servidor.
    Implemente el código fuente en la selección de organización de Salesforce.

Ahora, pruebe si esta clase devuelve resultados de consultas tal y como se espera mediante un script anónimo. Un script anónimo es código de Apex que no se almacena en los metadatos, pero puede compilarse y ejecutarse.

Siga los siguientes pasos para crear un script anónimo a fin de probarlo.

  1. Cree un archivo nuevo que se llame dreamhouseapp.apex en la carpeta scripts/apex.
  2. Sustituya el contenido del archivo por el siguiente código: System.debug(HouseService.getRecords());
  3. Haga clic en el Code Lens Execute Anonymous Apex (Ejecutar Apex anónimo) resaltado en rosa en la siguiente captura de pantalla.
    Code Lens Execute Anonymous Apex (Ejecutar Apex anónimo) para ejecutar un script de Apex.
    Si la clase de Apex que ha escrito es funcional, verá los resultados de la consulta en el panel de resultados que se muestra a continuación.Panel de resultados que muestra los resultados de la consulta de la ejecución de script de Apex.

Apex es tendencioso y está estrechamente conectado a Salesforce y optimizado para trabajar con aplicaciones comerciales que funcionan bien con Salesforce. El tiempo de compilación falla si las referencias no son válidas.

Como se integra con la capa de persistencia de Salesforce y tiene compatibilidad integrada para trabajar con los datos de Salesforce directamente sin tener que conectar capas de datos adicionales, le permite ser más productivo. Además de eso, Apex incentiva las prácticas recomendadas de codificación de forma automática mediante la aplicación de límites gobernadores y la prueba de requisitos.

Recursos

Comparta sus comentarios sobre Trailhead en la Ayuda de Salesforce.

Nos encantaría conocer su experiencia con Trailhead. Ahora puede acceder al nuevo formulario de comentarios cuando quiera desde el sitio de la Ayuda de Salesforce.

Más información Continuar para compartir comentarios