Skip to main content
Join the Agentforce Virtual Hackathon to build innovative solutions and compete for a $50k Grand Prize. Sign up now. Terms apply.

Estimación de tiempo

Calcular valores en variables y fórmulas

Objetivos de aprendizaje

Después de completar esta unidad, podrá:

  • Concatenar dos valores de texto en un flujo.
  • Sumar y restar valores numéricos y de fecha en un flujo.
  • Crear una fórmula para calcular valores dinámicos en un flujo.
  • Explicar por qué podría usar una fórmula en un flujo.
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.

Nota

Esta insignia es solo una parte del proceso hacia el dominio de Flow Builder. De principio a fin, la ruta Crear flujos con Flow Builder le sirve de guía en el aprendizaje de todo sobre Flow Builder. Siga esta secuencia de insignias recomendada para desarrollar habilidades sólidas de automatización de procesos y convertirse en un experto en Flow Builder.

Manipular datos con el elemento de asignación

El elemento Assignment (Asignación) también puede cambiar los datos de las variables existentes en lugar de reemplazarlas por completo.

Combinar texto

Cuando el tipo de datos de una variable es texto, puede seleccionar Add (Suma) como el operador del elemento de asignación. El operador de suma permite agregar texto al final del valor actual.

El flujo Set Shipping Address (Establecer dirección de envío) funciona bastante bien, pero ahora Flo quiere saber qué tan actual es la dirección de envío. En el elemento de asignación Copy Address (Copiar dirección), agregaremos una fila que anexe una nota al campo Description (Descripción) de la cuenta, en la que se indique la fecha cuando se agregó la dirección de envío a la cuenta. No queremos reemplazar lo que ya se encuentra en el campo de descripción, solo agregar una nota al final. Sin embargo, tenga en cuenta que Salesforce no puede combinar las variables de texto con recursos que no son de texto, como las variables de fecha o los campos numéricos. Para agregar datos que no son de texto, cree una fórmula que use la función TEXT() para convertir el valor que no es de texto a texto.

Primero, creemos una fórmula que contenga el texto agregado.

  1. Haga clic en Alternar caja de herramientas para mostrar la caja de herramientas.
  2. Haga clic en New Resource (Nuevo recurso).
  3. En Resource Type (Tipo de recurso), seleccione Formula (Fórmula).
  4. En API Name (Nombre de API), introduzca frmChangeDateNote.
  5. En Data Type (Tipo de datos), seleccione Text (Texto). (Aunque vamos a agregar una fecha, el resultado final tiene que ser el tipo de datos de texto para poder agregarlo a un campo de texto).
  6. Introduzca este texto en el campo Formula (Fórmula):
    " Shipping Address added on " & TEXT() (" Dirección de envío agregada el " & TEXT())
  7. Coloque el cursor entre los paréntesis ( ).
  8. En el campo Insert a resource… (Insertar un recurso…), seleccione $Flow > Current Date (Fecha actual).
  9. Haga clic en Check Syntax (Comprobar sintaxis).
    El comprobador de sintaxis es especialmente útil para detectar errores en fórmulas complejas y largas con funciones anidadas.
    El campo de fórmula que corresponde a los pasos anteriores
  10. Haga clic en Done (Listo).

Antes de avanzar al siguiente paso, hagamos una pausa y observemos algunas características en esa fórmula. 

" Shipping Address added on " & TEXT({!$Flow.CurrentDate})
  • Observe los espacios al principio y al final de la frase que está entre comillas. Los espacios separan la frase nueva del texto que ya está en el campo Description (Descripción) y de la fecha que sigue. Por ejemplo, sin un espacio al final, el flujo definiría la descripción como “Shipping Address added on03-02-2023 (Dirección de envío agregada el2/03/2023).
  • El símbolo & le indica a la fórmula que debe combinar el texto anterior y posterior, similar a lo que hacemos con el operador de suma de la asignación.
  • La función TEXT() convierte lo que tiene adentro en texto, para que pueda usarse en un campo de texto.

A continuación, agregue la línea de adición de texto a la asignación Copy Billing Address (Copiar dirección de facturación).

  1. Haga clic en el elemento Copy Billing Address (Copiar dirección de facturación) y seleccione Edit Element (Editar elemento).
  2. Haga clic en + Add Assignment (+ Agregar asignación).
  3. En el campo Variable, seleccione Account from Get Account Data (Cuenta de Obtener datos de cuenta) y, a continuación, seleccione Account Description (Descripción de la cuenta). Establecemos el campo de descripción de la variable de la cuenta aquí porque la variable es lo que cambia.
  4. En el campo Operator (Operador), seleccione Add (Suma).
  5. En el campo Value (Valor), seleccione frmChangeDateNote. Seleccionamos la fórmula aquí porque contiene el valor de texto que agregaremos a la descripción.
    La variable, el operador y el valor correspondientes a los pasos anteriores.
  6. Guarde el flujo.

Ahora, cuando el elemento Update Records (Actualizar registros) actualiza la cuenta, la actualización incluye la descripción modificada.

Nota

Si va a usar una asignación solo para combinar dos porciones de texto sin ninguna conversión, no necesita una fórmula para agregar un espacio entre el texto antiguo y el nuevo. Puede agregar un espacio de forma manual antes del texto nuevo en el campo Value (Valor). Por ejemplo, con una variable denominada “Answer” (Respuesta), puede introducir “ {!Answer}” directamente en el campo de valor.

Realizar cálculos simples

También puede usar el operador de suma para agregar una variable con el tipo de datos de número o divisa. Sin embargo, esto realiza cálculos matemáticos reales; si combinamos los valores numéricos 4 y 2, el resultado es 6, no 42. También puede usar el operador Substract (Resta) para restar de los valores de las variables de número y divisa.

Por ejemplo, este elemento de asignación resta un descuento del importe de una oportunidad. El importe de la variable de oportunidad va en el campo Variable, porque ese es el valor que va a cambiar. El operador se establece en Substract (Resta). Por último, la variable con el importe de descuento va en el campo Value (Valor).

El panel lateral New Assignment (Nueva asignación) correspondiente a las descripciones anteriores y siguientes.

Pero mire esa segunda línea: está sumando a un campo de fecha. También puede usar los operadores de suma y resta para sumar o restar días de un valor de fecha. Este elemento de asignación suma 2 días a la fecha de cierre de la oportunidad.

Calcular cambios de forma automática con fórmulas

Cuando creó la fórmula frmChangeDateNote, el símbolo & combinó dos textos y funcionó del mismo modo que lo hace el operador de suma en una asignación. Po lo tanto, ¿por qué no usamos el símbolo & para adjuntar la fecha directamente al campo de descripción? El símbolo & solo funciona en las fórmulas, y Description (Descripción) es un campo de texto largo. En las fórmulas de flujo, Salesforce no permite campos de texto largo porque pueden exceder con facilidad el límite de cálculo para una fórmula.

Esta restricción es un ejemplo de los límites y las complicaciones con las fórmulas en los flujos. Las fórmulas de flujo tienen un tiempo de cálculo limitado y una cantidad limitada de caracteres, lo cual hace que las fórmulas complejas sean riesgosas por naturaleza. Además, a diferencia de las variables, las fórmulas no se pueden modificar a mitad del flujo. Entonces, ¿cuándo es una buena idea usar una fórmula?

Piense en las fórmulas como esos otros destornilladores que vienen en la caja de herramientas, los que tienen puntas con formas que no vio nunca. Puede que no los use mucho, pero cuando se encuentra con un tornillo con una de esas puntas, se alegra de tener esa herramienta especial. Dicho de otra forma, como regla general, debe usar una fórmula cuando se encuentra en una situación que solo una fórmula puede resolver.

Flo Smith sostiene un destornillador de forma peculiar y mira con desconcierto.

La fórmula frmChangeDateNote es un gran ejemplo que sigue esa regla. No podemos usar solo un elemento de asignación para adjuntar la fecha a la descripción porque la fecha tiene que convertirse primero a un valor de texto. Necesitamos la función TEXT() de la fórmula para hacer la conversión.

Recursos

Reto práctico

+500 puntos

Prepararse

Completará esta/este unidad en su propia organización de prácticas. Haga clic en Iniciar para empezar a trabajar, o haga clic en el nombre de su organización para seleccionar una diferente.

Su reto

Combine Texts Using the Assignment Element
Create a flow that adds "VIP" to the beginning of an account's description when a related opportunity has “VIP” in its name and the opportunity is set to Closed Won.
  • Create a record-triggered flow:
    • Object: Opportunity
    • Trigger the Flow When: A record is updated
    • Condition Requirements: All Conditions Are Met (AND)
    • Add a condition:
      • Field: Stage
      • Operator: Equals
      • Value: Closed Won
    • Add another condition:
      • Field: Name
      • Operator: Contains
      • Value: VIP
    • When to Run the Flow for Updated Records: Only when a record is updated to meet the condition requirements
    • Optimize the Flow for: Actions and Related Records

  • Create a text variable:
    • API Name: VIP_Description
    • Default Value: VIP. (Include a space after the period so that the two texts don’t run together.)

  • Add a Get Records element:
    • Label: Get Account
    • API Name: Get_Account
    • Object: Account
    • Condition Requirements: All Conditions Are Met (AND)
      • Field: Id
      • Operator: Equals
      • Value: $Record > AccountId
    • Keep default values for all other settings

  • After the Get Records element, add an Assignment element:
    • Label: Append Description to VIP_Description
    • API Name: Append_Description_to_VIP_Description
    • Variable: VIP_Description
    • Operator: Add
    • Value: Account from Get Account > Account Description

  • After the Assignment element, add an Update Records element:
    • Label: Update Account Description
    • API Name: Update_Account_Description
    • Select Update records related to the opportunity record that triggered the flow
    • Records Related to Opportunity: Triggering Opportunity > Account ID (To select the whole Account record, after you select Account ID, click outside the picklist.)
    • Condition Requirements to Update Record: None—Update All Related Records
    • Set Field Values:
      • Field: Description
      • Value: VIP_Description

  • Save and activate the flow.
    • Label: Add VIP to Description
    • API Name: Add_VIP_to_Description
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