Funciones para reglas y optimizaciones

¿Cómo acceder a la lista de funciones desde la interfaz? Al crear una regla u optimización o en la descripción emergente de un atributo > enlace "¿Necesita función?"

Nota: Los signos de dólar "$" siempre enmarcan un nombre de atributo. Siendo una entrada semi-automática, el segundo signo de dólar se añade automáticamente después del nombre del atributo en la función.

1. Funciones de texto

  • UPPER: Convierte todos los caracteres en mayúsculas

Sintaxis: UPPER($campo_de_texto)

Ejemplo: Quiero que todos los caracteres enviados al atributo "título" estén en mayúsculas.
Introduzco: UPPER($nombre$)

  • LOWER: Convierte todos los caracteres en minúsculas

Sintaxis: LOWER($campo_de_texto)

Ejemplo: Quiero que todos los caracteres enviados al atributo "título" estén en minúsculas.
Introduzco: LOWER($nombre$)

function-lower2.png

  • UPPERWORD: Capitaliza la primera letra de una cadena de texto y cualquier otra letra en el texto que siga a cualquier carácter que no sea una letra

Sintaxis: UPPERWORD($campo_de_texto)

Ejemplo: Quiero que la primera letra de cada palabra sea una mayúscula, en el atributo "título".
Introduzco: UPPERWORD($nombre$)

function-upperword2.png

  • UPPERSENTENCE: Capitaliza la primera letra de cada frase

Sintaxis: UPPERSENTENCE($campo_de_texto)

Ejemplo: Quiero que cada frase comience con una mayúscula, en el atributo "descripción".
Introduzco: UPPERSENTENCE($descripcion$)

function-uppersentence2.png

  • TRUNC: Limita el número de caracteres

Sintaxis: TRUNC($campo_de_texto,número de caracteres)

Ejemplo: Quiero limitar mi descripción a 2.000 caracteres.
Introduzco: TRUNC($descripcion$,2000)

function-trunc.png

  • SMARTTRUNC: Limita el número de caracteres sin cortar la última palabra

Sintaxis: SMARTTRUNC($campo_de_texto,número de caracteres)

Ejemplo: Quiero limitar mi descripción a 2.000 caracteres sin cortar la última palabra.
Introduzco: SMARTTRUNC($descripcion$,2000)

function-smarttrunc.png

  • TAIL: Recupera los últimos caracteres de una cadena de texto según el número de caracteres que especifiques

Sintaxis: TAIL($campo_de_texto,número de caracteres)

Esta función es útil para aislar los últimos caracteres de una cadena y utilizarlos como valor en mi catálogo.

Ejemplo: Quiero obtener los últimos 4 caracteres de mi tipo de producto.
Introduzco: TAIL($tipo_de_producto$,4)

function_TAIL.png

  • SPLIT : Divide el contenido de los valores alrededor de un carácter

Sintaxis : SPLIT($campo_de_texto,separador, número de campo)

Esta función es útil para aislar una parte del texto de una cadena empezando por la izquierda de la cadena para aislar esta parte de texto y usarla como valor en mi catálogo.

Ejemplo : En el atributo "tipo_de_producto", quiero aislar un valor de Plug&Play.
El valor contenido en el campo "tipo_de_producto" de mi catálogo es "Plug&Play". Los valores están por lo tanto separados por el carácter "&".

  • para recuperar sólo "Plug" (1er valor de la cadena), introduzco: SPLIT($tipo_de_producto$,&,1)

SPLIT_1.png

  • para recuperar sólo "Play" (2do valor de la cadena), introduzco: SPLIT($tipo_de_producto$,&,2)

SPLIT_2.png

Utiliza comillas cuando uses el carácter de tubería como separador.
ej: SPLIT($tipo_de_producto$,"|",1)

  • STRIPHTML: Elimina la etiqueta HTML

Sintaxis:TRIPHTML($html_text_field)

Ejemplo: Quiero eliminar las etiquetas html de mi descripción.
Introduzco: STRIPHTML($description$)

striphtml.png

  • DECODEHTML: Decodifica caracteres especiales de elementos HTML.

Sintaxis: DECODEHTML($html_text_field)

Ejemplo: Las marcas en mi catálogo están codificadas en HTML (ej: "Pull & Bear") y quiero decodificarlas (ej: "Pull & Bear").
Introduzco: DECODEHTML($brand$)

decodehtml.png

  • URLENCODE: Codifica los valores para enviar en una URL

Sintaxis: URLENCODE($text_field)

Ejemplo: Quiero añadir el título de mis productos en el seguimiento de mis productos URL.
Introduzco: $url$?URLENCODE($name$)

function-urlencode2.png

  • CATEGORYLEVEL

Esta función es útil si tienes una categorización de breadcrumb, es decir, si tienes varios niveles de categorías en la misma línea.

Ej : Inicio > Moda > Zapatos > Zapatos Nike

La función te permite seleccionar un nivel y extraerlo para usarlo como categoría final con tu canal en Lengow.

2020-03-03_15h33_30.png

Sintaxis : CATEGORYLEVEL(2)

Con esta sintaxis obtenemos el segundo valor de mi categoría, "Moda" gracias a la función.

Otra sintaxis : CATEGORYLEVEL(-1)

Aquí recupero el último nivel de categorización, es decir, "Zapatos Nike" gracias al valor "-1" llamado en la función.

Otra sintaxis : CATEGORYLEVEL(-2)

Me permite recuperar el penúltimo nivel, es decir, "Zapatos".

Nota: No es necesario "llamar" a la categoría del catálogo usando el símbolo $ porque Lengow recupera automáticamente los valores de la categoría mapeada en el paso de Mapeo de atributos de producto inicial.

2. Funciones matemáticas

  • ROUND: Redondea un número hacia arriba/abajo y define el número de decimales

Sintaxis: ROUND(número a redondear hacia arriba/abajo, número de cifras deseadas después del punto decimal)

Redondea el número, al décimo, centésimo...de un número decimal, cortando hasta el rango indicado y luego:

  • si el número siguiente es 5, 6, 7, 8 o 9, aumentas en 1 la última cifra del número cortado.
  • si el número siguiente es 0, 1, 2, 3 o 4, mantienes el número cortado.

Para redondear a un número entero, marca "0" como "el número de cifras deseadas después del punto decimal" o marca ROUND(numbertoround).

Ejemplo:

  • Para redondear un precio a dos cifras después del punto decimal: ROUND($field_price,2) > Si mi precio es "14.1576" en mi catálogo,t se convierte en "14.16".
    Ex: ROUND($price$,2)

function-round.png

  • Para eliminar decimales de valores de cantidad: ROUND($field_quantity,0) o ROUND($field_quantity) > Si mi cantidad es "4.000" en mi catálogo, se convierte en "4".
    Ex: ROUND($price$)

function-round-sansparametre.png

  • ROUNDUP: Para redondear al número entero más cercano

Sintaxis: ROUNDUP(número a redondear al número entero más cercano)

Ejemplo: Quiero redondear mi precio al número entero más cercano.
Introduzco: ROUNDUP($price$)

function-roundup.png

  • ROUNDDOWN: Para redondear al número entero más cercano hacia abajo:

Sintaxis: ROUNDDOWN(número a redondear al número entero más cercano hacia abajo)

Ejemplo: Quiero redondear mi precio al número entero más cercano hacia abajo.
Introduzco: ROUNDDOWN($price$)

function-rounddown.png

  • FORMAT_NUM: Muestra un precio en un formato que puedes gestionar hasta el dígito decimal de tu elección 

Sintaxis : FORMAT_NUM($price$,dígito decimal deseado,"separador deseado")

  • Separador decimal aceptado: un punto o una coma

Ejemplo : Quiero mostrar un precio con dos dígitos decimales.
Introduzco: FORMAT_NUM($price$,2,",")

Fonction_Format_NUM.png

Puedes combinar esta función con las otras funciones matemáticas.

Para hacerlo, consulta el paso "Concatenar varias funciones". 

La función "ROUND" redondea un precio permitiéndote elegir la precisión, pero no te permite mantener el "0" para tener un número fijo de dígitos después del separador decimal.
FORMAT_NUM te permite la visualización de este "0".
  • CALC: Realizar un cálculo

  • Dividir: CALC(number1/number2)
  • Multiplicar: CALC(number1*number2)
  • Sumar: CALC(number1+number2)
  • Restar: CALC(number1-number2)

"number1" y "number2" pueden ser reemplazados por "$my_field"

Con la ayuda de paréntesis, se puede realizar cualquier cálculo. La función realiza los cálculos en orden de prioridad.

Ejemplo: Quiero calcular el porcentaje de reducción de mis productos reducidos.
Introduzco: CALC((($price$-$price_promo$)*100))/$price$

function-calc1.png

Quiero aumentar mi precio de venta en un 10%, redondearlo al número entero más cercano, y restar 10 centavos.
Introduzco: CALC(ROUNDUP($price$*1.1)-0.1)

function-calc4.png

Quiero reducir mi precio de venta en un 15% y añadir mis costos de envío aumentados en un 5%.
Introduzco: CALC(($price$*0.85)+($fdp$*1.05))

function-calc3.png

  • CURRENCYCONV: Convertir un precio en otra moneda

Sintaxis: CURRENCYCONV(precio,iso_code)

Ejemplo: Quiero convertir un precio en GBP.
Introduzco: CURRENCYCONV($price$,GBP)

function-currencyconv.png

Las tasas de conversión se basan en el Banco Central Europeo (BCE) y se actualizan una vez al día.

3. Concatenar varias funciones

¡Combina tantas funciones como quieras jugando con los paréntesis!

Ejemplo: Quiero aumentar mi precio de venta en un 10% y redondear el resultado a dos cifras después del punto decimal.
Introduzco: ROUND(CALC($prix_ttc$*1.1),2)

Ejemplo: Quiero limitar mi descripción a 2,000 caracteres y escribir el texto en mayúsculas.
Introduzco: UPPER(TRUNC($description$,2000)

function-truncupper.png

Ejemplo: Quiero aumentar mi precio de venta en un 10% y convertirlo en euros.
Introduzco: CURRENCYCONV(CALC($price$*1.1),EUR)

function-currencyconvcalc.png

Ejemplo: El texto de mis descripciones está en letras mayúsculas. Quiero que la primera letra de cada frase sea una letra mayúscula, mientras que todas las demás letras serán minúsculas.
Introduzco: UPPERSENTENCE(LOWER($description$))

capture-decran-2017-07-27-a-105135.png

Ejemplo: Quiero redondear a dos dígitos después de la coma, el porcentaje de la promoción del producto, calculado a partir del precio tachado y el precio reducido de mi catálogo.
Introduzco: ROUND(CALC((($full_price$-$prix_promo$)*100)/$full_price$),2)

rule2.png

En este ejemplo "Full_price" es el campo que contiene el precio antes de la promoción y "Prix_Promo" es el campo que contiene el precio reducido (precio del producto durante la promoción).

Ejemplo: Quiero redondear hacia abajo el precio más el 20% y añadir el decimal .99 para aplicar un precio psicológico.
Introduzco: ROUNDDOWN(CALC($price$*1.20)).99

2020-04-16_17h27_03.png

En este ejemplo, "price" es el campo del catálogo que contiene el precio de venta del producto.

Este artículo ha sido traducido automáticamente. En caso de duda, le agradecemos que consulte las versiones originales en francés o en inglés.

Artículos en esta sección

Acceda al centro de ayuda para nuestras soluciones de "Market Intelligence"
NetRivals & NetMonitor