Ir para o conteúdo

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 atual
  • sql: O comando SQL a ser executado contra o banco de dados
  • outputVariable: (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 atual
  • sql: 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 Jitterbit
  • value: 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 arquivo
  • filename: 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