File Writer
Descubra mais sobre o componente File Writer e saiba como utilizá-lo na Digibee Integration Platform.
O File Writer permite que informações sejam escritas em um arquivo.
Parâmetros
Dê uma olhada nos parâmetros de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB)
.
Parâmetro | Descrição | Valor padrão | Tipo de dado |
---|---|---|---|
File Name | Nome completo ou full file path (ex.: tmp/processed/file.txt) do arquivo que será gerado pelo componente com as informações de entrada. | data.csv | String |
Data | Determina os dados que devem ser escritos no arquivo gerado pelo componente. O campo aceita um array de strings ou uma string simples - caso seja um array, cada um dos seus itens será gravado em uma nova linha; mas se o conteúdo for um objeto (e não uma string), então a propriedade Coalesce precisa ser ativada para evitar a ocorrência de um erro. | {{ message.data }} | String |
Policy For When File Already Exists | Parâmetro no qual é configurado o comportamento a ser seguido caso um arquivo com o mesmo nome já exista na atual execução. Opções: Append (os dados são adicionados ao arquivo existente), Override (o arquivo existente é sobreposto) e Fail (o fluxo é interrompido por um erro). | Append | String |
End of Line Policy | Determina a política de uso de caracteres de fim de linha. Opções: Windows (2 caracteres são utilizados para final de linha - CR + LF), Unix (somente 1 caractere é utilizado - LF) e None (nenhum caractere se aplica). | Windows | String |
Charset | Determina o código de caracteres que será utilizado para a criação do arquivo. | UTF-8 | String |
Binary File | Se a entrada de dados para o componente (determinado no parâmetro Data) for uma string do tipo base64 e esta opção estiver ativada, então o texto será convertido e gravado no arquivo. | False | Booleano |
Coalesce | Se a opção estiver ativada e um valor da mensagem de entrada for correspondente à algum objeto/array, os dados informados serão aceitos pelo componente e o arquivo será gravado com sucesso; do contrário, ao receber um valor como objeto/array, será apresentado um erro como resultado e será mostrado "false" para a propriedade "success". | False | Booleano |
Fail On Error | Se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success". | False | Booleano |
Manipulação de arquivos no pipeline
O pipeline possui uma área temporária e local para a manipulação de arquivos, que é separada e validada somente durante a execução do fluxo.
Dessa forma, você deve entender o acesso aos arquivos como se fosse feito em um sistema de arquivos virtual. Os nomes de arquivo podem conter qualquer caractere válido e extensões de arquivo, os quais também podem ter um diretório sempre relativo.
Por exemplo: data.csv ou processamento/data.csv.
Qualquer tentativa de acesso a outros diretórios absolutos será bloqueada durante a execução do pipeline.
Fluxo de mensagens
Entrada
O componente aceita qualquer mensagem de entrada, podendo utilizá-la por meio de Double Braces.
Saída
O componente retorna um JSON contendo o nome do arquivo criado e a propriedade success
contendo o valor true
.
Sem erro
Com erro
File Writer em Ação
Abaixo será demonstrado como o componente se comporta em determinada situação e a sua respectiva configuração.
Criar arquivo txt contendo uma string enviada por Double Braces
Para esse exemplo, será utilizada uma entrada de dados estática e no final o arquivo será lido com o componente File Reader.
O componente File Writer será configurado da seguinte forma:
File Name: booklist.txt
Data: {{ message.data }}
Policy For When File Already Exists: Append
End of Line Policy: Windows
Charset: UTF-8
Binary File: desativado
Coalesce: desativado
Fail on Error: desativado
Entrada
Saída
fileName: nome do arquivo que foi escrito.
success: se “true”, a operação foi executada com sucesso; se “false”, a propriedade Fail On Error foi ativada.
Leitura do arquivo criado
Criar arquivo txt contendo um dado em base64 que será convertido ao gravar arquivo
Para esse exemplo, será utilizada uma entrada de dados estática e, no final, o arquivo será lido com o componente File Reader.
O componente File Writer será configurado da seguinte forma:
File Name: booklist.txt
Data: {{ message.data }}
Policy For When File Already Exists: Append
End of Line Policy: Windows
Charset: UTF-8
Binary File: ativado
Coalesce: desativado
Fail on Error: desativado
Entrada
Saída
Leitura do arquivo criado
Criar arquivo txt contendo uma entrada de dado feita através de um JSON multinível
Para esse exemplo, será utilizada uma entrada de dados estática e, no final, o arquivo será lido com o componente File Reader.
O componente File Writer será configurado da seguinte forma:
File Name: product.txt
Data: {{ message.data }}
Policy For When File Already Exists: Append
End of Line Policy: Windows
Charset: UTF-8
Binary File: desativado
Coalesce: ativado
Fail on Error: desativado
Entrada
Saída
Leitura do arquivo criado
Dessa forma, o JSON com diversos níveis informado ao componente será inserido como uma única linha no arquivo TXT.
Arquivo já existe na execução com a política de falha
Para esse exemplo, dois componentes File Writer serão configurados, um seguido do outro com as opções.
O componente File Writer será configurado da seguinte forma:
File Name: booklist.txt
Data: {{ message.data }}
Policy For When File Already Exists: Fail
End of Line Policy: Windows
Charset: UTF-8
Binary File: desativado
Coalesce: desativado
Fail on Error: desativado
Ao final, o canvas terá o seguinte formato:
Entrada
Saída
success: “false” quando a operação falha.
message: mensagem sobre o erro.
exception: informação sobre o tipo de erro ocorrido.
Atualizado