Pular para o conteúdo

Escreve uma tabela de projeto PlaidCloud numa conta de documentos como um ficheiro CSV (valores separados por vírgulas). É o formato de exportação mais comum — suportado por praticamente todos os sistemas a jusante, ferramentas de folhas de cálculo e plataformas de BI.

Configurável: delimitador (vírgula, tabulação, barra vertical, personalizado), comportamento das aspas, linha de cabeçalho e codificação.

Seletor de ficheiro de exportação

Seletor de ficheiro de exportação

O seletor de ficheiro nesta transformação permite escolher um destino para guardar o resultado exportado num documento do PlaidCloud.

Escolhe-se um diretório e indica-se um nome de ficheiro para o ficheiro de destino.

Tabela de origem

Opção dinâmica

A opção dinâmica permite especificar uma tabela através de texto, incluindo variáveis. É útil em fluxos de trabalho orientados por variáveis, em que as referências a tabelas e vistas são relativas às variáveis especificadas.

Um exemplo que utiliza a variável current_month para apontar dinamicamente para a tabela de origem:

legal_entity/inputs/{current_month}/ledger_values

Opção estática

Quando se pretende uma tabela específica como origem da exportação, deixe a caixa Dynamic desassinalada e selecione a tabela de origem.

O Explorador de tabelas está sempre disponível com qualquer seleção de tabela. Clique no botão do Explorador de tabelas à direita da seleção da tabela e abre-se uma janela do Explorador de tabelas.

Selecionar uma conta de documentos

Escolha uma conta de documentos do PlaidCloud a que tenha acesso. Isto permite-lhe selecionar um diretório na seleção seguinte.

Dentro de um projeto, a lista oferece também Project Default no topo — um substituto da conta que o projeto tem atualmente definida como predefinida. Um novo passo pré-seleciona Project Default quando o projeto tem uma; um passo existente mantém a conta com que já tinha sido guardado até a alterar. Um passo deixado em Project Default é executado na conta que for a predefinição do projeto nesse momento — se não houver nenhuma definida, a execução falha e indica o projeto, em vez de recorrer a outra conta.

Caminho do diretório de destino

Selecione o ícone Procurar à direita do Caminho do diretório de destino e navegue até à localização onde pretende guardar o ficheiro.

Nome do ficheiro de destino

Indique o nome com que o ficheiro exportado deve ser guardado.

Todos os ficheiros exportados são não comprimidos, mas estão disponíveis as seguintes opções de compressão:

  • Sem compressão
  • Zip
  • GZip
  • BZip2

Formato dos dados da exportação CSV

A transformação Exportar CSV é utilizada para exportar tabelas de dados para ficheiros de texto delimitado guardados no PlaidCloud Document. Isto inclui, entre outros, os seguintes tipos de delimitador:

  • Excel CSV (separado por vírgulas)

  • Excel TSV (separado por tabulações)

  • Separador definido pelo utilizador –>

    • vírgula (,)
    • barra vertical (|)
    • ponto e vírgula (;)
    • tabulação
    • espaço ( )
    • outro/personalizado (til, hífen, etc.)

Para especificar um delimitador personalizado, selecione Separador definido pelo utilizador –> e depois Outro –>, e escreva o delimitador personalizado na caixa de texto.

A secção Caracteres especiais permite especificar como tratar dados com aspas e caracteres de escape. Escolha entre as seguintes definições:

  • Caracteres especiais (QUOTE_MINIMAL): coloca entre aspas os campos com caracteres especiais (tudo o que confundiria um analisador configurado com o mesmo dialeto e as mesmas opções). Esta é a definição predefinida.
  • Todos (QUOTE_ALL): coloca tudo entre aspas, independentemente do tipo.
  • Não numéricos (QUOTE_NONNUMERIC): coloca entre aspas todos os campos que não sejam números inteiros ou de vírgula flutuante. Quando utilizado com o leitor, os campos de entrada sem aspas são convertidos em números de vírgula flutuante.
  • Nenhum (QUOTE_NONE): não coloca nada entre aspas na saída. Os caracteres de aspas são incluídos na saída com o carácter de escape indicado pelo utilizador. Tenha em conta que só pode ser indicado um único carácter de escape.

Por predefinição, uma aspa dentro de um campo entre aspas é escrita duplicada (""). Ative escape_quotes para a escrever com o carácter de escape, como o Spark faz: com \ como carácter de escape, o campo say "hi" é escrito "say \"hi\"". A definição está desativada por predefinição, pelo que as exportações existentes não se alteram.

Por predefinição, um valor que contém um carácter de aspas é colocado entre aspas só por esse motivo. Desmarque Colocar entre aspas os valores que contêm o caráter de aspas para escrever esse valor sem aspas à volta, como o Spark faz com escapeQuotes desativado; um valor que contenha o delimitador ou uma quebra de linha continua a ser colocado entre aspas. A caixa está selecionada por predefinição. Desmarcada, o ficheiro é escrito pelo PlaidCloud e não pelo armazém.

Deixe Carácter de aspas vazio para escrever cada valor exatamente como está: nada é colocado entre aspas e nada tem escape. Um valor que contenha o delimitador ou uma quebra de linha é então lido como mais campos, pelo que deve escolher um delimitador que os seus dados não contenham.

Se esta caixa estiver selecionada, os cabeçalhos da tabela são exportados para a primeira linha. Se não estiver, o ficheiro exportado não terá cabeçalhos.

Se esta caixa estiver selecionada, os cabeçalhos do ficheiro exportado contêm o tipo de dados da coluna.

Por último, a caixa Utilizar fins de linha compatíveis com o Windows está selecionada por predefinição para garantir a compatibilidade com sistemas Windows. Aconselha-se a deixar esta definição ativada, a menos que trabalhe num ambiente exclusivamente unix.

Em Mais opções de CSV, Um ficheiro que já existe (if_exists) decide o que acontece quando o ficheiro já lá está: replace (predefinição) escreve um novo ficheiro, append acrescenta as linhas ao fim do ficheiro existente sem linha de cabeçalho e fail interrompe o passo, sem escrever nada. Um acréscimo transfere o ficheiro, junta as linhas e volta a carregá-lo, pelo que, quando duas execuções acrescentam ao mesmo ficheiro em simultâneo, prevalece a última a terminar. Com append, selecione Voltar a escrever o cabeçalho abaixo das linhas existentes (header_on_append) para escrever novamente a linha de cabeçalho abaixo das linhas já existentes.

Mais opções de CSV contém também estes campos:

  • Ordenar linhas por (sort_columns) — ordena as linhas escritas por estas colunas de origem, começando pela primeira chave, cada uma com uma definição de Coluna, Ascendente e Nulos. Uma coluna de chave não tem de ser escrita. Nulos assume por predefinição primeiro na ordem ascendente e último na descendente. Não é utilizado com Resumir ou Distinto.
  • Fim de linha (line_ending) — o fim de linha de todas as linhas, \n, \r\n ou \r, em vez de Utilizar fins de linha compatíveis com o Windows.
  • Colocar entre aspas (quote_mode) — que valores são colocados entre aspas: Nunca, Sempre, Todos os valores exceto números e booleanos ou Um valor que contém o delimitador. Por predefinição, um valor é colocado entre aspas quando é necessário.
  • Aspa de fecho (quote_end) — a aspa de fecho, quando difere da aspa de abertura.
  • Aspa de fecho dentro de um valor (quote_replacement) — escrita no lugar de uma aspa de fecho dentro de um valor entre aspas. Se ficar vazio, a aspa é duplicada.
  • Delimitador dentro de um valor (delimiter_replacement) — com Colocar entre aspas definido como Nunca, escrito no lugar do delimitador dentro de um valor.
  • Iniciar o ficheiro com uma marca de ordem de bytes (write_bom) — inicia o ficheiro com uma marca de ordem de bytes.
  • Separador decimal (decimal_separator) — o carácter escrito para a vírgula decimal de um número.
  • Linhas antes do cabeçalho (comment_lines) — uma matriz JSON de linhas escritas tal como estão antes do cabeçalho.
  • Escrever números decimais como o Java (scientific_numbers) — escreve um número decimal em notação científica a partir de 10 milhões e abaixo de 0,001, como 1.0E10.
  • Escrever cada nome de ficheiro tal como indicado, sem acrescentar .csv ou .tsv (keep_file_extension) — escreve cada nome de ficheiro exatamente como indicado.
  • Com gzip, guardar o ficheiro com o nome indicado, sem acrescentar .gz (exact_file_name) — com compressão gzip, guarda o ficheiro com o nome indicado.

Configuração do Data Mapper

Table Data Mapper

O Data Mapper serve para mapear colunas dos dados de origem para a tabela de dados de destino.

Inspeção e preenchimento do mapeador

Utilizar o botão de menu Inspecionar origem oferece formas adicionais de mapear colunas da origem para o destino:

  • Preencher ambas as tabelas de mapeamento: propaga todos os valores da tabela de dados de origem para a tabela de dados de destino. É o comportamento predefinido.
  • Preencher apenas a tabela de mapeamento de origem: mapeia apenas todos os valores da tabela de dados de origem. É útil ao modificar um fluxo de trabalho existente cuja estrutura de colunas de origem mudou.
  • Preencher apenas a tabela de mapeamento de destino: propaga todos os valores apenas para a tabela de dados de destino.

Se as opções de colunas de origem e de destino não forem suficientes, podem adicionar-se outras colunas à tabela de dados de destino de várias formas:

  • Propagar tudo insere todas as colunas de origem na tabela de dados de destino, quer já existam ou não.
  • Propagar selecionadas insere apenas as colunas de origem selecionadas.
  • Clique com o botão direito do rato no lado do destino e selecione Inserir linha para inserir uma linha imediatamente acima da linha atualmente selecionada.
  • Clique com o botão direito do rato no lado do destino e selecione Acrescentar linha para inserir uma linha no fim (extremo direito) da tabela de dados de destino.

Eliminar colunas

Para eliminar colunas da tabela de dados de destino, selecione as colunas pretendidas, clique com o botão direito do rato e selecione Eliminar.

Colunas de origem que já não constam da lista

Uma linha de destino pode indicar uma Coluna de origem que a tabela de dados de origem já não lista, por exemplo depois de a origem ter sido inspecionada novamente. O passo nunca remove essa linha por si. Em vez disso, o nome da coluna é apresentado a vermelho, atrás de um sinal de aviso ⚠, e, ao passar o cursor por cima, é indicado que a coluna não consta das colunas de origem. Num passo com várias tabelas, como uma união, cada tabela é verificada em relação às suas próprias colunas de origem.

Uma linha com uma Constante, uma Expressão ou um resumo Contagem (incluindo nulos) nunca é sinalizada, porque o passo não lê a respetiva coluna de origem. Nada é sinalizado enquanto a tabela de dados de origem não listar colunas, por exemplo antes de a origem ser inspecionada pela primeira vez.

Ao guardar um passo que ainda tem linhas sinalizadas, uma caixa de diálogo Colunas obsoletas encontradas lista-as sob o separador ou a tabela em que se encontram e oferece três opções:

  • Remover todas e guardar: remove as linhas sinalizadas e depois guarda.
  • Guardar mesmo assim: guarda o passo tal como está.
  • Cancelar: volta ao passo sem guardar.

Para manter uma linha e eliminar o respetivo aviso, adicione a coluna de volta à tabela de dados de origem ou escolha uma coluna que a tabela de dados de origem liste.

Tipo de dados da coluna

Cada coluna de destino tem um Tipo. Uma coluna propagada da origem mantém o tipo da coluna de origem; uma linha que adicione manualmente começa como Texto, e define o Tipo para indicar o que a coluna deve realmente ser. Uma coluna que pretenda somar ou ordenar precisa do respetivo tipo numérico ou de data, porque o texto é ordenado e somado como texto.

Um passo guardado com uma coluna sem qualquer tipo é, mesmo assim, executado. O tipo é determinado quando o passo é iniciado, a partir da coluna de origem que essa coluna lê. Quando não há nada de onde o ler, é tratado como texto: as colunas de um passo Extrair SQL vêm da consulta que escreveu e não de uma origem mapeada e, quando várias origens têm o mesmo nome de coluna com tipos discordantes, é utilizado texto em vez de adivinhar um deles, porque um palpite errado produz uma conversão que o armazém pode rejeitar, e tudo se converte em texto.

Definir o Tipo manualmente continua a ser a forma de indicar o que uma coluna deve ser. Deixá-lo por definir significa aceitar o que a coluna de origem for.

Alterar a ordem das colunas

Para reordenar as colunas na tabela de dados de destino, selecione as colunas pretendidas. Pode utilizar:

  • Setas de movimento em massa: selecione a opção de movimento pretendida nas setas no canto superior direito
  • Menu de contexto: clique com o botão direito do rato e selecione Mover para o início, Mover para cima, Mover para baixo ou Mover para o fim.

Reduzir o resultado apenas a registos distintos

Para devolver apenas opções distintas, selecione a opção de menu Distinto. Isto apresenta um conjunto de caixas de verificação para cada coluna da origem. Basta marcar a caixa junto da coluna correspondente para devolver apenas resultados distintos.

Consoante a situação, pode ser preferível considerar a utilização da sumarização.

O processo de distinção mantém o primeiro registo único encontrado e descarta os restantes. Pode querer aplicar uma ordenação aos dados, se for importante para a consistência entre execuções.

Agregação e agrupamento

Para agregar resultados, selecione a opção de menu Resumir. Isto apresenta um conjunto de caixas de seleção para cada coluna da tabela de dados de destino. Escolha um método de sumarização adequado para cada coluna.

Quando Inspecionar origem preenche as colunas, uma coluna numérica começa como Agrupar por em vez de Soma se o nome se assemelhar a um identificador, como id, customer_id, Order No ou CustomerKey, se a respetiva tabela a definir como chave ou se a junção a utilizar como chave.

  • Agrupar por
  • Soma
  • Mínimo
  • Máximo
  • Primeiro
  • Último
  • Contagem
  • Contagem (incluindo nulos)
  • Média
  • Desvio padrão
  • Desvio padrão da amostra
  • Desvio padrão da população
  • Variância
  • Variância da amostra
  • Variância da população
  • Avançado sem agrupar por

Para uma utilização avançada do Data Mapper, como expressões, limpeza e constantes, consulte Utilização avançada do Data Mapper

Table Data Filters

Para permitir a máxima flexibilidade, existem filtros de dados disponíveis nos dados de origem e nos dados de destino. Em conjuntos de dados maiores, pode ser especialmente vantajoso filtrar linhas na origem, para que as restantes operações sejam executadas sobre um conjunto de dados mais pequeno.

Selecionar subconjunto de dados

Este tipo de filtro permite filtrar os dados de origem recebidos com base nas condições especificadas.

Aplicar filtro secundário aos dados de resultado

Este tipo de filtro permite aplicar um filtro aos dados de resultado depois de transformados, com base nas condições especificadas. A possibilidade de aplicar um filtro ao resultado transformado permite exclusões com base nos resultados de cálculos complexos, sumarizações ou funções de janela.

Divisão final da tabela de dados (limite)

A capacidade de divisão de linhas permite limitar as linhas do conjunto de resultados com base num intervalo e num ponto de partida.

Sintaxe de filtros

A sintaxe de filtros utiliza o Python SQLAlchemy, que é a mesma sintaxe das outras expressões.

Consulte exemplos e funções de expressão na área Expressões.

Ainda não há exemplos…