Funciones de conversión en Jitterbit Studio
Las funciones de conversión se utilizan para convertir elementos de datos y variables de Jitterbit de un tipo a otro.
BinaryToHex
Declaración
string BinaryToHex(binary arg)
Sintaxis
BinaryToHex(<arg>)
Parámetros requeridos
arg: Valor binario a convertir
Descripción
Convierte un valor binario en una cadena que representa los valores hexadecimales de cada byte. La cadena resultante estará en minúsculas. El resultado de esta llamada a la función es indefinido si el argumento no es un valor binario.
Esta es la inversa de la función HexToBinary.
Ejemplos
// If $x is a binary value containing the bytes
// 0x17 0xA3 0xEF 0x80
BinaryToHex($x)
// returns the string "17a3ef80"
// If $y is an empty binary value
BinaryToHex($y)
// returns an empty string ("")
BinaryToUUID
Declaración
string BinaryToUUID(binary arg)
Sintaxis
BinaryToUUID(<arg>)
Parámetros requeridos
arg: Valor binario a convertir
Descripción
Convierte un valor binario de 16 bytes en una cadena en el formato estándar de UUID. La cadena resultante siempre estará en minúsculas.
Esta es la inversa de la función UUIDToBinary.
Ejemplos
// If $x is a binary value containing the 16 bytes
// 0x2F 0x46 0xDA 0xD9 0xE5 0xC2 0x45 0x7E 0xB1 0xFD 0xAD 0x1B 0x49 0xB9 0x9A 0xFF,
BinaryToUuid($x)
// returns the string "2f46dad9-e5c2-457e-b1fd-ad1b49b99aff"
Bool
Declaración
bool Bool(binary arg)
Sintaxis
Bool(<arg>)
Parámetros requeridos
arg: Valor binario a convertir
Descripción
Convierte cualquier tipo de dato a un valor booleano (true o false). Si el dato es un número entero o un número de punto flotante diferente de cero, el resultado es true (1). Las cadenas "true" y "T" devuelven true independientemente de la capitalización ("TRUE", "t" y "True" devuelven true). En todos los demás casos, el resultado es false (0).
Ejemplos
Bool(2);
// Returns true
Bool("true");
// Returns true
Bool("F");
// Returns false
Bool("text");
// Returns false
Date
Declaración
date Date(type arg)
Sintaxis
Date(<arg>)
Parámetros requeridos
arg: Valor a ser convertido a un objeto de fecha
Descripción
Convierte el argumento a una fecha. Si la entrada es una cadena, debe estar formateada utilizando uno de los formatos de fecha estándar, como "12/25/2018 12:30", "2018-12-25", "2018-12-25T12:30:00", "25 de diciembre de 2018" o "25 DIC 2018".
Si la cadena de entrada no está en uno de los cuatro formatos de fecha predefinidos (GeneralDate, LongDate, MediumDate o ShortDate) que puede leer la función Date, se puede convertir primero a un formato estándar mediante la función CVTDate. La hora, el minuto y el segundo son opcionales.
Tenga en cuenta que Date(Long(Now())) == Now().
Ejemplos
Date("9/27/2007");
// Returns the date that represents 2007-09-27 00:00:00 UTC
Date(1190888288);
// Returns the date that represents 2007-09-27 10:18:08 UTC
// (also known as 2007-09-27T10:18:08)
Double
Declaración
double Double(type arg)
Sintaxis
Double(<arg>)
Parámetros requeridos
arg: Valor a convertir
Descripción
Se hace un esfuerzo por convertir el argumento a un doble. Si el tipo de dato que se evalúa no puede convertirse a un doble, la función devuelve 0. Si el dato que se evalúa es un registro de fecha o hora, el resultado es el número de segundos desde las 12:00:00 AM del 1/1/1970 UTC (el inicio de la época UNIX).
Ejemplos
Double(19.9874);
// Returns a value of 19.987400
Double(9/15);
// Returns a value of 0
Double("5.5a");
// Returns a value of 5.5
Double("abcd");
// Returns 0
Double(Date("2007-09-27T10:18:08"));
// Returns 1190888288
Float
Declaración
float Float(type arg)
Sintaxis
Float(<arg>)
Parámetros requeridos
arg: Valor a convertir
Descripción
Se hace un esfuerzo por convertir el argumento a un flotante. Si el tipo de dato que se evalúa no puede convertirse a un flotante, la función devuelve 0. Si el dato que se evalúa es un registro de fecha o hora, el resultado es el número de segundos desde las 12:00:00 AM del 1/1/1970 UTC (el inicio de la época UNIX).
Ejemplos
Float(345);
// Returns a value of 345
Float("3.141592");
// Returns a value of 3.14159
Float("5.5a");
// Returns a value of 5.5
Float("abcd");
// Returns 0
Float("2007-09-27T10:18:08");
// Returns 1.19089e+09
HexToBinary
Declaración
string HexToBinary(string arg)
Sintaxis
HexToBinary(<arg>)
Parámetros requeridos
arg: Cadena hexadecimal a convertir
Descripción
Convierte una cadena hexadecimal a un valor binario. El valor resultante contendrá los bytes representados por cada par de caracteres en la cadena de entrada. La cadena de entrada no distingue entre mayúsculas y minúsculas.
Esta es la inversa de la función BinaryToHex.
Ejemplos
HexToBinary("17a3ef80");
// Returns a binary value containing the bytes 0x17 0xA3 0xEF 0x80
HexToBinary("17A3EF80");
// Returns a binary value containing the bytes 0x17 0xA3 0xEF 0x80
HexToBinary("");
// Returns an empty binary value
HexToString
Declaración
string HexToString(string arg)
Sintaxis
HexToString(<arg>)
Parámetros requeridos
arg: Elemento de cadena hex que se va a convertir
Descripción
Convierte una cadena hex en UTF-8 a un valor de cadena. El valor resultante contendrá los caracteres representados por cada par de caracteres en la cadena de entrada. La cadena de entrada no distingue entre mayúsculas y minúsculas. Dado que los caracteres de entrada son hexadecimales, los pares de caracteres de la cadena de entrada deben limitarse al rango "00" a "FF".
Para admitir la conversión de un valor hex nulo (00), establezca jitterbit.scripting.hex.enable_null_support en true antes de esta función al usar versiones de agente 11.37 o posteriores.
Para convertir el valor de cadena saliente de una cadena hex en UTF-16, establezca jitterbit.scripting.hex.enable_unicode_support en true antes de esta función al usar versiones de agente 10.71 / 11.9 o posteriores.
Esta es la inversa de la función StringToHex.
Ejemplos
HexToString("6E6577");
// Returns "new"
HexToString("00");
// Returns an empty string ("")
HexToString("c2a7");
// Returns "§" (UTF-8)
HexToString("a7");
// Returns "§" if jitterbit.scripting.hex.enable_unicode_support is set to true (UTF-16), otherwise returns "�" (UTF-8)
Int
Declaración
int Int(type arg)
Sintaxis
Int(<arg>)
Parámetros requeridos
arg: Valor a convertir
Descripción
Se hace un esfuerzo por convertir el argumento a un entero. Si el tipo de dato que se evalúa no se puede convertir a un entero, la función devuelve 0. Si los datos que se evalúan son un registro de fecha o hora, el resultado es el número de segundos desde las 12:00:00 AM del 1/1/1970 UTC (el inicio de la época UNIX).
Ejemplos
Int("3.141592");
// Returns a value of 3
Int("5a");
// Returns a value of 5
Int("5");
// Returns a value of 5
Int("abcd");
// Returns 0
Int(Date("2007-09-27 10:18:08"));
// Returns a value of 1190888288
Long
Declaración
long Long(type arg)
Sintaxis
Long(<arg>)
Parámetros requeridos
arg: Valor a ser convertido
Descripción
Se hace un esfuerzo por convertir el argumento a un entero largo. Si el tipo de dato que se evalúa no puede ser convertido a un entero largo, la función devuelve 0. Si el dato que se evalúa es un registro de fecha o hora, el resultado es el número de segundos desde las 12:00:00 AM del 1/1/1970 UTC (el inicio de la época UNIX).
Ejemplos
Long("3.141529");
// Returns a value of 3
Long("5a");
// Returns a value of 5
Long("5");
// Returns a value of 5
Long(1234567890.123456);
// Returns a value of 1234567890
Long("abcd");
// Returns a value of 0
Long(Date("2007-09-27 10:18:08"));
// Returns a value of 1190888288
String
Declaración
string String(type arg)
Sintaxis
String(<arg>)
Parámetros requeridos
arg: Valor a ser convertido
Descripción
Convierte cualquier tipo de dato a una cadena. Si el dato que se evalúa ya es una cadena, no se realiza ninguna conversión.
Si el tipo de dato es un registro de fecha o hora, la fecha se devuelve en formato ISO 8601 (aaaa-mm-dd HH:MM:SS). Para otros formatos de fecha, utiliza las funciones CVTDate o FormatDate.
Los datos binarios que contienen bytes nulos se devuelven como una cadena que representa los valores hexadecimales de cada byte, tal como si se hubiera llamado a BinaryToHex. Si los datos binarios no contienen bytes nulos, entonces se devuelve una representación de cadena con la suposición de que los bytes representan una cadena codificada en UTF-8. Si siempre deseas una representación hexadecimal, utiliza la función BinaryToHex en su lugar.
Para un valor booleano, se devuelven las cadenas "1" o "0".
Ejemplos
String("98");
// Returns a value of "98"
String(98);
// Returns a value of "98"
String(true);
// Returns a value of "1"
String(Date("2007-09-27T10:18:08"));
// Returns a value of "2007-09-27 10:18:08"
String(HexToBinary("6E6577"));
// Returns a value of "new"
StringToHex
Declaración
string StringToHex(string arg)
Sintaxis
StringToHex(<arg>)
Parámetros requeridos
arg: Elemento de cadena a convertir
Descripción
Convierte un valor de cadena a una cadena hexagonal en UTF-8. La cadena resultante estará en minúsculas. El resultado de esta llamada a la función es indefinido si el argumento no es un valor de cadena.
Para soportar la conversión de valor hexagonal nulo (00), establece jitterbit.scripting.hex.enable_null_support en true antes de esta función al usar versiones de agente 11.37 o posteriores.
Para convertir el valor de cadena entrante a una cadena hexagonal en UTF-16, establece jitterbit.scripting.hex.enable_unicode_support en true antes de esta función al usar versiones de agente 10.71 / 11.9 o posteriores.
Esta es la inversa de la función HexToString.
Ejemplos
StringToHex("new");
// Returns "6e6577"
StringToHex("");
// Returns an empty string ("")
StringToHex("§");
// Returns "a7" if jitterbit.scripting.hex.enable_unicode_support is set to true (UTF-16), otherwise returns "c2a7" (UTF-8)
UUIDToBinary
Declaración
binary UUIDToBinary(string arg)
Sintaxis
UUIDToBinary(<arg>)
Parámetros requeridos
arg: Elemento de cadena a convertir
Descripción
Convierte una cadena UUID a un valor binario que contiene los bytes correspondientes. El tamaño de la cadena de entrada debe ser de 36 caracteres. El formato de la entrada debe ser nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn donde cada par (nn) es la representación hexadecimal del byte correspondiente. El caso de la cadena de entrada no importa. El valor binario devuelto tiene 16 bytes de longitud.
Este es el reverso de la función BinaryToUID.
Ejemplos
UuidToBinary("2f46dad9-e5c2-457e-b1fd-ad1b49b99aff")
// devuelve un valor binario con los bytes
// 0x2F 0x46 0xDA 0xD9 0xE5 0xC2 0x45 0x7E 0xB1 0xFD 0xAD 0x1B 0x49 0xB9 0x9A 0xFF