Skip to content

Aprender MOAR con Spring ’21: La nueva función SOQL FIELDS() es GA

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores, consultores, administradores y arquitectos de Salesforce para toda Iberoamérica.

El enlace a la publicación original, lo encontrarás al final de este artículo.

Una forma familiar y productiva de explorar la forma de sus datos

Para muchos de nosotros, la semántica SQL y la exploración de datos van de la mano. Tanto si tiene experiencia en trabajar directamente con bases de datos como si ha desarrollado experiencia utilizando SOQL, el lenguaje de consulta propio de Salesforce, la capacidad de escribir una consulta y obtener datos de ella es inmensamente valiosa. Por eso nos complace presentar una nueva y sencilla forma de explorar los datos de sus objetos de Salesforce: la función SOQL FIELDS()

La función FIELDS() permite a los autores de sentencias SOQL designar una agrupación predefinida de columnas que se devolverán automáticamente en el conjunto de registros resultante. FIELDS() proporciona una forma de aprovechar las construcciones existentes de la plataforma que desvincula la gestión de datos de la lógica empresarial en las integraciones y ayuda a reducir el esfuerzo que supone administrar el modelo de objetos de una org.

Ahora, cualquiera que escriba una consulta puede emplear simplemente una cláusula «SELECT FIELDS(ALL)» para consultar todos los campos, estándar o personalizados, de un objeto. Al igual que «SELECT *» proporciona al lenguaje SQL una forma sencilla de recuperar datos de todas las columnas de una tabla, la función FIELDS() de SOQL ofrece a cualquiera, ya sea un desarrollador, un administrador o un usuario final curioso, una forma escalable y segura de explorar todos los campos de un objeto.

Consulta más datos con menos código

Antes, consultar datos con una lista de campos en un objeto podía ser un proceso algo complicado. Tenías que escribir una consulta muy detallada si necesitabas un gran número de campos en tu resultado, y si no conocías todos los campos de un objeto, tenías que entender primero la forma de ese objeto y escribir tu consulta después. Con SOQL FIELDS(), ahora tienes un camino sencillo para sumergirte en tus datos para extraer información valiosa y explorar el contenido de los datos de un objeto.

Como ejemplo, digamos que usted trabaja en una empresa que produce vehículos eléctricos, y necesita extraer datos de un objeto personalizado «Vehicles__c» que un compañero de equipo ha construido en Salesforce. Antes de SOQL FIELDS(), podría haber tenido que preguntar a ese compañero de equipo por la forma de ese objeto, explorar sus campos en el Gestor de objetos antes de escribir su consulta, o realizar una llamada a describe(). Y si querías obtener datos de casi todos los campos de ese objeto, tendrías que escribir una consulta SOQL bastante larga para que funcionara. Ahora, hay un camino más fácil. Con sólo una llamada a la API simplemente construida como:

sfdx force:data:soql:query -q "SELECT FIELDS(ALL) FROM Vehicle__c LIMIT 5" -u DevHub

puedes consultar todos los campos del objeto personalizado «Vehículo». No necesitas molestar a un compañero de equipo o desplazarte por el Gestor de objetos – la función SOQL FIELDS() te permite entrar directamente. Y si quiere ser más preciso, como mezclar la Función FIELDS() en una consulta sobre un objeto estándar, también tiene esa flexibilidad:

SELECT Nombre, Id, FIELDS(CUSTOM) FROM Cuenta LIMIT 25

Con esta consulta, puedes sacar todos los campos personalizados del objeto Cuenta junto a algunos campos estándar como Nombre o Id. Asimismo, podrías emplear:

<código>SELECCIONAR SUSCRIPCIÓN__c, CAMPOS(ESTÁNDAR) DE LA CUENTA</código>

Para coger fácilmente los datos de un campo personalizado «Suscripción» en el objeto Cuenta, junto con todos los campos estándar que hay también. En cualquier caso, está escribiendo menos código para obtener más claridad en torno a sus datos.

Como puede ver, FIELDS() es una función conveniente que puede simplificar los casos de uso de exploración de datos. La función también puede acelerar las integraciones de plataformas promoviendo el acoplamiento suelto entre el código que escriben los desarrolladores y los casos de uso a mano, al tiempo que mejora la capacidad de mantenimiento del software. Por ejemplo, la representación de datos para un modelo de objetos dinámico y en constante cambio puede dar lugar a iteraciones continuas de las consultas subyacentes o a viajes adicionales al servidor para realizar una llamada de descripción que garantice que no se deja ningún campo. La función FIELDS() es consciente de las agrupaciones de columnas limitadas y no limitadas para ayudar a salvaguardar el rendimiento. Un despliegue bien diseñado de FIELDS() optimizará los recursos necesarios para recuperar los datos con los implicados en el procesamiento y el trabajo con los resultados con el fin de soportar mejor el caso de uso dado.

Conseguir que las consultas SOQL sean sencillas, escalables y seguras

La función FIELDS() es la última mejora del lenguaje SOQL, y un fantástico complemento a otros cambios recientes que puede haber pasado por alto, todos los cuales hacen que el acceso a los datos de Salesforce sea más fácil y potente que nunca. En primer lugar, hemos actualizado recientemente los límites de caracteres de SOQL de 25K caracteres a 100K caracteres, lo que permite a los autores de consultas ser más completos con sus operaciones de consulta. Con los nuevos límites de caracteres y FIELDS(), continuamos reforzando nuestra práctica de reducir la fricción al operar con datos en la plataforma Salesforce, al tiempo que le permitimos hacer más cosas con menos código, llamadas o caracteres, de lo que hablamos el año pasado en nuestra sesión de la API de TDX20.

También hemos introducido recientemente el SOQL Query Builder, un nuevo plug-in de VS Code ahora en Beta que facilita la escritura y ejecución de consultas directamente desde VS Code. Para los desarrolladores, esto significa menos cambio de herramientas y contextos en su trabajo, y para muchos administradores o usuarios empresariales, indica una barrera de entrada más baja para trabajar intuitivamente con sus datos de Salesforce. Como el SOQL Query Builder está en fase beta, sólo estamos empezando a rascar la superficie de las formas más fáciles de trabajar con sus datos, pero agradecemos sus comentarios y le animamos a prestar atención a algunas cosas interesantes que están sucediendo en este espacio.

Por último, pero no menos importante, la función FIELDS() es extensible y segura. Aunque su naturaleza es similar a la de «SELECT *» mencionada anteriormente, observará los estándares de seguridad de Salesforce, como la aplicación de la seguridad a nivel de campo dentro de sus operaciones de API de consulta, que garantizan que los usuarios sólo vean resultados que respeten sus privilegios de acceso a los datos. También estamos diseñando FIELDS() como una operación de consulta que se ampliará para admitir nuevos casos de uso en el futuro, por lo que si la perspectiva de formas más intuitivas de aprovechar las agrupaciones predefinidas (o incluso los conjuntos) de campos en la plataforma le entusiasma, entonces querrá estar atento a este espacio y seguir recibiendo comentarios

La función SOQL FIELDS() está generalmente disponible a partir de la versión Spring ’21. Para obtener información de uso específica y consideraciones de rendimiento, consulte el tema FIELDS() dentro de la Guía del desarrollador de SOQL.

Sobre el autor

Kris Harrison es directora de gestión de productos para API, SOQL y servicios externos en Salesforce.

Complete el curso Learn MOAR Spring ’21 trailmix for Admins or Developers antes del 31 de marzo de 2021 para obtener una insignia especial de la comunidad y participar para tener la oportunidad de ganar 1 de los 5 vales de certificación Trailhead de 200 USD. Consulte las reglas oficiales a continuación.

Comparte lo que te gusta del lanzamiento de primavera ’21 con el hashtag #LearnMOAR. Además, no olvide inscribirse en Release Readiness Live que tendrá lugar el 29 de enero de 2020.

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2021/01/new-soql-fields-function-is-ga.html

Últimas novedades 
de EGA Futura
1954
Desde hace más de 25 años potenciamos a las Empresas de Iberoamérica

🎬 Video de EGA Futura » Qué es un Almacén?

🎬 Video de EGA Futura » Qué es el Stock de almacén?

🎬 Video de EGA Futura » Los 7 pecados capitales que llevarán al infierno a tus argumentos de MKT y ventas [Cómo evitarlo…

🎬 Video de EGA Futura » Por qué Jefes y Gerentes frecuentemente Fallan al motivar Empleados [y en particular a Vendedores]

🎬 Video de EGA Futura » Estrategia de Precios . Cómo funciona este misterioso proceso y cómo Maximizar las Ganancias de …

🎬 Video de EGA Futura » 👉Atrévete a Liderar (levántate fuerte y cambia el Destino de tu Trabajo)

🎬 Video de EGA Futura » 😑 ¿Odias a tu propia Empresa? Guía para dejar de ser un Perdedor (Y encontrar una Salida)

🎬 Video de EGA Futura » 🤑 7 Estrategias Clave para hacer Crecer tu Empresa [Michael Gerber]

🎬 Video de EGA Futura » Qué hacer si Mercado Libre SUSPENDE mi Cuenta? 🤬

🎬 Video de EGA Futura » Como USAR el Manual del Usuario de EGA Futura? [Sistema de Gestión Windows] 😍

🎬 Video de EGA Futura » Recursos Humanos Aprovecha las Fortalezas y construye el Equipo perfecto

🎬 Video de EGA Futura » 8 Reglas de Oro para crear una Empresa Nueva

🎬 Video de Juan Manuel Garrido » Que Clientes DEBO priorizar en mi Empresa?

🎬 Video de EGA Futura » Las relaciones son todo: Claves para la Influencia Estratégica [y el Éxito de Ventas]

🎬 Video de EGA Futura » La Quinta Disciplina de Peter Senge [Método de Transformación continua]

🎬 Video de Juan Manuel Garrido » Adicto al Trabajo y sin Tiempo para tu Familia?

🎬 Video de EGA Futura » Costo dentro de una empresa

🎬 Video de EGA Futura » Aspectos Legales de la Empresa

🎬 Video de EGA Futura » Areas funcionales de una empresa

🎬 Video de EGA Futura » Por qué Dropbox es un Éxito

🎬 Video de EGA Futura » El “Método Turbina” para Potenciar tu Empresa [Receta ganadora]

🎬 Video de Juan Manuel Garrido » Tu energía debe estar puesta en las cosas que puedas cambiar

🎬 Video de Juan Manuel Garrido » Software para #ordenar y #administrar tu #negocio

🎬 Video de EGA Futura » Los 10 Mandamientos del Éxito [Para construir una empresa o carrera exitosa]

🎬 Video de Juan Manuel Garrido » Tu empresa necesita tener métricas claras