SnowConvert: Relatório de Elementos

O que é um «elemento»?

O termo «elemento» é usado neste contexto para se referir a um elemento de gramática, ou seja, um elemento de uma gramática que tem um nome, uma sintaxe e uma finalidade em um idioma específico.

Normalmente, esses elementos são destacados e muito importantes na documentação de um idioma.

Esses são alguns exemplos de elementos em linguagem SQL:

  • Qualquer DDL, como CREATE TABLE e CREATE VIEW

  • Conteúdo importante do DML, como PARTITION BY e NOT NULL

  • Qualquer DML, como INSERT e DELETE

  • Algumas expressões importantes, como IN, NOT IN, BETWEEN e LIKE

  • Operadores, incluindo condicionais e operadores aritméticos

  • Algumas partes internas de consultas, como ORDER BY, WHEN, INNER JOIN e TOP.

  • Funções importantes, como AVG e RANK

Essencialmente, qualquer coisa que valha a pena acompanhar para fins de avaliação pode ser considerada um elemento.

Onde posso encontrá-lo?

O relatório de elementos pode ser encontrado em uma pasta chamada «reports», na pasta de saída de sua conversão. O nome do arquivo propriamente dito começa com «Elements» para que possa ser facilmente localizado.

O formato do arquivo é .CSV.

Que informações ele contém?

O relatório de elementos é apresentado em um formato de tabela e contém as seguintes colunas:

ColumnDescription
SessionIDThe session ID of the transformation. This is a unique identifier for the transformation session.
CategoryThe element's corresponding category. These can be DDL, DDL Content, DML, Functions & Expressions, Statement, Query, and so on.
Grammar ElementThe name associated to the element, often the same as found in the official documentation for the language.
File TypeThe type of the file that contains the element. For example: SQL.
Total CountThe total count of that particular element found during the transformation process.
Not Converted Count (Self)The count of that particular element that presented issues severe enough for it to not properly transform. Usually unsupported structures or elements that had a particular transformation error.
Keep in mind that "Self" means that some of the inner contents of the element may or may not be not converted, but if the element itself did not present errors, it will not be counted towards this column.

Resumo

Cada elemento individual é resumido usando um critério específico, que pode incluir várias colunas para formar uma «chave composta». O agrupamento básico é feito usando as colunas Category, Grammar Element e File Type.

Seguindo essa convenção, o mesmo elemento SELECT pode ser resumido de forma diferente, dependendo do tipo de arquivo que o contém, ou dois elementos que compartilham o mesmo elemento gramatical (ou nome) ainda podem ser resumidos de forma independente se sua categoria for diferente.