Show Menu
TEMAS×

Edición avanzada de expresiones

Acerca de la edición avanzada de expresiones

La edición de una expresión implica la introducción manual de condiciones para formar una regla.
Este modo le permite utilizar funciones avanzadas. Estas funciones le permiten manipular los valores utilizados para llevar a cabo consultas específicas, como la manipulación de fechas, cadenas, campos numéricos, clasificación, etc.
También es posible utilizar variables de eventos de flujos de trabajo al editar la expresión. Para obtener más información, consulte la sección Personalización de actividades con variables de eventos .
Puede editar expresiones para:
  • Definir una consulta mediante la opción Advanced mode que está disponible cuando se agrega una regla.
  • Editar una expresión en un flujo de trabajo. Por ejemplo, para agregar datos adicionales a una actividad.
  • Editar una condición de visibilidad para definir cómo se muestra un bloque en el editor de contenido HTML. En este caso, la expresión se edita en formato JavaScript y no ofrece el uso de funciones avanzadas como estándar.

Edición de una expresión

La edición avanzada de expresiones le permite definir manualmente una expresión que se adapte específicamente a sus necesidades.
La edición de expresiones se puede utilizar en la ventana Audiencia al crear un correo electrónico o en una actividad de Consulta al crear un flujo de trabajo.
  1. Acceda a la ventana de edición de expresiones mediante uno de los métodos detallados en la sección Acerca de la edición avanzada de expresiones . Incluye los siguientes elementos:
    • Campo de entrada en el que se define la expresión.
    • La lista de los campos disponibles que pueden utilizarse en la expresión y que corresponden a la dimensión de segmentación de la consulta (consulte Dimensiones de segmentación y recursos ).
    • La lista de funciones disponibles, ordenadas por categoría.
  2. Edite la expresión introduciendo una expresión directamente en el campo correspondiente o utilizando las listas de los campos y funciones disponibles.
    Al hacer doble clic en un campo o una expresión, se agrega a la expresión en la que está colocado el cursor.
    Es posible utilizar variables de eventos de flujos de trabajo para crear una expresión. Para obtener más información, consulte la sección Personalización de actividades con variables de eventos .
  3. Asigne un nombre específico a la regla si es necesario. El nombre introducido aparecerá como nombre de regla en el espacio de trabajo del editor de consultas.
Editar una expresión le permite personalizar la expresión de Audiencias para dirigirse a la población según sea necesario.
Temas relacionados:

Sintaxis de la expresión

Sintaxis estándar

Las expresiones estándar están formadas por una o varias condiciones que respetan los siguientes elementos de sintaxis:
  • Cada condición adopta la forma de <value1> <comparison operator> <value2> mediante la cual:
    • <value1> es un campo o una función. Por ejemplo, @created para la fecha en la que se creó un perfil o Year(@created) para el año en el que se creó un perfil.
    • <comparison operator> es uno de los operadores enumerados en la sección Operadores de comparación . Este operador define el método de comparación entre <value1> y <value2> .
    • <value2> es un campo, una función o un valor introducido manualmente.
    Los datos de tipo <value1> y <value2> deben ser idénticos. Por ejemplo, si <value1> es una fecha, entonces <value2> también debe ser una fecha.
  • Si desea usar varias condiciones, se pueden combinar con operadores lógicos.
    • AND : se intersectan dos condiciones.
    • OR : se combinan dos condiciones.
Por ejemplo:
Year(@created) = Year(GetDate()) AND Month(@created) = Month(GetDate())

En este ejemplo, los perfiles cuya fecha de creación está en el mes y año actuales están segmentados.

Sintaxis de JavaScript

Al definir las condiciones de visibilidad de un bloque de tipo de texto del editor de contenido HTML, debe utilizar una expresión con sintaxis de tipo JavaScript.
Las expresiones de JavaScript están formadas por una o varias condiciones y utilizan los siguientes elementos de sintaxis:
  • Cada condición adopta la forma de <context> <comparison operator> <value2> mediante la cual:
    • <context> es un campo o una función que le permite especificar el contexto. Por ejemplo, context.profile.@email para la dirección de correo electrónico de un perfil o context.profile.firstName.length() para el número de caracteres del nombre de un perfil.
    • <comparison operator> es uno de los operadores enumerados en la sección Operadores de comparación . Este operador define el método de comparación entre <context> y <value2> .
    • <value2> es un campo, una función o un valor introducido manualmente.
    Los datos de tipo <context> y <value2> deben ser idénticos. Por ejemplo, si <context> es una fecha, entonces <value2> también debe ser una fecha.
  • Si desea usar varias condiciones, se pueden combinar con operadores lógicos.
    • && : se intersectan dos condiciones.
    • || : se combinan dos condiciones.
Por ejemplo:
context.profile.age > 21 && context.profile.firstName.length() > 0

En este ejemplo, perfiles mayores de 21 años y cuyo nombre se ha proporcionado (simbolizado por el hecho de que el campo firstName contiene al menos un carácter).

Operadores de comparación

Para algunas reglas, el editor de consultas le permite elegir un valor para definir la condición.
Las condiciones deben vincularse a los valores mediante uno de los siguientes operadores.
Operador Sintaxis estándar Sintaxis de JavaScript Descripción Ejemplo
Equal to = == El primer valor debe ser completamente idéntico al segundo valor. @lastName = Martin recupera perfiles cuyo apellido es “Martin”, con solo estos caracteres idénticos.
Greater than > > El primer valor debe ser categóricamente mayor que el segundo valor. @age > 50 recupera perfiles mayores a “50”, por ejemplo, “51”, “52”, etc.
Less than < < El primer valor debe ser categóricamente menor que el segundo valor. @created < DaysAgo(100) recupera todos los perfiles creados en la base de datos hace menos de 100 días.
Greater than or equal to >= >= El primer valor debe ser mayor o igual que el segundo valor. @age >= 30 recupera perfiles de 30 años o más.
Less than or equal to <= <= El primer valor debe ser menor o igual que el segundo valor. @age <= 60 recupera perfiles de 60 años o menos.
Different != != El primer valor debe ser diferente del segundo valor. @language != English recupera perfiles que no se han definido como de habla inglesa.
Contains IN N/A El primer valor debe contener el segundo valor. @domain IN mail . Aquí, se devuelven en el resultado todos los nombres de dominio con el valor “mail”. En consecuencia, el nombre de dominio “gmail.com” formará parte de los resultados devueltos.
Like LIKE N/A Like es muy similar al operador Contains . Permite insertar un carácter comodín % en el valor que se está buscando. @lastName LIKE Mart%n . Aquí, el carácter de sustitución % sirve como “joker” para encontrar el nombre “Martin” en el caso hipotético de que no se haya escrito correctamente.
Not like NOT N/A Es similar a Like . Le permite no recuperar el valor introducido. En este caso, el valor introducido debe contener el carácter comodín % . @lastName NOT Smi%h . Aquí, los destinatarios corresponden al nombre “Smi%h” (por lo tanto, Smith, etc.) no se devuelven como resultado.
Is empty IS NULL N/A El primer valor debe corresponder a un valor vacío. @mobilePhone IS NULL recupera todos los perfiles cuyo número de teléfono móvil no se ha proporcionado.