Ir para o conteúdo

Funções de conversão no Jitterbit Studio

As funções de conversão são usadas para converter elementos de dados e variáveis do Jitterbit de um tipo para outro.

BinaryToHex

Declaração

string BinaryToHex(binary arg)

Sintaxe

BinaryToHex(<arg>)

Parâmetros obrigatórios

  • arg: Valor binário a ser convertido

Descrição

Converte um valor binário em uma string que representa os valores hexadecimais de cada byte. A string resultante será toda em letras minúsculas. O resultado dessa chamada de função é indefinido se o argumento não for um valor binário.

Esta é a reversa da função HexToBinary.

Exemplos

// 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

Declaração

string BinaryToUUID(binary arg)

Sintaxe

BinaryToUUID(<arg>)

Parâmetros obrigatórios

  • arg: Valor binário a ser convertido

Descrição

Converte um valor binário de 16 bytes em uma string no formato padrão UUID. A string resultante será sempre em letras minúsculas.

Esta é a reversa da função UUIDToBinary.

Exemplos

// 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

Declaração

bool Bool(binary arg)

Sintaxe

Bool(<arg>)

Parâmetros obrigatórios

  • arg: Valor binário a ser convertido

Descrição

Converte qualquer tipo de dado em um valor booleano (true ou false). Se o dado for um número inteiro ou um número de ponto flutuante diferente de zero, o resultado é true (1). As strings "true" e "T" retornam true independentemente do caso ("TRUE", "t" e "True" retornam todos true). Em todos os outros casos, o resultado é false (0).

Exemplos

Bool(2);
// Returns true

Bool("true");
// Returns true

Bool("F");
// Returns false

Bool("text");
// Returns false

Date

Declaração

date Date(type arg)

Sintaxe

Date(<arg>)

Parâmetros obrigatórios

  • arg: Valor a ser convertido em um objeto de data

Descrição

Converte o argumento em uma data. Se a entrada for uma string, ela deve estar formatada usando um dos formatos de data padrão, como "12/25/2018 12:30", "2018-12-25", "2018-12-25T12:30:00", "25 de dezembro de 2018" ou "25 DEZ 2018".

Se a string de entrada não estiver em um dos quatro formatos de data predefinidos (GeneralDate, LongDate, MediumDate ou ShortDate) que podem ser lidos pela função Date, ela pode ser convertida primeiro para um formato padrão pela função CVTDate. Hora, minuto e segundo são opcionais.

Se a entrada for um inteiro ou um double, a entrada é interpretada como o número de segundos a partir de 12:00:00 AM de 1/1/1970 UTC, o início da época UNIX.

Observe que Date(Long(Now())) == Now().

Exemplos

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

Declaração

double Double(type arg)

Sintaxe

Double(<arg>)

Parâmetros obrigatórios

  • arg: Valor a ser convertido

Descrição

Faz-se um esforço para converter o argumento em um double. Se o tipo de dado avaliado não puder ser convertido em um double, a função retorna 0. Se os dados avaliados forem um registro de data ou hora, o resultado é o número de segundos desde 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).

Exemplos

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

Declaração

float Float(type arg)

Sintaxe

Float(<arg>)

Parâmetros obrigatórios

  • arg: Valor a ser convertido

Descrição

Faz-se um esforço para converter o argumento em um float. Se o tipo de dado avaliado não puder ser convertido em um float, a função retorna 0. Se os dados avaliados forem um registro de data ou hora, o resultado é o número de segundos desde 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).

Exemplos

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

Declaração

string HexToBinary(string arg)

Sintaxe

HexToBinary(<arg>)

Parâmetros obrigatórios

  • arg: Hex-string a ser convertido

Descrição

Converte uma hex-string em um valor binário. O valor resultante conterá os bytes representados por cada par de caracteres na string de entrada. A string de entrada é insensível a maiúsculas e minúsculas.

Esta é a reversa da função BinaryToHex.

Exemplos

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

Declaração

string HexToString(string arg)

Sintaxe

HexToString(<arg>)

Parâmetros obrigatórios

  • arg: Elemento de string hexadecimal a ser convertido

Descrição

Converte uma string hexadecimal UTF-8 em um valor de string. O valor resultante conterá os caracteres representados por cada par de caracteres na string de entrada. A string de entrada é insensível a maiúsculas e minúsculas. Como os caracteres de entrada são hexadecimais, os pares de caracteres da string de entrada devem ser limitados ao intervalo "00" a "FF".

Para suportar a conversão de valor hexadecimal nulo (00), defina jitterbit.scripting.hex.enable_null_support como true antes desta função ao usar versões do agente 11.37 ou posteriores.

Para converter o valor de string de saída de uma string hexadecimal UTF-16, defina jitterbit.scripting.hex.enable_unicode_support como true antes desta função ao usar versões do agente 10.71 / 11.9 ou posteriores.

Esta é a reversa da função StringToHex.

Exemplos

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

Declaração

int Int(type arg)

Sintaxe

Int(<arg>)

Parâmetros obrigatórios

  • arg: Valor a ser convertido

Descrição

Faz-se um esforço para converter o argumento em um inteiro. Se o tipo de dado sendo avaliado não puder ser convertido em um inteiro, a função retorna 0. Se os dados avaliados forem um registro de data ou hora, o resultado é o número de segundos desde 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).

Exemplos

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

Declaração

long Long(type arg)

Sintaxe

Long(<arg>)

Parâmetros obrigatórios

  • arg: Valor a ser convertido

Descrição

Faz-se um esforço para converter o argumento em um inteiro longo. Se o tipo de dado avaliado não puder ser convertido em um inteiro longo, a função retorna 0. Se os dados avaliados forem um registro de data ou hora, o resultado é o número de segundos desde 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).

Exemplos

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

Declaração

string String(type arg)

Sintaxe

String(<arg>)

Parâmetros obrigatórios

  • arg: Valor a ser convertido

Descrição

Converte qualquer tipo de dado em uma string. Se os dados avaliados já forem uma string, nenhuma conversão ocorre.

Se o tipo de dado for um registro de data ou hora, a data é retornada no formato ISO 8601 (aaaa-mm-dd HH:MM:SS). Para outros formatos de data, utilize as funções CVTDate ou FormatDate.

Dados binários que contêm bytes nulos são retornados como uma string representando os valores hexadecimais de cada byte, assim como se BinaryToHex tivesse sido chamado. Se os dados binários não contiverem bytes nulos, então uma representação em string é retornada assumindo que os bytes representam uma string codificada em UTF-8. Se você sempre quiser uma representação hexadecimal, utilize a função BinaryToHex.

Para um valor booleano, as strings "1" ou "0" são retornadas.

Exemplos

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

Declaração

string StringToHex(string arg)

Sintaxe

StringToHex(<arg>)

Parâmetros obrigatórios

  • arg: Elemento de string a ser convertido

Descrição

Converte um valor de string em uma string hexadecimal UTF-8. A string resultante será toda em letras minúsculas. O resultado desta chamada de função é indefinido se o argumento não for um valor de string.

Para suportar a conversão de valor hexadecimal nulo (00), defina jitterbit.scripting.hex.enable_null_support como true antes desta função ao usar versões do agente 11.37 ou posteriores.

Para converter o valor de string de entrada em uma string hexadecimal UTF-16, defina jitterbit.scripting.hex.enable_unicode_support como true antes desta função ao usar versões do agente 10.71 / 11.9 ou posteriores.

Esta é a reversa da função HexToString.

Exemplos

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

Declaração

binary UUIDToBinary(string arg)

Sintaxe

UUIDToBinary(<arg>)

Parâmetros obrigatórios

  • arg: Elemento de string a ser convertido

Descrição

Converte uma string UUID em um valor binário contendo os bytes correspondentes. O tamanho da string de entrada deve ser de 36 caracteres. O formato da entrada deve ser nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn, onde cada par (nn) é a representação hexadecimal do byte correspondente. A capitalização da string de entrada não importa. O valor binário retornado tem 16 bytes de comprimento.

Isto é o inverso da função BinaryToUID.

Exemplos

UuidToBinary("2f46dad9-e5c2-457e-b1fd-ad1b49b99aff")
// retorna um valor binário com os bytes
// 0x2F 0x46 0xDA 0xD9 0xE5 0xC2 0x45 0x7E 0xB1 0xFD 0xAD 0x1B 0x49 0xB9 0x9A 0xFF