XLSX
34 min
objetivo o conector xlsx permite ler e transformar arquivos xlsx em json diretamente em fluxos da fluid não requer autenticação nem conexão é útil para manipular planilhas recebidas por ftp, sftp, apis ou arquivos base64 não há documentação externa vinculada, pois o processamento é feito internamente pela fluid criando um fluxo acesse o ambiente de fluxos na fluid adicione um novo passo e selecione o conector xlsx escolha uma das operações disponíveis criando conexão este conector não requer conexão configurando fluxo o conector possui duas operações principais para leitura de arquivos xlsx recursos e operações recurso xlsx operação converter xlsx para json de origem ftp/sftp descrição selecione esta operação para transformar um arquivo xlsx já carregado na memória (via ftp/sftp ou outro passo anterior) em um objeto json campos requeridos file name (string) nome do arquivo xlsx ex financeiro xlsx campos opcionais header (boolean) informe se sua planilha possui cabeçalho sheet name (string) nome da aba a ser convertida operação converter xlsx em base64 para json descrição transforme diretamente um conteúdo xlsx codificado em base64 para json campos requeridos base64 (string) conteúdo base64 do arquivo xlsx campos opcionais header (boolean) informe se sua planilha possui cabeçalho sheet name (string) nome da aba a ser convertida operação createfile xlsx descrição a operação criar arquivo xlsx do conector xlsx permite criar um arquivo excel ( xlsx) a partir de dados json e retorna o arquivo gerado em formato base64 esta operação é útil para gerar relatórios, planilhas e outros documentos estruturados a partir de dados dinâmicos parâmetros de entrada a operação criar arquivo xlsx requer os seguintes parâmetros campos obrigatórios campo tipo descrição nome do arquivo string nome do arquivo xlsx a ser criado template string dados json que serão convertidos para xlsx campos opcionais campo tipo descrição nome da página string nome da página (padrão "sheet1") exemplo de json de entrada criando xlsx com dados de objetos (recomendado) \[ {"nome" "joão", "idade" 30, "salario" 5000}, {"nome" "maria", "idade" 25, "salario" 4500} ] criando xlsx com dados de array simples \[ \["nome", "idade", "salário"], \["joão", 30, 5000], \["maria", 25, 4500] ] exemplo de json de saída resposta de sucesso { "success" true, "file name" "relatorio vendas xlsx", "base64" "uesdbbqacagiakxrvvkaaaaaaaaaaaaaaaabaaaaegwvd29ya2jvb2sueg1spjtps8mwfmfv ", "message" "xlsx file created successfully!" } xlsx — leitura paginada descrição a operação leitura paginada ( readpage ) do conector xlsx permite converter um arquivo xlsx em json de forma paginada, ou seja, lendo apenas um intervalo específico de linhas da planilha isso é especialmente útil para processar arquivos grandes de forma segmentada, evitando sobrecarga de memória e permitindo o tratamento dos dados em lotes conector base xlsx\@v1 operação readpage parâmetros parâmetros gerais parâmetro tipo obrigatório descrição operation string sim deve ser readpage sheet name string não nome da página (aba) da planilha que será convertida caso não informado, será feita a conversão da primeira página header boolean não informe se sua planilha possui cabeçalho quando true , a primeira linha será tratada como cabeçalho start row string não a partir de qual linha a leitura deve começar (ex 1 ) end row string não em qual linha a leitura deve parar deixe em branco ou 0 para ler até o fim do arquivo entrada xlsx a operação readpage suporta dois formatos de entrada para o arquivo xlsx você deve escolher um deles opção 1 — base64 ( usebase64 ) utilize esta opção quando o conteúdo do arquivo xlsx estiver disponível em formato base64 (por exemplo, recebido via api ou extraído de outra integração) parâmetro tipo obrigatório descrição base64 string sim base64 do arquivo xlsx opção 2 — path ( usepath ) utilize esta opção quando o arquivo xlsx estiver disponível em cache, inserido por um passo anterior do fluxo (ex ftp, sftp, etc ) parâmetro tipo obrigatório file name string sim nome do arquivo com extensão exemplo financeiro xlsx nota arquivo inserido em cache por um passo anterior exemplos exemplo 1 — leitura paginada com base64 neste exemplo, o arquivo é fornecido em base64 e a leitura é feita das linhas 1 a 100, com tratamento de cabeçalho habilitado { "connector base" "xlsx\@v1", "operation" "readpage", "sheet name" "planilha1", "header" true, "base64" "{{ body arquivo base64}}", "start row" "1", "end row" "100" } exemplo 2 — leitura paginada com path (arquivo em cache) neste exemplo, o arquivo foi inserido em cache por um passo anterior (ex download via ftp) e a leitura é feita das linhas 50 a 150, sem tratamento de cabeçalho { "connector base" "xlsx\@v1", "operation" "readpage", "sheet name" "", "header" false, "file name" "financeiro xlsx", "start row" "50", "end row" "150" } exemplo 3 — leitura paginada até o final do arquivo quando o parâmetro end row é deixado em branco ou com valor 0 , a leitura será feita a partir da start row até a última linha da planilha { "connector base" "xlsx\@v1", "operation" "readpage", "sheet name" "", "header" true, "file name" "relatorio xlsx", "start row" "200", "end row" "0" } observações os valores de start row e end row são do tipo string , mas devem conter valores numéricos quando header é true , a primeira linha da planilha será utilizada como chave nos objetos json de saída caso contrário, os dados serão retornados em formato de array se sheet name não for informado, a conversão será realizada na primeira página da planilha esta operação é ideal para cenários de processamento em lotes , onde o volume de dados do arquivo é grande e precisa ser dividido em múltiplas execuções formatos de dados suportados 1\ array de objetos (recomendado) quando os dados são um array de objetos, as chaves do primeiro objeto são usadas como cabeçalhos da planilha entrada \[ {"nome" "joão", "idade" 30, "salario" 5000}, {"nome" "maria", "idade" 25, "salario" 4500} ] resultado na planilha nome idade salario joão 30 5000 maria 25 4500 2\ array de arrays para dados tabulares simples onde você controla completamente a estrutura entrada \[ \["nome", "idade", "salário"], \["joão", 30, 5000], \["maria", 25, 4500] ] resultado na planilha nome idade salário joão 30 5000 maria 25 4500 3\ objeto único um objeto único será convertido em uma linha com suas chaves como cabeçalhos entrada {"produto" "notebook", "preco" 2500, "estoque" 15} resultado na planilha produto preco estoque notebook 2500 15 na prática neste tópico iremos criar um fluxo de conversão de um xlsx em json via tráfego em base64 (muito comum o tráfego desses tipos de arquivos via api's) passo 'convert' assim ficará a parametrização do nosso primeiro e único passo na aba propriedades informamos o nome do passo disparo do fluxo com o passo configurado basta disparar o fluxo sem a necessidade de informar um payload de entrada após o disparo, o resultado do fluxo aparecerá em realtime no canvas ao clicar em detalhes, temos a planilha no formato json convertida pelo conector xlsx observações adicionais o conteúdo convertido retorna um array de objetos json, onde cada linha da planilha representa um item em caso de erro na leitura (arquivo inválido, base64 malformado, aba inexistente), o passo falhará e poderá ser tratado com blocos de erro padrão conclusão o conector xlsx é uma solução rápida e sem autenticação para transformar planilhas em dados estruturados dentro dos fluxos da fluid ideal para pipelines de integração que envolvem dados tabulares