JavaScript Jitterbit e Funções Comuns
Os JavaScripts Jitterbit podem acessar — além das funções JavaScript padrão que fazem parte do ECMA-262 v5.1—essas funções específicas do Jitterbit. Como ECMA-262 v5.1 é uma versão mais antiga do JavaScript do que o que está comumente disponível em navegadores e outros mecanismos JavaScript, incluímos tabelas das funções JavaScript comuns e padrão que estão disponíveis em Jitterbit JavaScripts.
Importante
Para melhor desempenho, recomendamos usar JavaScript somente quando um Jitterbit Script equivalente não está disponível.
Nota
- O número máximo de iterações de loop permitidas no Harmony é 50.000.
- O número máximo de iterações de loop na Jitterbit Script Language é por cada loop individual. Para aumentar o número permitido de iterações por loop em um script da Jitterbit Script Language, consulte Jitterbit.scripting.while.max_iterations em Script de variáveis Jitterbit.
- O número máximo de iterações de loop em JavaScript é por script (agregado de todos os loops dentro de um script). Para aumentar o número máximo de iterações de loop em JavaScript, consulte Java script loop em JavaScript.
Funções Jitterbit
Jitterbit.DbExecute
Declaração
array Jitterbit.DbExecute(string databaseId, string sql)
int Jitterbit.DbExecute(string databaseId, string sql, string outputVariable,...)
Sintaxe
Jitterbit.DbExecute(<databaseId>, <sql>)
Jitterbit.DbExecute(<databaseId>, <sql>, <outputVariable>,...])
Parâmetros Obrigatórios
databaseId
: Uma fonte de banco de dados de string no projeto atualsql
: O comando SQL a ser executado no banco de dadosoutputVariable
: (Segunda forma) Um parâmetro de saída que é correspondido aos campos retornados no comando SQL. Argumentos adicionais podem ser especificados conforme necessário.
Descrição
Executa uma instrução SQL em um banco de dados e retorna os resultados. Veja o Jitterbit Script DBExecute
função para detalhes.
Jitterbit.DbLookup
Declaração
string Jitterbit.DbLookup(string databaseId, string sql)
Sintaxe
Jitterbit.DbLookup(<databaseId>, <sql>)
Parâmetros Obrigatórios
databaseId
: Uma fonte de banco de dados de string no projeto atualsql
: O comando SQL a ser executado no banco de dados
Descrição
Executa uma instrução SQL em um banco de dados e retorna o primeiro campo do primeiro resultado que corresponde ao critério especificado. Veja o Jitterbit Script DBLookup
função para detalhes.
Jitterbit.GetVar
Declaração
string Jitterbit.GetVar(string jitterbitVariableName)
Sintaxe
Jitterbit.GetVar(<jitterbitVariableName>)
Parâmetros Obrigatórios
jitterbitVariableName
: O nome de uma variável Jitterbit
Descrição
Retorna o valor de uma variável Jitterbit (uma variável global predefinida que é incorporada ao agente e começa com jitterbit.
). As variáveis disponíveis podem ser vistas no Design Studio e estão documentadas em Variáveis Jitterbit.
Aviso
Também é possível, mas não recomendado, usar o Jitterbit.GetVar
função para recuperar o valor de uma variável global definida pelo usuário.
A Jitterbit.GetVar
a função foi projetada para permitir o uso de variáveis que contêm pontos dentro do nome da variável. No entanto, usar pontos em um nome de variável global definido pelo usuário não é recomendado. Como o valor será convertido em uma string quando a variável for definida, essas funções não podem ser usadas com tipos de dados complexos, como matrizes, dicionários ou objetos JSON. Em vez disso, é recomendável que você crie variáveis globais sem pontos e, em vez disso, use sublinhados no lugar de pontos e use o cifrão padrão $
sintaxe conforme descrito em Variáveis globais.
Exemplos
// Retrieves the value of the Jitterbit variable "jitterbit.api.request"
var request = Jitterbit.GetVar("$jitterbit.api.request");
Jitterbit.ReadFile
Declaração
string Jitterbit.ReadFile(string sourceId[, string fileFilter])
Sintaxe
Jitterbit.ReadFile(<sourceId>[, <fileFilter>])
Parâmetros Obrigatórios
sourceId
: Fonte do tipo de arquivo no projeto atual
Parâmetros Opcionais
fileFilter
: Filtro de arquivo ou nome de arquivo para substituir a definição de origem
Descrição
Lê o conteúdo de um arquivo de uma fonte.
A fonte do tipo de arquivo usada nesta chamada de função deve ser definida como uma fonte no projeto atual.
Veja as instruções em inserir itens do projeto.
O método retorna o conteúdo do arquivo apontado pela fonte. Se o filtro de fonte selecionar mais de um arquivo, o primeiro será usado. É recomendado especificar uma fonte que identifique exclusivamente um único arquivo.
O parâmetro fileFilter
é opcional e pode ser usado para substituir o filtro de arquivo usado na definição de origem. Um nome de arquivo pode ser usado. Alternativamente, uma variável global pode ser usada para substituir o filtro de arquivo na definição de origem. Variáveis globais são referenciadas como [de_name]
na definição da fonte.
A partir do Harmony versão 8.20, se o ReadFile
função falha, a operação não falha. Um script será abortado, um aviso será adicionado ao log da operação e a operação continuará.
Este método pode ser usado para ler dados de uma fonte HTTP. Nesse caso, todos os Jitterbit $jitterbit.source.http.*
variáveis serão preenchidas.
Exemplos
// Reads the first file retrieved from a source
var fileContents = Jitterbit.ReadFile("<TAG>Sources/Customer CSV FTP</TAG>");
// Use the filename "test.txt" instead of what is defined in the source
var fileContents = Jitterbit.ReadFile("<TAG>Sources/Customer CSV FTP</TAG>", "test.txt");
Jitterbit.SetVar
Declaração
Jitterbit.SetVar(string jitterbitVariableName, string value)
Sintaxe
Jitterbit.SetVar(<jitterbitVariableName>, <value>)
Parâmetros Obrigatórios
jitterbitVariableName
: O nome de uma variável Jitterbitvalue
: Um valor a ser atribuído à variável
Descrição
Define o valor de uma variável Jitterbit (uma variável global predefinida que é incorporada ao agente e começa com jitterbit.
). As variáveis disponíveis podem ser vistas no Design Studio e estão documentadas em Variáveis Jitterbit.
Aviso
Também é possível, mas não recomendado, usar o Jitterbit.SetVar
função para definir o valor de uma variável global definida pelo usuário.
A Jitterbit.SetVar
a função foi projetada para permitir o uso de variáveis que contêm pontos dentro do nome da variável. No entanto, usar pontos em um nome de variável global definido pelo usuário não é recomendado. Como o valor será convertido em uma string quando a variável for definida, essas funções não podem ser usadas com tipos de dados complexos, como matrizes, dicionários ou objetos JSON. Em vez disso, é recomendável que você crie variáveis globais sem pontos e, em vez disso, use sublinhados no lugar de pontos e use o cifrão padrão $
sintaxe conforme descrito em Variáveis globais.
Exemplos
// Sets a Jitterbit variable
Jitterbit.SetVar("$jitterbit.scripting.db.max_rows", 1000);
Jitterbit.WriteFile
Declaração
void Jitterbit.WriteFile(string targetId, type fileContents[, string filename])
Sintaxe
Jitterbit.WriteFile(<targetId>, <fileContents>[, <filename>])
Parâmetros Obrigatórios
targetId
: Alvo do tipo de arquivo no projeto atual
Parâmetros Opcionais
fileContents
: Dados a serem gravados no arquivofilename
: Nome do arquivo para substituir a definição de destino
Descrição
Escreve o fileContents
para o tipo de arquivo de destino especificado por targetId
. Se fileContents
é do tipo binário, os dados binários são gravados no arquivo. Em todos os outros casos, uma representação de string dos dados é gravada. O arquivo é automaticamente liberado e fechado pela função.
O destino do tipo de arquivo usado nesta chamada de função deve ser definido como um destino no projeto atual.
As variáveis disponíveis podem ser vistas no Jitterbit Studio e estão documentadas em Variáveis Jitterbit.
O terceiro parâmetro, filename
, é opcional e pode ser usado para substituir o nome do arquivo usado no destino. Alternativamente, uma variável global pode ser usada para substituir o nome do arquivo na definição de destino. Variáveis globais são referenciadas como [de_name]
na definição de destino.
Este método também pode ser usado para escrever/postar dados em um destino HTTP. Nesse caso, $jitterbit.target.http.*
as variáveis serão preenchidas.
A partir do Harmony versão 8.20, se o WriteFile
função falha, a operação não falha. Um script será abortado, um aviso será adicionado ao log da operação e a operação continuará.
Exemplos
// Writes the value of $contents to the file defined by a target
Jitterbit.WriteFile("<TAG>Targets/FTP Target</TAG>", $contents);
// Use the filename "test.txt" instead of what is defined in the target
Jitterbit.WriteFile("<TAG>Targets/FTP Target</TAG>", $contents, "test.txt");
SetScriptOutput
Declaração
void SetScriptOutput(string data)
Sintaxe
SetScriptOutput(<data>)
Parâmetros Obrigatórios
data
: Dados a serem retornados pelo script
Descrição
Define o valor retornado por um script.
O valor de retorno de um script pode ser acessado como o valor de retorno do RunScript
função.
Exemplos
// In the calling Jitterbit Script script:
$result = RunScript("<TAG>Scripts/CalculateSomething</TAG>", value_to_be_calculated);
// In the Jitterbit JavaScript script "CalculateSomething":
var calculated_value = ...;
...
SetScriptOutput(calculated_value);
SetScriptResult
Declaração
void SetScriptResult(string data)
Sintaxe
SetScriptResult(<data>)
Parâmetros Obrigatórios
data
: Dados a serem retornados pelo script
Descrição
Um alias para o SetScriptOutput
função. Veja SetScriptOutput
para detalhes.
WriteToOperationLog
Declaração
string WriteToOperationLog(string message)
Sintaxe
WriteToOperationLog(<message>)
Parâmetros Obrigatórios
message
: Uma mensagem de string
Descrição
Escreve uma mensagem no Log de Operações.
Exemplos
// Writes a message to the Operation Log
WriteToOperationLog("The source field 'Price' has an invalid value.");
funções Comuns do JavaScript
Estas funções comuns do JavaScript — parte do ECMA-262 v5.1—são suportados em JavaScripts Jitterbit.
Propriedade comum | Descrição |
---|---|
Array | Veja as propriedades e funções do array JavaScript |
Date | Veja as propriedades e funções de data do JavaScript |
decodeURI() | Decodifica um URI |
decodeURIComponent() | Decodifica um componente URI |
encodeURI() | Codifica um URI |
encodeURIComponent() | Codifica um componente URI |
eval() | Avalia uma string e a executa como se fosse um código JavaScript |
isFinite() | Testa se um valor é um número finito e legal |
isNaN() | Testa se um valor é um número ilegal |
JSON.parse() | Analisa uma string JSON e retorna um objeto JavaScript |
JSON.stringify() | Converte um objeto JavaScript em uma string JSON |
Math | Veja as propriedades e funções matemáticas do JavaScript |
Number() | Converte o valor de um objeto em um número |
parseFloat() | Analisa uma string e retorna um número de ponto flutuante |
parseInt() | Analisa uma string e retorna um inteiro |
String | Veja as propriedades e funções de string JavaScript |