Ir para o conteúdo

Tutorial do Conector Cenário 2: Buscar Arquivo

Obtendo um Arquivo de Texto do Dropbox e Gravando-o em um Servidor FTP

Este cenário demonstra outro uso da atividade “Dropbox Fetch File” criada em Cenário 1: buscar arquivo. Neste exemplo, um arquivo de texto é obtido do Dropbox e o conteúdo de esse arquivo de texto são acessados e descriptografados.

Esses conteúdos são então gravados em um servidor FTP. Ao contrário do Cenário 1, o arquivo resultante é um arquivo de texto que contém apenas o conteúdo do arquivo recebido do Dropbox, sem os metadados.

Para completar este cenário, você precisará de um arquivo de texto na pasta do seu aplicativo Dropbox. Um arquivo de amostra

customers.csv é fornecido no assets/sample-data directory de os arquivos de origem do conector do Dropbox para essa finalidade.

Aqui está a operação concluída:

1. Copie o Arquivo de Amostra para o Dropbox

Copie o arquivo de amostra (customers.csv) de assets/sample-data directory de o conector do Dropbox à sua conta do Dropbox.

2. Adicionar uma Atividade de Busca de Arquivo do Dropbox a uma Operação

Adicione uma atividade de busca de arquivo do Dropbox a uma nova operação.

Como no cenário 1, você precisará de uma atividade de busca de arquivo do Dropbox. Você pode reutilizar a atividade “Dropbox Fetch File” de o primeiro cenário ou crie um novo.

Para reutilizar a atividade do primeiro cenário, clique no botão guia Componentes do aba do projeto. De lá, você pode arrastar a atividade existente do Dropbox para uma nova operação.

3. Adicione uma Transformação à Operação

Adicione uma transformação após a atividade “Dropbox Fetch File”.

Edite a transformação, mas ao contrário do Cenário 1, crie um novo esquema plano (Define Schema > Create Flat) com dois campos de string: a name campo e um content campo:

Uma vez criado, você pode usar o link Automap Exact Matches para mapear os campos de origem para os campos de destino.

4. Edite os Mapeamentos de Campo de Destino

Edite o script em cada campo de destino para gravar o nome e o conteúdo nas variáveis globais e, em seguida, relate o valores de variáveis no log de operação.

Para o name campo, digite este script:

$dropboxName = fetchFileResponse$name$;
WriteToOperationLog("Fetched from Dropbox: " + $dropboxName);
$dropboxName;

Para o content campo, digite este script:

$dropboxContent = String(Base64Decode(fetchFileResponse$content$));
WriteToOperationLog("Decoded Dropbox file content: "
  + Length($dropboxContent) + " characters");
$dropboxContent;

Quando os scripts são exibidos, eles devem ser semelhantes a este:

O name script de campo pega o nome da resposta “Dropbox Fetch File”, atribui-o a um variável, grava uma mensagem no log de operação e, em seguida, define o nome como o valor do campo.

O content script de campo pega o conteúdo da resposta “Dropbox Fetch File”, decodifica-o de base-64, atribui-o a uma variável global, grava uma mensagem no log de operação e, em seguida, define o conteúdo como o valor de o campo.

Essas variáveis agora estão disponíveis para serem usadas para gravar no servidor FTP.

Quando terminar, retorne ao workflow.

5. Adicione um Script à Operação

Adicione um script (o script “Vars to FTP Write” conforme mostrado na operação concluída) como uma etapa de operação após a transformação. Ele faz referência à atividade “FTP Write” de Cenário 1: buscar arquivo, como mostrado abaixo.

Digite como o conteúdo do script (na linguagem Jitterbit Script ):

// Script Vars to FTP Write

WriteToOperationLog("Received Dropbox file: " + $dropboxName + " "
  + Length($dropboxContent) + " characters");
WriteFile("<TAG>activity:ftp/FTP/ftp_write/Write</TAG>",
  $dropboxContent, $dropboxName);
FlushFile("<TAG>activity:ftp/FTP/ftp_write/Write</TAG>");

WriteToOperationLog("Wrote Dropbox file: " + $dropboxName);

Observação

O nome FTP usado no fragmento de código acima deve corresponder ao nome da conexão FTP e Write deve combinar o nome da atividade FTP Write usada em Cenário 1: Buscar Arquivo para reutilizá-lo.

Feche o script para retornar ao workflow.

6. Execute a Operação

Implante e execute a operação. Se for bem-sucedido, você verá um arquivo criado no servidor FTP com o mesmo nome e conteúdo como o do arquivo obtido do Dropbox. As mensagens apropriadas serão gravadas no log da operação: