5.1 Funciones y Expresiones para Automatización con Flujos de Trabajo

Aprenda a actualizar los valores de los campos mediante funciones integradas.

En las acciones Actualizar campos y Crear registro de los flujos de trabajo, tiene la opción de actualizar los valores de los campos mediante funciones integradas.   Las funciones realizan cálculos como concatenación de cadenas, suma y resta de días, etc.

Este artículo explica en detalle cada función proporcionada por TecnoCRM.

Listado de Funciones

A continuación, se enumeran todas las funciones proporcionadas por TecnoCRM.

concat(a,b)

  • Esta función combina dos campos.  Puedes usar esto, especialmente para combinar campos de texto.
  • Por ejemplo, si tiene un campo llamado Nombre completo, puede combinar el nombre y el apellido usando:
      • concat(firstname,lastname)
  • La función concat() puede combinar cualquier número de cadenas separadas por comas.  Por ejemplo, para formar el campo Dirección de facturación, el formato es:
      • concat(Street,’ ‘,City,’ ‘,Pincode)
  • Nota: Para agregar un espacio entre las dos cadenas, use comillas simples con un espacio en blanco entre ellas.   Por ejemplo:
      • concat(firstname,’ ‘,lastname)

time_diffdays(a,b)

  • Esta función toma campos de fecha como entrada.  Calcula la diferencia de tiempo en días entre los dos campos.
  • Por ejemplo, desea conocer el Período de soporte de un contacto. La diferencia se puede calcular usando:
      • time_diffdays(support_end_date,support_start_date)  .
  • La fecha de finalización del soporte se resta de la fecha de inicio del soporte para obtener el resultado.

time_diffdays(a)

  • Esta función proporciona la diferencia entre la fecha actual y un campo de Fecha.
  • Por ejemplo, quieres saber cuántos días han pasado desde que  un caso se creó.  Para esto, debes usar la función:
      • time_diffdays(createdtime)
  • En segundo plano, la función trabaja de esta manera:
      • time_diffdays(fecha actual – hora de creación).
  • Para actualizar el campo Edad en Prospectos o Contactos dependiendo de la Fecha de nacimiento, la función es:
      • (time_diffdays(birthday)/365

diferencia_tiempo(a,b)

  • Esta función toma los campos de fecha como entrada y calcula la diferencia de tiempo entre los campos en segundos.
  • Por ejemplo, para actualizar el campo Tiempo transcurrido según la Hora de creación y la Hora de modificación de un registro, debes usar:
      • time_diff(modifiedtime,createdtime)
  • La función realiza la resta de la siguiente manera:
      • time_diff(hora modificada – hora de creación)

diferencia_hora(a)

  • Esta función proporciona la diferencia horaria (en segundos) entre la fecha actual y un campo de Fecha.
  • Por ejemplo, si desea saber cuántos segundos han pasado desde que un ticket interno se creó.  Para esto, debes usar la función:
      • time_diff(createdtime)
  • En segundo plano, la función trabaja de esta manera:
      • time_diff(fecha actual – hora de creación).

time_diffweekdays(a,b)

  • Esta función toma campos de fecha como entrada y calcula la diferencia de tiempo (en días) entre dos campos. El cálculo se basa únicamente en los días laborables configurados en su horario comercial.
  • Por ejemplo, si desea conocer el Período de soporte de un contacto.  Puede calcularlo utilizando los campos Fecha de inicio del soporte y Fecha de finalización del soporte. La diferencia se puede calcular usando:
      • time_diffweekdays(support_end_date,support_start_date).

time_diffweekdays(a)

  • Esta función proporciona la diferencia entre la fecha actual y un campo de Fecha. El cálculo se basa únicamente en los días laborables configurados en su horario comercial.
  • Por ejemplo, si desea saber cuántos días de la semana han transcurrido desde que se creó un caso.   Para esto, debes usar la función:
      • time_diffweekdays(createdtime)
  • En segundo plano, la función trabaja de esta manera:
      • time_diffdays(fecha actual – hora de creación).

add_days()

  • Esta función permite a los usuarios calcular una nueva fecha.  Se necesitan dos entradas (una fecha y un número) separadas por comas.  Agrega el número a la fecha y da como resultado una nueva fecha.
  • Por ejemplo, si desea proporcionar a un cliente un período de soporte de 60 días y actualizar la fecha de finalización en el campo Fecha de finalización del soporte.  La función sería:
      • La Función sería: add_days(start_date,60)
      • Donde el primer parámetro es un campo de fecha y el segundo parámetro es el número de días.
      • Entonces: add_days(2020-08-16,60)
      • Y dará como resultado la fecha 2020-10-15.

add_weekdays()

  • Esta función permite a los usuarios calcular una nueva fecha, teniendo en cuenta sólo los días laborables. Se necesitan dos entradas (una fecha y un número) separadas por comas. Agrega el número a la fecha y da como resultado una nueva fecha.
  • Por ejemplo, si desea actualizar la fecha de cierre real agregando ‘n’ número de días a la fecha de cierre prevista. Puede utilizar esta función:
      • add_weekdays(closingdate,n)

sub_days()

  • Esta función permite a los usuarios calcular una nueva fecha tomando dos entradas: una fecha y un número separados por comas.  Deduce el número de la fecha.
  • Por ejemplo, para enviar un correo electrónico a un cliente ‘n’ días antes de su fecha de finalización del soporte, puede crear y actualizar un campo personalizado llamado Fecha de notificación.  La función sería:
      • sub_days(support_end_date,n).
  • NotaSi solo se proporciona el número de días como entrada=t y no se proporciona un campo Fecha, entonces se considera la fecha actual para el cálculo.  Por ejemplo: 
        • sub_days(3)
        • funciona de manera similar a:
        • sub_days(current date, 3)
        • Las funciones:
        • add_time()  y  sub_time()
        • también funcionan de manera similar a:
        • add_days()  y  sub_days()

add_time(timefield,minutes)

  • Esta función calcula una nueva hora sumando la hora y los minutos especificados.
  • Por ejemplo, considere que una institución educativa está realizando una prueba en línea.  Para actualizar la hora de finalización del examen, se puede utilizar la función de la siguiente manera:
      • add_time(exam_start_time, 180)

sub_time(timefield,minutes)

  • Esta función calcula una nueva hora restando los minutos especificados de la hora especificada.
  • Por ejemplo, si realiza una campaña de contratación en su empresa, puede configurar la hora de inicio de sesión de los candidatos utilizando la función:
      • sub_time(interview_start_time, 90)

today

  • Esta función recupera la fecha actual.  Cuando elige esta función de las Expresiones del flujo de trabajo, aparece como:
      • get_date(‘today’)
  • Por ejemplo, si necesita actualizar la fecha de pago recibido cuando el estado de una  factura   cambia a Pagado, utilice:
      • get_date(‘today’).

tomorrow

  • Esta función recupera la fecha del día siguiente.  Cuando elige esta función de las Expresiones del flujo de trabajo, aparece como:
      • get_date(‘tomorrow’)
  • Por ejemplo, si el Estado de un proyecto se cambia a Iniciado el día actual, la Fecha de inicio del proyecto se actualiza con la fecha de mañana. Entonces, la expresión sería:
      • get_date(‘tomorrow’)

yesterday

  • Esta función recupera la fecha del día anterior.  Cuando elige esta función de las Expresiones del flujo de trabajo, aparece como:
    • get_date(‘yesterday’)

power(base,exponente)

  • Esta función se utiliza para calcular la potencia de un número entero, como el cuadrado o el cubo de un número entero.
  • Por ejemplo, 2^3=8 se puede simular usando la función:
    • power(2,3)

roundoff (campo, precisión)

  • Esta función se utiliza para redondear un número con la precisión especificada.
  • Por ejemplo, Monto (amount) = 4350,68 se redondea a 4351 usando la función:
      • roundoff(amount,0).

uppercase(campo)

  • Esta función convertirá el valor del ‘campo’ de texto a mayúsculas.
  • Por ejemplo, esta función convierte la oración ‘¡Bienvenido a TecnoCRM!’  a ‘¡BIENVENIDO A TECNOCRM!’
  • Nota:  Esta función se aplica sólo a los campos Texto y Área de texto.

declaraciones if-else

  • Para evitar la creación de múltiples flujos de trabajo para actualizar un solo campo en un registro, puede utilizar la declaración if-else.
  • Por ejemplo, para actualizar el campo Probabilidad a medida que cambia la etapa de ventas de un trato, la expresión es la siguiente:
      • if sales_stage==’Closed Lost’ then 0 else if sales_stage==’Prospecting’ then 10 else if sales_stage==’Perception Analysis’ then 50 else if sales_stage==’Proposal or Price Quote’ then 60 else if sales_stage==’Agreement’ then 80 else 100 end

Reglas para crear expresiones

  • Defina los valores del campo de texto dentro de las comillas simples (‘ ‘). Por ejemplo: nombre_nombre==’Juan’
  • Escribir expresiones en letras minúsculas.
  • Utilice operadores aritméticos para realizar suma (+), resta (-), multiplicación (*) y división (/).
  • Puede realizar estas operaciones entre dos o más campos, valores o una combinación de campos y valores.
  • Utilice únicamente los siguientes operadores relacionales en expresiones.
  • Nota: El uso del operador de asignación (=) no verifica la condición if y ejecuta directamente la última condición else. Debe utilizar únicamente el operador relacional (==).

Operadores:

  • Igual a: ==
  • No igual a (diferente a): !=
  • Mayor que: >
  • Menor que: <
  • Mayor o igual que: >=
  • Menor o igual que: <=
  • Utilice valores binarios para los campos de las casillas de verificación.
      • 0 para Falso o No.
      • 1 para Verdadero o Sí.
  • Soporte para Y (AND) y O (OR):
      • Y (AND): Todas las condiciones deben coincidir. Por ejemplo, si la etapa de ventas de un acuerdo es Calificación y el tipo es Negocio existente, establezca la Probabilidad en 70: if sales_stage==‘Qualification’ AND type==‘Existing Business’ then 70 end
      • O (OR): Al menos una de las condiciones especificadas debe coincidir. Por ejemplo, si la etapa de ventas de una oferta está inactiva o no está lista para la venta, establezca la prioridad de la oferta en Baja: if sales_stage==‘Dormant’ OR sales_stage==‘Not Sales Ready’ then ‘Low’ end

Comprobando campos vacíos

  • Para comprobar si hay campos vacíos de números enteros o de moneda, compárelo con 0. Por ejemplo, si Campo==0.
  • Para otros campos, compárelo con 0 o NULL. Por ejemplo, si Campo==NULL.
  • Nota: si Field==’ ‘ no funciona.

Otras reglas

  • Para habilitar una casilla de verificación (o configurarla en Sí), use 1. Para deshabilitar una casilla de verificación (o configurarla en No), use 0.
  • Los valores de campo distinguen entre mayúsculas y minúsculas en las expresiones de flujo de trabajo. Por ejemplo, si el campo Ciudad tiene el valor Maracay, no puede utilizar city==’ maracay’ en una expresión. Debes usar city==’Maracay’.
  • Para vaciar el valor de un campo, utilice ‘ ‘ o NULL. Por ejemplo, si contact_name==’Juan’ description==NULL.
Ir al contenido