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

Redactar una lógica de negocio en Apex

Nota

Nota

¿Es su idioma de aprendizaje español (LATAM)? Comience el reto en un Trailhead Playground en español (LATAM) y utilice las traducciones entre paréntesis para navegar. Copie y pegue solo los valores en inglés, ya que las validaciones del reto dependen de los datos en ese idioma. Si no aprueba el reto en su organización en español (LATAM), recomendamos que (1) cambie la configuración local a Estados Unidos, (2) cambie el idioma a inglés (según estas instrucciones) y, luego, (3) haga clic en el botón “Check Challenge” (Comprobar el reto) nuevamente.

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 el proceso con Trail Together

¿Desea seguir el proceso con un experto a medida que realiza este paso? Mire este video, que forma parte de la serie Trail Together.

(Este clip comienza en el minuto 34:00, en caso que desee retroceder y ver el comienzo del paso nuevamente).

Introducción

Apex es un lenguaje de programación de tipado fuerte y orientado a los objetos que se encuentra optimizado para ejecutarse en la arquitectura multiusuario de Salesforce. Apex les permite a los desarrolladores automatizar procesos de negocios de backend complejos, y se compila en el bytecode de Java.

El lenguaje de Apex se optimizó para interactuar con datos de Salesforce y se integró de forma estrecha con la capa de persistencia de Salesforce. Apex proporciona SOQL (Salesforce Object Query Language), similar a SQL, para ejecutar consultas y declaraciones de DML (lenguaje de manipulación de datos) para realizar operaciones de base de datos con los objetos que creó antes.

Crear e implementar la Clase de Apex

  1. En Visual Studio Code, en el directorio force-app/main/default, haga clic derecho en classes (clases) y seleccione SFDX: Create Apex Class (Crear clase de Apex).
    Selección de SFDX: Create Apex Class (Crear clase de Apex).
  2. En la paleta de comandos de Visual Studio Code, asigne el nombre HouseService a la clase. Haga clic en Enter (Entrar) | Enter (Entrar).
  3. Reemplace 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, debe crear una clase HouseService que tenga un método llamado getRecords. El método muestra la lista de registros de viviendas (como una recopilación ordenada) al realizar una consulta al objeto House__c.
    Tenga en cuenta que, en la clase de Apex HouseService, se muestra de forma automática el objeto (House__c) que creó antes (en el paso 2) como una clase, sin necesidad de redactar un archivo de clase. Además, puede hacer referencia a los campos del objeto House__c como propiedades sin necesidad de declararlos.
    Usamos SOQL para redactar nuestras consultas y que estas hagan referencia al objeto y a los campos del objeto. La consulta se compila y, por lo tanto, su tipo se comprueba en el momento de la compilación.
    Estableció una conexión estrecha entre el modelo de datos y la clase de Apex. Ahora no podrá descomponer el código debido a que no se compilará si realiza una modificación en el código que sea inconsistente con el modelo de datos.
  4. Guarde este archivo.
  5. Haga clic derecho en HouseService.cls y seleccione SFDX: Deploy Source to Org (Implementar fuente en organización). Verá un mensaje de confirmación que indica que la clase de Apex se implementó con éxito en la organización. Implementar su código también hace que se compile en el servidor.
    Implemente la fuente en la organización de Salesforce seleccionada.

Ahora, compruebe si esta clase muestra resultados de consulta según lo esperado mediante una secuencia de comandos anónima. Una secuencia de comandos anónima es código Apex que no se almacena en los metadatos, pero que se puede compilar y ejecutar.

Siga los pasos a continuación para crear una secuencia de comandos anónima a fin de realizar la prueba.

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

Apex es dogmático, está conectado de forma estrecha y está optimizado para trabajar con aplicaciones de negocios que funcionan bien con Salesforce. Falla con rapidez en el momento de la compilación si alguna de las referencias no es válida.

Debido a que se integra con la capa de persistencia de Salesforce y cuenta con compatibilidad integrada para trabajar directamente con datos de Salesforce sin necesidad de conectar capas de datos adicionales, puede ser más productivo. Además, Apex fomenta de forma automática prácticas adecuadas de codificación al aplicar límites de reguladores y requisitos de prueba.

Recursos

Comparta sus comentarios de Trailhead en la Ayuda de Salesforce.

Nos encantaría saber más sobre su experiencia con Trailhead. Ahora puede acceder al nuevo formulario de comentarios en cualquier momento en el sitio de Ayuda de Salesforce.

Más información Continuar a Compartir comentarios