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: