Funciones de asignación de preparación de datos

Las funciones de preparación de datos se pueden utilizar para calcular y calcular valores basados en lo que se introduce en los campos de origen.

Campos

Un nombre de campo puede ser cualquier identificador válido: una secuencia de longitud ilimitada de letras Unicode y dígitos, que comienza con una letra, el signo de dólar ($) o el carácter de subrayado (_). Los nombres de variables también distinguen entre mayúsculas y minúsculas.

Si el nombre de un campo no sigue esta convención, el nombre del campo debe incluirse entre ${}. Por lo tanto, si el nombre de campo es "First Name" o "First.Name", el nombre debe incluirse entre ${First Name} o ${First\.Name} respectivamente.

SUGERENCIA

Al interactuar con jerarquías, si un atributo secundario tiene un punto (.), debe utilizar una barra invertida (\) para omitir caracteres especiales. Para obtener más información, lea la guía de escape de caracteres especiales.

Además, si el nombre de un campo es cualquiera de las siguientes palabras clave reservadas, debe estar envuelto con ${}:

new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors

Se puede acceder a los datos de los subcampos utilizando la notación de puntos. Por ejemplo, si había un name para acceder al objeto firstName campo, uso name.firstName.

Lista de funciones

En las tablas siguientes se enumeran todas las funciones de asignación admitidas, incluidas las expresiones de muestra y sus resultados.

Funciones de cadena

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
concat Concatena las cadenas dadas.
  • STRING: cadenas que se concatenarán.
concat(CADENA_1, CADENA_2) concat("Hola, ", "hay", "!") "Hi, there!"
explotar Divide la cadena en función de una regex y devuelve una matriz de partes. Opcionalmente, puede incluir regex para dividir la cadena. De forma predeterminada, la división se resuelve en ",". Los delimitadores siguientes necesidad para escapar con \: +, ?, ^, |, ., [, (, {, ), *, $, \ Si incluye varios caracteres como delimitador, el delimitador se tratará como un delimitador de varios caracteres.
  • CADENA: Requerido La cadena que debe dividirse.
  • REGEX: Opcional La expresión regular que se puede utilizar para dividir la cadena.
explode(STRING, REGEX) explode("Hola, ¡ahí!", "") ["Hi,", "there"]
instr Devuelve la ubicación o el índice de una subcadena.
  • ENTRADA: Requerido La cadena que se está buscando.
  • SUBCADENA: Requerido La subcadena que se busca dentro de la cadena.
  • POSICIÓN_INICIAL: Opcional La ubicación de dónde empezar a buscar en la cadena.
  • OCURRENCIA: Opcional La enésima ocurrencia que se busca desde la posición de inicio. De forma predeterminada, se establece en 1.
instr(INPUT, SUBSTRING, START_POSITION, OCCURRENCE) instr("adobe.com", "com") 6
reemplazantes Reemplaza la cadena de búsqueda si está presente en la cadena original.
  • ENTRADA: Requerido La cadena de entrada.
  • TO_FIND: Requerido Cadena que se busca en la entrada.
  • TO_REPLACE: Requerido La cadena que reemplazará el valor dentro de "TO_FIND".
replace(INPUT, TO_FIND, TO_REPLACE) replace("Esto es una cadena re-test", "re", "replace") "Esta es una prueba de reemplazo de cadena"
substr Devuelve una subcadena de una longitud determinada.
  • ENTRADA: Requerido La cadena de entrada.
  • START_INDEX: Requerido Índice de la cadena de entrada donde comienza la subcadena.
  • LONGITUD: Requerido Longitud de la subcadena.
substr(INPUT, START_INDEX, LENGTH) substr("This is a substring test", 7, 8) "un subconjunto"
lower /
lcase
Convierte una cadena a minúsculas.
  • ENTRADA: Requerido La cadena que se convertirá a minúsculas.
lower(INPUT) lower("HeLo")
lcase("HeLo")
"hola"
upper /
ucase
Convierte una cadena a mayúsculas.
  • ENTRADA: Requerido La cadena que se convertirá a mayúsculas.
upper(ENTRADA) upper("HeLo")
ucase("HeLo")
"HOLA"
split Divide una cadena de entrada en un separador. El siguiente separador necesidades para escapar con \: \. Si incluye varios delimitadores, la cadena se dividirá en cualquiera de los delimitadores presentes en la cadena.
  • ENTRADA: Requerido La cadena de entrada que se va a dividir.
  • SEPARADOR: Requerido Cadena que se utiliza para dividir la entrada.
split(ENTRADA, SEPARADOR) split("Hello world", " ") ["Hello", "world"]
unirse Une una lista de objetos mediante el separador.
  • SEPARADOR: Requerido Cadena que se utilizará para unir los objetos.
  • OBJETOS: Requerido Matriz de cadenas que se unirán.
join(SEPARATOR, [OBJECTS]) join(" ", to_array(true, "Hello", "world")) "Hola mundo"
lpad Rellena el lado izquierdo de una cadena con la otra cadena dada.
  • ENTRADA: Requerido La cadena que se va a rellenar. Esta cadena puede ser nula.
  • RECUENTO: Requerido El tamaño de la cadena que se va a rellenar.
  • RELLENO: Requerido Cadena con la que se rellena la entrada. Si es nulo o está vacío, se tratará como un solo espacio.
lpad(ENTRADA, RECUENTO, RELLENO) lpad("bat", 8, "yz") "yzybat"
rpad Rellena el lado derecho de una cadena con la otra cadena dada.
  • ENTRADA: Requerido La cadena que se va a rellenar. Esta cadena puede ser nula.
  • RECUENTO: Requerido El tamaño de la cadena que se va a rellenar.
  • RELLENO: Requerido Cadena con la que se rellena la entrada. Si es nulo o está vacío, se tratará como un solo espacio.
rpad(ENTRADA, RECUENTO, RELLENO) rpad("bat", 8, "yz") "batyzyzy"
left Obtiene los primeros caracteres "n" de la cadena dada.
  • CADENA: Requerido La cadena para la que obtiene los primeros caracteres "n".
  • RECUENTO: Requerido Los caracteres "n" que desee obtener de la cadena.
left(CADENA, RECUENTO) left("abcde", 2) "ab"
derecha Obtiene los últimos "n" caracteres de la cadena dada.
  • CADENA: Requerido La cadena para la que se obtienen los últimos caracteres "n".
  • RECUENTO: Requerido Los caracteres "n" que desee obtener de la cadena.
right(STRING, COUNT) right("abcde", 2) "de"
ltrim Elimina el espacio en blanco del principio de la cadena.
  • CADENA: Requerido La cadena de la que desea eliminar el espacio en blanco.
ltrim(CADENA) ltrim(" hello") "hola"
rtrim Elimina el espacio en blanco del final de la cadena.
  • CADENA: Requerido La cadena de la que desea eliminar el espacio en blanco.
rtrim(CADENA) rtrim("hello ") "hola"
trim Elimina el espacio en blanco del principio y del final de la cadena.
  • CADENA: Requerido La cadena de la que desea eliminar el espacio en blanco.
trim(CADENA) trim(" hello ") "hola"
es igual que Compara dos cadenas para confirmar si son iguales. Esta función distingue entre mayúsculas y minúsculas.
  • CADENA1: Requerido La primera cadena que desea comparar.
  • CADENA2: Requerido La segunda cadena que desea comparar.
CADENA1.​es igual a( CADENA2) "cadena1".​igual a​("STRING1") false
igual a IgnoreCase Compara dos cadenas para confirmar si son iguales. Esta función es no distingue mayúsculas de minúsculas.
  • CADENA1: Requerido La primera cadena que desea comparar.
  • CADENA2: Requerido La segunda cadena que desea comparar.
CADENA1.​igual a IgnoreCase​(STRING2) "cadena1".​igual a IgnoreCase​("STRING1) true

Funciones de expresión regular

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
extract_regex Extrae grupos de la cadena de entrada en función de una expresión regular.
  • CADENA: Requerido Cadena de la que se extraen los grupos.
  • REGEX: Requerido La expresión regular con la que desea que coincida el grupo.
extract_regex(STRING, REGEX) extract_regex​("E259,E259B_009,1_1"​, "([,]+),[,]*,([^,]+)") ["E259,E259B_009,1_1", "E259", "1_1"]
matches_regex Comprueba si la cadena coincide con la expresión regular introducida.
  • CADENA: Requerido La cadena que está comprobando coincide con la expresión regular.
  • REGEX: Requerido La expresión regular con la que está comparando.
matches_regex(STRING, REGEX) matches_regex("E259,E259B_009,1_1", "([,]+),[,]*,([^,]+)") true

Funciones hash

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
sha1 Toma una entrada y produce un valor hash utilizando el algoritmo hash seguro 1 (SHA-1).
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
sha1(INPUT, CHARSET) sha1("mi texto", "UTF-8") c3599c11e47719df18a24 48690840c5dfcce3c80
sha256 Toma una entrada y produce un valor hash utilizando el algoritmo hash seguro 256 (SHA-256).
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
sha256(ENTRADA, CHARSET) sha256("mi texto", "UTF-8") 7330d2b39ca35eaf4cb95fc846c21 ee6a39af698154a83a586ee270a0d372104
sha512 Toma una entrada y produce un valor hash utilizando el algoritmo hash seguro 512 (SHA-512).
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
sha512(ENTRADA, CHARSET) sha512("mi texto", "UTF-8") a3d7e45a0d9be5fd4e4b9a3b8c9c2163c21ef 708bf11b4232bb21d2a8704ada2cdcd7b367dd078a89 a5c908cfe377aceb1072a7b 386b7d4fd2ff68a8fd24d16
md5 Toma una entrada y produce un valor hash con MD5.
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
md5(INPUT, CHARSET) md5("mi texto", "UTF-8") d3b96ce8c9fb4 e9bd0198d03ba6852c7
crc32 Toma una entrada utiliza un algoritmo de comprobación de redundancia cíclica (CRC) para producir un código cíclico de 32 bits.
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
crc32(INPUT, CHARSET) crc32("mi texto", "UTF-8") 8df92e80

Funciones de URL

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
get_url_protocol Devuelve el protocolo de la dirección URL determinada. Si la entrada no es válida, devuelve nulo.
  • URL: Requerido Dirección URL de la que se debe extraer el protocolo.
get_url_protocol​(URL) get_url_protocol("https://platform .adobe.com/home") https
get_url_host Devuelve el host de la URL determinada. Si la entrada no es válida, devuelve nulo.
  • URL: Requerido Dirección URL de la que se debe extraer el host.
get_url_host​(URL) get_url_host​("https://platform .adobe.com/home") platform.adobe.com
get_url_port Devuelve el puerto de la dirección URL determinada. Si la entrada no es válida, devuelve nulo.
  • URL: Requerido Dirección URL de la que debe extraerse el puerto.
get_url_port(URL) get_url_port​("sftp://example.com//home/ joe/employee.csv") 22
get_url_path Devuelve la ruta de la dirección URL determinada. De forma predeterminada, se devuelve la ruta de acceso completa.
  • URL: Requerido Dirección URL de la que se debe extraer la ruta.
  • RUTA_COMPLETA: Opcional Un valor booleano que determina si se devuelve la ruta de acceso completa. Si se establece en false, solo se devuelve el final de la ruta.
get_url_path​(URL, FULL_PATH) get_url_path​("sftp://example.com// home/joe/employee.csv") "//home/joe/ employee.csv"
get_url_query_str Devuelve la cadena de consulta de una dirección URL determinada como un mapa del nombre y el valor de la cadena de consulta.
  • URL: Requerido Dirección URL desde la que intenta obtener la cadena de consulta.
  • ANCLAJE: Requerido Determina qué se hará con el anclaje en la cadena de consulta. Puede ser uno de los tres valores siguientes: "keep", "remove" o "append".

    Si el valor es "conservar", el anclaje se adjunta al valor devuelto.
    Si el valor es "remove", el anclaje se eliminará del valor devuelto.
    Si el valor es "anexar", el anclaje se devuelve como un valor independiente.
get_url_query_str​(URL, ANCLAJE) get_url_query_str​("foo://example.com:8042​/over/there?name= ferret#nose", "keep")
get_url_query_str​("foo://example.com:8042​/over/there?name= ferret#nose", "remove")
get_url_query_str​("foo://example.com​:8042/over/there​?name=ferret#nose", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}
get_url_encoded Esta función toma una URL como entrada y reemplaza o codifica los caracteres especiales con caracteres ASCII. Para obtener más información sobre los caracteres especiales, lea la lista de caracteres especiales en el apéndice del presente documento.
  • URL: Requerido La dirección URL de entrada con caracteres especiales que desea reemplazar o codificar con caracteres ASCII.
get_url_encoded(URL) get_url_encoded("https://example.com/partneralliance_asia-pacific_2022") https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacífico_2022
get_url_decoded Esta función toma una URL como entrada y descodifica los caracteres ASCII en caracteres especiales. Para obtener más información sobre los caracteres especiales, lea la lista de caracteres especiales en el apéndice del presente documento.
  • URL: Requerido La dirección URL de entrada con caracteres ASCII que desea descodificar en caracteres especiales.
get_url_decoded(URL) get_url_decoded("https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacífico_2022") https://example.com/partneralliance_asia-pacífico_2022

Funciones de fecha y hora

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla. Más información sobre la date se puede encontrar en la sección de fechas de la guía de gestión de formato de datos.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
now Recupera la hora actual. now() now() 2021-10-26T10:10:24Z
timestamp Recupera la hora Unix actual. timestamp() timestamp() 1571850624571
formato Aplica formato a la fecha de entrada según un formato especificado.
  • FECHA: Requerido La fecha de entrada, como objeto ZonedDateTime, a la que desea dar formato.
  • FORMATO: Requerido El formato al que desea cambiar la fecha.
format(DATE, FORMAT) formato(2019-10-23T11:24:00+00:00, "aaaa-MM-dd HH:mm:ss") 2019-10-23 11:24:35
dformat Convierte una marca de tiempo en una cadena de fecha según un formato especificado.
  • MARCA DE TIEMPO: Requerido La marca de tiempo a la que desea dar formato. Esto se escribe en milisegundos.
  • FORMATO: Requerido El formato en el que desea que se convierta la marca de tiempo.
dformat(TIMESTAMP, FORMAT) dformat(1571829875000, "yyyy-MM-dd'T'HH:mm:ss.SSSX") 2019-10-23T11:24:35.000Z
date Convierte una cadena de fecha en un objeto ZonedDateTime (formato ISO 8601).
  • FECHA: Requerido Cadena que representa la fecha.
  • FORMATO: Requerido Cadena que representa el formato de la fecha de origen.Nota: Esto sí no representa el formato en el que desea convertir la cadena de fecha.
  • FECHA_PREDETERMINADA: Requerido Se devuelve la fecha predeterminada si la fecha proporcionada es nula.
date(FECHA, FORMATO, FECHA_PREDETERMINADA) date("2019-10-23 11:24", "aaaa-MM-dd HH:mm", now()) 2019-10-23T11:24:00Z
date Convierte una cadena de fecha en un objeto ZonedDateTime (formato ISO 8601).
  • FECHA: Requerido Cadena que representa la fecha.
  • FORMATO: Requerido Cadena que representa el formato de la fecha de origen.Nota: Esto sí no representa el formato en el que desea convertir la cadena de fecha.
date(FECHA, FORMATO) date("2019-10-23 11:24", "aaaa-MM-dd HH:mm") 2019-10-23T11:24:00Z
date Convierte una cadena de fecha en un objeto ZonedDateTime (formato ISO 8601).
  • FECHA: Requerido Cadena que representa la fecha.
date(FECHA) date("2019-10-23 11:24") "2019-10-23T11:24:00Z"
date_part Recupera las partes de la fecha. Se admiten los siguientes valores de componente:

"año"
"yyyy"
"aa"

"trimestre"
"qq"
"q"

"mes"
"mm"
"m"

"dayofyear"
"día"
"y"

"día"
"dd"
"d"

"semana"
"ww"
"w"

"día laborable"
"dw"
"w"

"hour"
"hh"
"hh24"
"hh12"

"minuto"
"mi"
"n"

"segundo"
"ss"
"s"

"milisegundo"
"SSS"
  • COMPONENTE: Requerido Una cadena que representa la parte de la fecha.
  • FECHA: Requerido La fecha, en un formato estándar.
date_part​(COMPONENT, DATE) date_part("MM", date("2019-10-17 11:55:12") 10
set_date_part Reemplaza un componente en una fecha determinada. Se aceptan los siguientes componentes:

"año"
"yyyy"
"aa"

"mes"
"mm"
"m"

"día"
"dd"
"d"

"hour"
"hh"

"minuto"
"mi"
"n"

"segundo"
"ss"
"s"
  • COMPONENTE: Requerido Una cadena que representa la parte de la fecha.
  • VALOR: Requerido Valor que se va a establecer para el componente en una fecha determinada.
  • FECHA: Requerido La fecha, en un formato estándar.
set_date_part​(COMPONENT, VALUE, DATE) set_date_part("m", 4, date("2016-11-09T11:44:44,797") "2016-04-09T11:44:44 Z"
make_date_time Crea una fecha a partir de artículos. Esta función también se puede inducir usando make_timestamp.
  • AÑO: Requerido El año, escrito con cuatro dígitos.
  • MES: Requerido El mes. Los valores permitidos son del 1 al 12.
  • DÍA: Requerido El día. Los valores permitidos son del 1 al 31.
  • HORA: Requerido La hora. Los valores permitidos son de 0 a 23.
  • MINUTO: Requerido El minuto. Los valores permitidos son de 0 a 59.
  • NANOSEGUNDO: Requerido Los valores de nanosegundo. Los valores permitidos son de 0 a 999999999.
  • ZONA HORARIA: Requerido Zona horaria de la fecha y hora.
make_date_time​(YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, NANOSECOND, TIMEZONE) make_date_time​(2019, 10, 17, 11, 55, 12, 999, "América/Los_Ángeles") 2019-10-17T11:55:12Z
zone_date_to_utc Convierte una fecha de cualquier zona horaria en una fecha en UTC.
  • FECHA: Requerido La fecha que está intentando convertir.
zone_date_to_utc​(DATE) zone_date_to_utc​(2019-10-17T11:55:​12 PST 2019-10-17T19:55:12Z
zone_date_to_zone Convierte una fecha de una zona horaria a otra.
  • FECHA: Requerido La fecha que está intentando convertir.
  • ZONA: Requerido Zona horaria a la que intenta convertir la fecha.
zone_date_to_zone​(DATE, ZONE) zone_date_to_utc​(now(), "Europe/Paris") 2021-10-26T15:43:59Z

Jerarquías: objetos

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
is_empty Comprueba si un objeto está o no vacío.
  • ENTRADA: Requerido El objeto que está intentando comprobar está vacío.
is_empty(INPUT) is_empty([1, null, 2, 3]) false
array_to_object Crea una lista de objetos.
  • ENTRADA: Requerido Una agrupación de pares de claves y matrices.
array_to_object(INPUT) arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35]) [{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }]
to_object Crea un objeto basado en los pares de clave/valor plano dados.
  • ENTRADA: Requerido Una lista plana de pares de clave/valor.
to_object(INPUT) to_object​("firstName", "John", "lastName", "Doe") {"firstName": "John", "lastName": "Doe"}
str_to_object Crea un objeto de la cadena de entrada.
  • CADENA: Requerido Cadena que se está analizando para crear un objeto.
  • VALUE_DELIMITER: Opcional El delimitador que separa un campo del valor. El delimitador predeterminado es :.
  • FIELD_DELIMITER: Opcional El delimitador que separa los pares de valor de campo. El delimitador predeterminado es ,.
str_to_object​(STRING, VALUE_DELIMITER, FIELD_DELIMITER) Nota: Puede utilizar el get() función junto con str_to_object() para recuperar los valores de las claves de la cadena.
  • Ejemplo #1: str_to_object("firstName - John ; lastName - ; - 123 345 7890", "-", ";")
  • Ejemplo #2: str_to_object("firstName - John ; lastName - ; phone - 123 456 7890", "-", ";").get("firstName")
  • Ejemplo de #1:{"firstName": "John", "lastName": "Doe", "phone": "123 456 7890"}
  • Ejemplo #2: “John”
contains_key Comprueba si el objeto existe en los datos de origen. Nota: Esta función sustituye a la función obsoleta. is_set() función.
  • ENTRADA: Requerido La ruta que se debe comprobar si existe dentro de los datos de origen.
contains_key(INPUT) contains_key("evars.evar.field1") true
anular Establece el valor del atributo en null. Debe utilizarse cuando no desee copiar el campo en el esquema de destino. nullify() nullify() null
get_keys Analiza los pares clave/valor y devuelve todas las claves.
  • OBJETO: Requerido El objeto del que se extraerán las claves.
get_keys(OBJECT) get_keys({"book1": "Pride and Prejudice", "book2": "1984"}) ["book1", "book2"]
get_values Analiza los pares clave/valor y devuelve el valor de la cadena, en función de la clave dada.
  • CADENA: Requerido La cadena que desea analizar.
  • CLAVE: Requerido La clave para la que se debe extraer el valor.
  • VALUE_DELIMITER: Requerido El delimitador que separa el campo y el valor. Si una null Si se proporciona una cadena vacía, este valor es :.
  • FIELD_DELIMITER: Opcional El delimitador que separa los pares de campo y valor. Si una null Si se proporciona una cadena vacía, este valor es ,.
get_values(STRING, KEY, VALUE_DELIMITER, FIELD_DELIMITER) get_values("firstName - John , lastName - Cena , phone - 555 420 8692", "firstName", "-", ",") John

Para obtener información sobre la función de copia de objetos, consulte la sección abajo.

Jerarquías - Matrices

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
fundirse Devuelve el primer objeto no nulo de una matriz determinada.
  • ENTRADA: Requerido La matriz de la que desea encontrar el primer objeto no nulo.
coalesce(INPUT) coalesce(null, null, null, "first", null, "second") "primero"
primero Recupera el primer elemento de la matriz determinada.
  • ENTRADA: Requerido La matriz de la que desea encontrar el primer elemento.
first(INPUT) first("1", "2", "3") "1"
último Recupera el último elemento de la matriz determinada.
  • ENTRADA: Requerido La matriz de la que desea encontrar el último elemento.
last(INPUT) last("1", "2", "3") "3"
add_to_array Añade elementos al final de la matriz.
  • MATRIZ: Requerido La matriz a la que está agregando elementos.
  • VALUES: Los elementos que desea anexar a la matriz.
add_to_array​(MATRIZ, VALORES) add_to_array​(['a', 'b'], 'c', 'd') ['a', 'b', 'c', 'd']
join_array Combina las matrices entre sí.
  • MATRIZ: Requerido La matriz a la que está agregando elementos.
  • VALUES: Las matrices que desea anexar a la matriz principal.
join_array​(ARRAY, VALUES) join_array​(['a', 'b'], ['c'], ['d', 'e']) ['a', 'b', 'c', 'd', 'e']
to_array Toma una lista de entradas y la convierte en una matriz.
  • INCLUDE_NULLS: Requerido Un valor booleano para indicar si se deben incluir o no valores nulos en la matriz de respuesta.
  • VALORES: Requerido Elementos que se van a convertir en una matriz.
to_array​(INCLUDE_NULLS, VALUES) to_array(false, 1, null, 2, 3) [1, 2, 3]
size_of Devuelve el tamaño de la entrada.
  • ENTRADA: Requerido El objeto del que intenta encontrar el tamaño.
size_of(INPUT) size_of([1, 2, 3, 4]) 4
upsert_array_append Esta función se utiliza para anexar todos los elementos de toda la matriz de entrada al final de la matriz en Profile. Esta función es solamente aplicable durante las actualizaciones. Si se utiliza en el contexto de las inserciones, esta función devuelve la entrada tal cual.
  • MATRIZ: Requerido Matriz que se anexará a la matriz en el perfil.
upsert_array_append(ARRAY) upsert_array_append([123, 456]) [123, 456]
upsert_array_replace Esta función se utiliza para reemplazar elementos en una matriz. Esta función es solamente aplicable durante las actualizaciones. Si se utiliza en el contexto de las inserciones, esta función devuelve la entrada tal cual.
  • MATRIZ: Requerido Matriz que reemplaza la matriz en el perfil.
upsert_array_replace(ARRAY) upsert_array_replace([123, 456], 1) [123, 456]

Operadores lógicos

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
decode Dadas una clave y una lista de pares de valor clave acoplados como una matriz, la función devuelve el valor si se encuentra la clave o devuelve un valor predeterminado si está presente en la matriz.
  • CLAVE: Requerido La clave con la que se debe hacer coincidir.
  • OPTIONS: Requerido Matriz aplanada de pares de clave/valor. De forma opcional, se puede colocar un valor predeterminado al final.
decode(KEY, OPTIONS) decode(stateCode, "ca", "California", "pa", "Pennsylvania", "N/A") Si el stateCode proporcionado es "ca", "California".
Si el stateCode proporcionado es "pa", "Pennsylvania".
Si el código de estado no coincide con lo siguiente, "N/A".
iif Evalúa una expresión booleana determinada y devuelve el valor especificado en función del resultado.
  • EXPRESIÓN: Requerido La expresión booleana que se está evaluando.
  • VALOR_VERDADERO: Requerido El valor que se devuelve si la expresión se evalúa como verdadera.
  • VALOR_FALSO: Requerido El valor que se devuelve si la expresión se evalúa como falsa.
iif(EXPRESSION, TRUE_VALUE, FALSE_VALUE) iif("s".equalsIgnoreCase("S"), "True", "False") "True"

Agregación

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
min Devuelve el mínimo de los argumentos dados. Utiliza el orden natural.
  • OPTIONS: Requerido Uno o más objetos que se pueden comparar entre sí.
min(OPTIONS) min(3, 1, 4) 1
max Devuelve el máximo de los argumentos dados. Utiliza el orden natural.
  • OPTIONS: Requerido Uno o más objetos que se pueden comparar entre sí.
max(OPTIONS) max(3, 1, 4) 4

Escribir conversiones

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
to_bigint Convierte una cadena en un BigInteger.
  • CADENA: Requerido La cadena que se va a convertir en un BigInteger.
to_bigint(STRING) to_bigint​("1000000.34") 1000000.34
to_decimal Convierte una cadena en un valor Double.
  • CADENA: Requerido La cadena que se va a convertir en un valor de tipo Double.
to_decimal(STRING) to_decimal("20.5") 20.5
to_float Convierte una cadena en flotante.
  • CADENA: Requerido La cadena que se va a convertir en flotante.
to_float(STRING) to_float("12.3456") 12.34566
to_integer Convierte una cadena en un número entero.
  • CADENA: Requerido La cadena que se va a convertir en un número entero.
to_integer(CADENA) to_integer("12") 12

Funciones JSON

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
json_to_object Deserialice el contenido JSON de la cadena determinada.
  • CADENA: Requerido Cadena JSON que se va a deserializar.
json_to_object​(STRING) json_to_object​({"info":{"firstName":"John","lastName": "Doe"}}) Un objeto que representa el JSON.

Operaciones especiales

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
uuid /
guid
Genera un ID pseudoaleatorio. uuid()
guid()
uuid()
guid()
7c0267d2-bb74-4e1a-9275-3bf4fccda5f4
c7016dc7-3163-43f7-afc7-2e1c9c206333
fpid_to_ecid Esta función toma una cadena FPID y la convierte en un ECID para su uso en aplicaciones de Adobe Experience Platform y Adobe Experience Cloud.
  • CADENA: Requerido Cadena FPID que se va a convertir en ECID.
fpid_to_ecid(STRING) fpid_to_ecid("4ed70bee-b654-420a-a3fd-b58b6b65e991") "28880788470263023831040523038280731744"

Funciones del agente de usuario

Cualquiera de las funciones de agente de usuario que se incluyen en la tabla siguiente puede devolver cualquiera de los siguientes valores:

  • Teléfono: dispositivo móvil con pantalla pequeña (normalmente < 7")
  • Móvil: dispositivo móvil que aún no se ha identificado. Este dispositivo móvil puede ser un eReader, una tableta, un teléfono, un reloj, etc.

Para obtener más información sobre los valores de los campos de dispositivo, lea la lista de valores de campo de dispositivo en el apéndice del presente documento.

NOTA

Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.

Función Descripción Parámetros Sintaxis Expresión Salida de ejemplo
ua_os_name Extrae el nombre del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_name​(USER_AGENT) ua_os_name​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") iOS
ua_os_version_major Extrae la versión principal del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_version_major​(USER_AGENT) ua_os_version_major s("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") iOS5
ua_os_version Extrae la versión del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_version​(USER_AGENT) ua_os_version​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") 5.1.1
ua_os_name_version Extrae el nombre y la versión del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_name_version​(USER_AGENT) ua_os_name_version​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") iOS5.1.1
ua_agent_version Extrae la versión del agente de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_agent_version​(USER_AGENT) ua_agent_version​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") 5.1
ua_agent_version_major Extrae el nombre del agente y la versión principal de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_agent_version_major​(USER_AGENT) ua_agent_version_major​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") Safari 5
ua_agent_name Extrae el nombre del agente de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_agent_name​(USER_AGENT) ua_agent_name​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") Safari
ua_device_class Extrae la clase de dispositivo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_device_class​(USER_AGENT) ua_device_class​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3") Phone

Copia de objeto

SUGERENCIA

La función de copia de objetos se aplica automáticamente cuando un objeto del origen se asigna a un objeto del XDM. No se necesitan acciones adicionales de los usuarios.

Puede utilizar la función de copia de objetos para copiar automáticamente los atributos de un objeto sin realizar cambios en la asignación. Por ejemplo, si los datos de origen tienen una estructura de:

address{
        line1: 4191 Ridgebrook Way,
        city: San Jose,
        state: California
        }

y una estructura XDM de:

addr{
    addrLine1: 4191 Ridgebrook Way,
    city: San Jose,
    state: California
    }

A continuación, la asignación pasa a ser:

address -> addr
address.line1 -> addr.addrLine1

En el ejemplo anterior, la variable city y state Los atributos de también se incorporan automáticamente durante la ejecución porque la variable address objeto asignado a addr. Si tuviera que crear una line2 en la estructura XDM y los datos de entrada también contienen un atributo line2 en el address , también se incorporará automáticamente sin necesidad de modificar manualmente la asignación.

Para garantizar que la asignación automática funcione, se deben cumplir los siguientes requisitos previos:

  • Los objetos de nivel principal deben asignarse;
  • Se deben haber creado nuevos atributos en el esquema XDM;
  • Los nuevos atributos deben tener nombres coincidentes en el esquema de origen y en el esquema XDM.

Si no se cumplen todos los requisitos previos, debe asignar manualmente el esquema de origen al esquema XDM mediante la preparación de datos.

Apéndice

A continuación se proporciona información adicional sobre el uso de funciones de asignación de preparación de datos

Caracteres especiales

La siguiente tabla describe una lista de caracteres reservados y sus caracteres codificados correspondientes.

Carácter reservado Carácter codificado
espacio %20
! %21
" %22
# %23
$ %24
% %25
& %26
' %27
( %28
) %29
* %2A
+ %2B
, %2C
/ %2F
: %3A
; %3B
< %3C
= %3D
> %3E
? %3F
@ %40
[ %5B
] %5D
^ %5E
` %60
~ %7E

Valores de campo de dispositivo

La tabla siguiente describe una lista de valores de campos de dispositivo y sus descripciones correspondientes.

Device Descripción
Escritorio Un tipo de dispositivo de escritorio o portátil.
Anonimizado Un dispositivo anónimo. En algunos casos, estos son useragents que han sido alterados por un software de anonimización.
Desconocido Un dispositivo desconocido. Estos suelen ser useragents que no contienen información sobre el dispositivo.
Dispositivo móvil Dispositivo móvil que aún no se ha identificado. Este dispositivo móvil puede ser un eReader, una tableta, un teléfono, un reloj, etc.
Tableta Un dispositivo móvil con una pantalla grande (normalmente > 7").
Phone Un dispositivo móvil con una pantalla pequeña (normalmente < 7").
Ver Un dispositivo móvil con una pantalla pequeña (normalmente < 2"). Estos dispositivos funcionan normalmente como una pantalla adicional para un dispositivo de tipo teléfono/tableta.
Realidad aumentada Un dispositivo móvil con capacidades de AR.
Realidad virtual Un dispositivo móvil con capacidades de RV.
eReader Un dispositivo similar a una tableta, pero normalmente con un eInk pantalla.
Cuadro en la parte superior Dispositivo conectado que permite la interacción a través de una pantalla de tamaño TV.
TV Dispositivo similar al decodificador, pero integrado en el televisor.
Dispositivo doméstico Un electrodoméstico (generalmente grande), como un refrigerador.
Consola de juego Un sistema de juego fijo como un Playstation o un XBox.
Consola de juego portátil Un sistema de juegos móvil como Nintendo Switch.
Voz Un dispositivo accionado por voz como un Amazon Alexa o una Google Home.
Coche Un explorador basado en vehículo.
Robot Robots que visitan un sitio web.
Robot móvil Robots que visitan un sitio web pero que indican que desean que se les considere visitantes móviles.
Robot Imitator Robots que visitan un sitio web, fingiendo que son robots como Google, pero no lo son. Nota: En la mayoría de los casos, los imitadores de robots son robots.
Cloud Una aplicación basada en la nube. Estos no son ni robots ni hackers, sino aplicaciones que necesitan conectarse. Esto incluye Mastodon servidores.
Pirata Informático Este valor de dispositivo se utiliza en caso de que se detecten scripts en la useragent cadena.

En esta página