JavaScript Jitterbit e funções comuns no Studio
Os JavaScripts do Jitterbit podem acessar—além das funções padrão do JavaScript que fazem parte do ECMA-262 v5.1—essas funções específicas do Jitterbit. Como o ECMA-262 v5.1 é uma versão mais antiga do JavaScript do que a que é comumente disponível em navegadores e outros motores JavaScript, incluímos tabelas das funções comuns e padrão do JavaScript que estão disponíveis nos JavaScripts do Jitterbit.
Importante
Para um desempenho aprimorado, recomendamos usar JavaScript apenas quando um Jitterbit Script equivalente não estiver disponível.
Nota
Um máximo de 50.000 iterações de loop é permitido para cada script JavaScript. Para aumentar o número permitido de iterações por script, consulte Iterações de loop em JavaScript.
Funções do 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: Um caminho de referência em string para uma conexão de Banco de Dados no projeto atualsql: O comando SQL a ser executado contra o banco de dadosoutputVariable: (Segunda forma) Um parâmetro de saída que corresponde 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. Consulte a função DBExecute do Jitterbit Script para mais detalhes.
O banco de dados utilizado nesta chamada de função deve ser definido como uma conexão de Banco de Dados no projeto atual. Para mais informações, consulte as instruções sobre como inserir endpoints em Endpoints em JavaScript.
Jitterbit.DbLookup
Declaração
string Jitterbit.DbLookup(string databaseId, string sql)
Sintaxe
Jitterbit.DbLookup(<databaseId>, <sql>)
Parâmetros obrigatórios
databaseId: Um caminho de referência em string para uma conexão de Banco de Dados no projeto atualsql: O comando SQL a ser executado contra o 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 aos critérios especificados. Consulte a função DBLookup do Jitterbit Script para mais detalhes.
O banco de dados utilizado nesta chamada de função deve ser definido como uma conexão de Banco de Dados no projeto atual. Para mais informações, consulte as instruções sobre como inserir endpoints em Endpoints em JavaScript.
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 pré-definida que está incorporada no agente e começa com jitterbit.). As variáveis disponíveis podem ser vistas no Studio e estão documentadas em Variáveis Jitterbit.
Aviso
Também é possível, mas não recomendado, usar a função Jitterbit.GetVar para recuperar o valor de uma variável global definida pelo usuário.
A função Jitterbit.GetVar foi projetada para permitir o uso de variáveis que contêm pontos dentro do nome da variável. No entanto, não é recomendado usar pontos no nome de uma variável global definida pelo usuário. 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 arrays, dicionários ou objetos JSON. Em vez disso, recomenda-se criar variáveis globais sem pontos e usar sublinhados no lugar de pontos, utilizando a sintaxe padrão do cifrão $, conforme descrito em Variáveis globais.
Examples
// Retrieves the value of the Jitterbit variable "jitterbit.api.request"
var request = Jitterbit.GetVar("$jitterbit.api.request");
Jitterbit.ReadFile
Declaration
string Jitterbit.ReadFile(string sourceId[, string fileFilter])
Syntax
Jitterbit.ReadFile(<sourceId>[, <fileFilter>])
Required parameters
sourceId: Um caminho de referência de string para uma atividade associada a um endpoint do tipo arquivo no projeto atual
Optional parameters
fileFilter: Filtro de arquivo ou nome de arquivo para substituir a configuração da atividade
Description
Lê o conteúdo de um arquivo de uma fonte.
A fonte usada nesta chamada de função deve ser definida como uma atividade associada a um endpoint do tipo arquivo no projeto atual. Isso inclui atividades configuradas de Compartilhamento de Arquivos, FTP, HTTP, Armazenamento Local e Armazenamento Temporário. Para mais informações, consulte as instruções sobre como inserir endpoints em Endpoints em JavaScript.
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á utilizado. Recomenda-se especificar uma fonte que identifique de forma única um único arquivo.
O parâmetro fileFilter é opcional e pode ser usado para substituir o filtro de arquivo utilizado na configuração da atividade. Um nome de arquivo pode ser utilizado. Alternativamente, uma variável global pode ser usada para substituir o filtro de arquivo na configuração da atividade. Variáveis globais são referenciadas como [de_name] na configuração da atividade.
Se a função ReadFile falhar, 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, todas as variáveis Jitterbit $jitterbit.source.http.* serão preenchidas.
Aviso
Esta função não funciona de forma confiável com arquivos que possuem conteúdo binário, pois geralmente lerá apenas uma parte do arquivo. Se o arquivo tiver conteúdo binário, use a função Jitterbit Script Base64EncodeFile em vez disso para ler todo o conteúdo do arquivo.
Exemplos
// Reads the first file retrieved from a source
var fileContents = Jitterbit.ReadFile("<TAG>activity:ftp/FTP Endpoint/ftp_read/FTP Files</TAG>");
// Use the filename "test.txt" instead of what is defined in the source
var fileContents = Jitterbit.ReadFile("<TAG>activity:ftp/FTP Endpoint/ftp_read/FTP Files</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 pré-definida que está embutida no agente e começa com jitterbit.). As variáveis disponíveis podem ser vistas no Studio e estão documentadas em variáveis Jitterbit.
Aviso
Também é possível, mas não recomendado, usar a função Jitterbit.SetVar para definir o valor de uma variável global definida pelo usuário.
A função Jitterbit.SetVar 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 definida 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 arrays, dicionários ou objetos JSON. Em vez disso, recomenda-se criar variáveis globais sem pontos e usar sublinhados no lugar de pontos, utilizando a sintaxe padrão de cifrão $ conforme descrito em Variáveis globais.
Examples
// Sets a Jitterbit variable
Jitterbit.SetVar("$jitterbit.scripting.db.max_rows", 1000);
Jitterbit.WriteFile
Declaration
void Jitterbit.WriteFile(string targetId, type fileContents[, string filename])
Syntax
Jitterbit.WriteFile(<targetId>, <fileContents>[, <filename>])
Required parameters
targetId: Um caminho de referência de string para uma atividade associada a um endpoint do tipo arquivo no projeto atual
Optional parameters
fileContents: Dados a serem escritos no arquivofilename: Nome do arquivo para substituir a configuração da atividade
Description
Escreve o fileContents no destino especificado por targetId. Se fileContents for do tipo binário, os dados binários são escritos no arquivo. Em todos os outros casos, uma representação em string dos dados é escrita. O arquivo é automaticamente liberado e fechado pela função.
O destino usado nesta chamada de função deve ser definido como uma atividade associada a um endpoint do tipo arquivo no projeto atual. Isso inclui atividades configuradas de Compartilhamento de Arquivos, FTP, HTTP, Armazenamento Local e Armazenamento Temporário. Para mais informações, consulte as instruções sobre como inserir endpoints em Endpoints em JavaScript.
O terceiro parâmetro, filename, é opcional e pode ser usado para substituir o nome do arquivo utilizado na configuração da atividade. Alternativamente, uma variável global pode ser usada para substituir o nome do arquivo na configuração da atividade. Variáveis globais são referenciadas como [de_name] na configuração da atividade.
Este método também pode ser usado para escrever/enviar dados para um destino HTTP. Nesse caso, as variáveis $jitterbit.target.http.* serão preenchidas.
Se a função WriteFile() falhar, 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>activity:ftp/FTP Endpoint/ftp_write/FTP Files</TAG>", $contents);
// Use the filename "test.txt" instead of what is defined in the target
Jitterbit.WriteFile("<TAG>activity:ftp/FTP Endpoint/ftp_write/FTP Files</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 da função RunScript.
Exemplos
// In the calling Jitterbit Script script:
$result = RunScript("<TAG>script: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 a função SetScriptOutput. Veja SetScriptOutput para detalhes.
WriteToOperationLog
Declaração
string WriteToOperationLog(string message)
Sintaxe
WriteToOperationLog(<message>)
Parâmetros obrigatórios
message: Uma mensagem em formato de string
Descrição
Escreve uma mensagem no log de operações.
Exemplos
// Escreve uma mensagem no log de operações
WriteToOperationLog("O campo de origem 'Preço' tem um valor inválido.");
Funções comuns do JavaScript
Essas funções comuns do JavaScript—parte do ECMA-262 v5.1—são suportadas nos JavaScripts do Jitterbit.
| Propriedade Comum | Descrição |
|---|---|
Array |
Veja as propriedades e funções de array do JavaScript |
Date |
Veja as propriedades e funções de data do JavaScript |
decodeURI |
Decodifica um URI |
decodeURIComponent |
Decodifica um componente de URI |
encodeURI |
Codifica um URI |
encodeURIComponent |
Codifica um componente de URI |
eval |
Avalia uma string e a executa como se fosse 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 do JavaScript |