Welcome to the auto-generated documentation for your dbt project!
Navigation
You can use the Project and Database navigation tabs on the left side of the window to explore the models
in your project.
Project Tab
The Project tab mirrors the directory structure of your dbt project. In this tab, you can see all of the
models defined in your dbt project, as well as models imported from dbt packages.
Database Tab
The Database tab also exposes your models, but in a format that looks more like a database explorer. This view
shows relations (tables and views) grouped into database schemas. Note that ephemeral models are not shown
in this interface, as they do not exist in the database.
Graph Exploration
You can click the blue icon on the bottom-right corner of the page to view the lineage graph of your models.
On model pages, you'll see the immediate parents and children of the model you're exploring. By clicking the Expand
button at the top-right of this lineage pane, you'll be able to see all of the models that are used to build,
or are built from, the model you're exploring.
Once expanded, you'll be able to use the --select and --exclude model selection syntax to filter the
models in the graph. For more information on model selection, check out the dbt docs.
Note that you can also right-click on models to interactively filter and explore the graph.
columns:codigofonte,codigofontecolumns:desc_fonte,desc_fonteShow -1 more
WITH source AS (
SELECT DISTINCT
codigofonte
, UPPER(SUBSTRING(TRIM(REPLACE(
REPLACE(
REPLACE(
fonte,
'(fonte antiga - não utilizar a partir de 2023)', ''
),
'(fonte antiga - não utilizar a partir de 20', ''
),
'(fonte antiga - não utilizar a partir de', ''
)) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(REPLACE(
REPLACE(
REPLACE(
fonte,
'(fonte antiga - não utilizar a partir de 2023)', ''
),
'(fonte antiga - não utilizar a partir de 20', ''
),
'(fonte antiga - não utilizar a partir de', ''
)) FROM 2)) AS desc_fonte
FROM {{ source('despesas', 'despesas_2021') }}
)
SELECT * FROM source
stg_elemento_despesa
model
columns:codigoelementodespesa,codigoelementodespesacolumns:desc_elementodespesa,desc_elementodespesaShow -1 more
with
source as (
select distinct
codigoelementodespesa
, UPPER(SUBSTRING(TRIM(elementodespesa) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(elementodespesa) FROM 2)) AS desc_elementodespesa
from {{ source('despesas', 'despesas_2021') }}
)
select * from source
stg_despesas
model
columns:id,idcolumns:ano,anocolumns:mes,mesShow 29 more
with
source as (
select
id
/* Códigos */
, ano
, SPLIT_PART(data, '/', 2) AS mes
, codigocategoriaeconomica
, codigounidadegestora
, codigogrupodespesa
, codigoelementodespesa
, codigosubtitulo
, codigofonte
, codigoorgao
, codigofuncao
, codigosubfuncao
, codigoprograma
, codigoacao
, codigomodalidade
, codigosubelementodespesa
, tipofavorecido
/* Valores */
, CAST(ROUND(CAST(REPLACE(valorpago, ',', '.') AS numeric), 2) AS numeric) AS valorpago
, UPPER(SUBSTRING(TRIM(tipolicitacao) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(tipolicitacao) FROM 2)) AS tipolicitacao
, REPLACE(historicodocumento, '000000', '') as historicodocumento
, UPPER(SUBSTRING(TRIM(categoriaeconomica) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(categoriaeconomica) FROM 2)) AS categoriaeconomica
, UPPER(SUBSTRING(TRIM(unidadegestora) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(unidadegestora) FROM 2)) AS unidadegestora
, UPPER(SUBSTRING(TRIM(grupodespesa) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(grupodespesa) FROM 2)) AS grupodespesa
, UPPER(SUBSTRING(TRIM(elementodespesa) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(elementodespesa) FROM 2)) AS elementodespesa
, UPPER(SUBSTRING(TRIM(subtitulo) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(subtitulo) FROM 2)) AS subtitulo
, UPPER(SUBSTRING(TRIM(fonte) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(fonte) FROM 2)) AS fonte
, UPPER(SUBSTRING(TRIM(funcao) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(funcao) FROM 2)) AS funcao
, UPPER(SUBSTRING(TRIM(subfuncao) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(subfuncao) FROM 2)) AS subfuncao
, UPPER(SUBSTRING(TRIM(programa) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(programa) FROM 2)) AS programa
, UPPER(SUBSTRING(TRIM(acao) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(acao) FROM 2)) AS acao
, UPPER(SUBSTRING(TRIM(modalidade) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(modalidade) FROM 2)) AS modalidade
, UPPER(SUBSTRING(TRIM(subelementodespesa) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(subelementodespesa) FROM 2)) AS subelementodespesa
--, codigogestaoemitente
--, codigofuncionalprogramatica
--, codigoplanoorcamentario
--, planoorcamentario
--, numeroprocesso
--, codigoconveniorecebido
--, codigoconvenioconcedido
--, embasamento
--, codigoprocesso
--, processo
--, processoassunto
--, valorempenho
--, valorliquidado
--, valorrap
--, cpfcnpjnis
--, cargofuncao
--, favorecido
--, idfavorecido
--, documento
--, documentoempenho
--, descricaoelementodespesa
--, orgao
from {{ source('despesas', 'despesas_2021') }}
WHERE CAST(REPLACE(valorpago, ',', '.') AS numeric) > 0
)
select * from source
stg_categoria_economica
model
columns:codigocategoriaeconomica,codigocategoriaeconomicacolumns:desc_categoriaeconomica,desc_categoriaeconomicaShow -1 more
with
source as (
select distinct
codigocategoriaeconomica
, UPPER(SUBSTRING(TRIM(categoriaeconomica) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(categoriaeconomica) FROM 2)) AS desc_categoriaeconomica
from {{ source('despesas', 'despesas_2021') }}
)
select * from source
stg_acao
model
columns:codigoacao,codigoacaocolumns:desc_acao,desc_acaoShow -1 more
with
source_data as (
select distinct
codigoacao
, UPPER(SUBSTRING(TRIM(acao) FROM 1 FOR 1)) || LOWER(SUBSTRING(TRIM(acao) FROM 2)) AS desc_acao
from {{ source('despesas', 'despesas_2021') }}
)
select * from source_data
fact_despesas_sk
model
columns:id,idcolumns:acao_fk,acao_fkcolumns:categoriaeconomica_fk,categoriaeconomica_fkShow 16 more
WITH
acao as (
select *
from {{ ref('dim_acao') }}
)
, categoria_economica as (
select *
from {{ ref('dim_categoria_economica')}}
)
, elemento_despesa as (
select *
from {{ ref('dim_elemento_despesa')}}
)
, fonte as (
select *
from {{ ref('dim_fonte')}}
)
, funcao as (
select *
from {{ ref('dim_funcao')}}
)
, grupo_despesa as (
SELECT *
from {{ ref('dim_grupo_despesa')}}
)
, modalidade as (
SELECT *
from {{ ref('dim_modalidade')}}
)
, programa as (
select *
from {{ ref('dim_programa')}}
)
, subelemento as (
select *
from {{ ref('dim_subelemento')}}
)
, subfuncao as (
select *
from {{ ref('dim_subfuncao')}}
)
, subtitulo as (
select *
from {{ ref('dim_subtitulo')}}
)
, unidade_gestora as (
select *
from {{ ref('dim_unidade_gestora')}}
),
despesas_with_sk as (
select
despesas.id
, acao.acao_sk as acao_fk -- codigoacao
, categoria_economica.categoriaeconomica_sk as categoriaeconomica_fk-- codigocategoriaeconomica
, elemento_despesa.elementodespesa_sk as elementodespesa_fk-- codigoelementodespesa
, fonte.fonte_sk as fonte_fk -- codigofonte
, funcao.funcao_sk as funcao_fk-- codigofuncao
, grupo_despesa.grupodespesa_sk as grupodespesa_fk-- codigogrupodespesa
, modalidade.modalidade_sk as modalidade_fk-- codigomodalidade
, programa.programa_sk as programa_fk -- codigoprograma
, subelemento.subelementodespesa_sk as subelementodespesa_fk -- codigosubelementodespesa
, subfuncao.subfuncao_sk as subfuncao_fk-- codigosubfuncao
, subtitulo.subtitulo_sk as subtitulo_fk-- codigosubtitulo
, unidade_gestora.unidadegestora_sk as unidadegestora_fk-- codigounidadegestora
, despesas.ano
, despesas.mes
, despesas.codigoorgao
, CASE
WHEN despesas.tipofavorecido = '1' THEN 'Pessoa Física'
WHEN despesas.tipofavorecido = '2' THEN 'Pessoa Jurídica'
WHEN despesas.tipofavorecido = '3' THEN 'Órgão ou Entidade'
WHEN despesas.tipofavorecido = '4' THEN 'Credor Genérico'
ELSE 'Outro'
END AS tipofavorecido
, despesas.valorpago
, despesas.tipolicitacao
-- , acao
-- , categoriaeconomica
-- , elementodespesa
-- , fonte
-- , funcao
-- , grupodespesa
-- , modalidade
-- , programa
-- , subelementodespesa
-- , subfuncao
-- , subtitulo
-- , unidadegestora
from {{ ref('stg_despesas') }} as despesas
left join acao on despesas.codigoacao = acao.codigoacao
left join categoria_economica on despesas.codigocategoriaeconomica = categoria_economica.codigocategoriaeconomica
left join elemento_despesa on despesas.codigoelementodespesa = elemento_despesa.codigoelementodespesa
left join fonte on despesas.codigofonte = fonte.codigofonte
left join funcao on despesas.codigofuncao = funcao.codigofuncao
left join grupo_despesa on despesas.codigogrupodespesa = grupo_despesa.codigogrupodespesa
left join modalidade on despesas.codigomodalidade = modalidade.codigomodalidade
left join programa on despesas.codigoprograma = programa.codigoprograma
left join subelemento on despesas.codigosubelementodespesa = subelemento.codigosubelementodespesa
left join subfuncao on despesas.codigosubfuncao = subfuncao.codigosubfuncao
left join subtitulo on despesas.codigosubtitulo = subtitulo.codigosubtitulo
left join unidade_gestora on despesas.codigounidadegestora = unidade_gestora.codigounidadegestora
)
select * from despesas_with_sk
fact_despesas_original_keys
model
Esta base de dados é extraída do Sistema Integrado de Gestão das Finanças Públicas do Espírito Santo (SIGEFES) e apresenta a execução orçamentária e financeira dos Órgãos e Entidades da Administração Pública. O Portal Dados Abertos é uma iniciativa do Governo do Estado do Espírito Santo com o objetivo de facilitar o acesso aos dados gerados pelos órgãos públicos do estado. O portal visa entregar uma experiência digital otimizada para a busca de dados sociais, econômicos, administrativos, entre outros. Esta tabela mantém as chaves originais da tabela fonte.
columns:id,idcolumns:acao_fk,acao_fkcolumns:categoriaeconomica_fk,categoriaeconomica_fkShow 16 more
WITH
acao as (
select *
from {{ ref('dim_acao') }}
)
, categoria_economica as (
select *
from {{ ref('dim_categoria_economica')}}
)
, elemento_despesa as (
select *
from {{ ref('dim_elemento_despesa')}}
)
, fonte as (
select *
from {{ ref('dim_fonte')}}
)
, funcao as (
select *
from {{ ref('dim_funcao')}}
)
, grupo_despesa as (
SELECT *
from {{ ref('dim_grupo_despesa')}}
)
, modalidade as (
SELECT *
from {{ ref('dim_modalidade')}}
)
, programa as (
select *
from {{ ref('dim_programa')}}
)
, subelemento as (
select *
from {{ ref('dim_subelemento')}}
)
, subfuncao as (
select *
from {{ ref('dim_subfuncao')}}
)
, subtitulo as (
select *
from {{ ref('dim_subtitulo')}}
)
, unidade_gestora as (
select *
from {{ ref('dim_unidade_gestora')}}
),
despesas_original_keys as (
select
despesas.id
, acao.codigoacao as acao_fk
, categoria_economica.codigocategoriaeconomica as categoriaeconomica_fk -- codigocategoriaeconomica
, elemento_despesa.codigoelementodespesa as elementodespesa_fk -- codigoelementodespesa
, fonte.codigofonte as fonte_fk -- codigofonte
, funcao.codigofuncao as funcao_fk -- codigofuncao
, grupo_despesa.codigogrupodespesa as grupodespesa_fk -- codigogrupodespesa
, modalidade.codigomodalidade as modalidade_fk -- codigomodalidade
, programa.codigoprograma programa_fk -- codigoprograma
, subelemento.codigosubelementodespesa as subelementodespesa_fk -- codigosubelementodespesa
, subfuncao.codigosubfuncao as subfuncao_fk -- codigosubfuncao
, subtitulo.codigosubtitulo as subtitulo_fk -- codigosubtitulo
, unidade_gestora.codigounidadegestora as unidadegestora_fk -- codigounidadegestora
, despesas.ano
, despesas.mes
, despesas.codigoorgao
, CASE
WHEN despesas.tipofavorecido = '1' THEN 'Pessoa Física'
WHEN despesas.tipofavorecido = '2' THEN 'Pessoa Jurídica'
WHEN despesas.tipofavorecido = '3' THEN 'Órgão ou Entidade'
WHEN despesas.tipofavorecido = '4' THEN 'Credor Genérico'
ELSE 'Outro'
END AS tipofavorecido
, despesas.valorpago
, despesas.tipolicitacao
from {{ ref('stg_despesas') }} as despesas
left join acao on despesas.codigoacao = acao.codigoacao
left join categoria_economica on despesas.codigocategoriaeconomica = categoria_economica.codigocategoriaeconomica
left join elemento_despesa on despesas.codigoelementodespesa = elemento_despesa.codigoelementodespesa
left join fonte on despesas.codigofonte = fonte.codigofonte
left join funcao on despesas.codigofuncao = funcao.codigofuncao
left join grupo_despesa on despesas.codigogrupodespesa = grupo_despesa.codigogrupodespesa
left join modalidade on despesas.codigomodalidade = modalidade.codigomodalidade
left join programa on despesas.codigoprograma = programa.codigoprograma
left join subelemento on despesas.codigosubelementodespesa = subelemento.codigosubelementodespesa
left join subfuncao on despesas.codigosubfuncao = subfuncao.codigosubfuncao
left join subtitulo on despesas.codigosubtitulo = subtitulo.codigosubtitulo
left join unidade_gestora on despesas.codigounidadegestora = unidade_gestora.codigounidadegestora
)
select * from despesas_original_keys
dim_unidade_gestora
model
columns:unidadegestora_sk,unidadegestora_skcolumns:codigounidadegestora,codigounidadegestoracolumns:desc_unidadegestora,desc_unidadegestoraShow 0 more
with
selected as (
select
codigounidadegestora
, desc_unidadegestora
from {{ ref('stg_unidade_gestora') }}
), transformed as (
select
row_number() over (ORDER BY codigounidadegestora) as unidadegestora_sk
, *
from selected
)
select * from transformed
dim_subtitulo
model
columns:subtitulo_sk,subtitulo_skcolumns:codigosubtitulo,codigosubtitulocolumns:desc_subtitulo,desc_subtituloShow 0 more
with
selected as (
select
codigosubtitulo
, desc_subtitulo
from {{ ref('stg_subtitulo') }}
), transformed as (
select
row_number() over (ORDER BY codigosubtitulo) as subtitulo_sk
, *
from selected
)
select * from transformed
dim_subfuncao
model
columns:subfuncao_sk,subfuncao_skcolumns:codigosubfuncao,codigosubfuncaocolumns:desc_subfuncao,desc_subfuncaoShow 0 more
with
selected as (
select distinct
codigosubfuncao
, desc_subfuncao
from {{ ref('stg_subfuncao') }}
), transformed as (
select
row_number() over (ORDER BY codigosubfuncao) as subfuncao_sk
, *
from selected
)
select * from transformed
dim_subelemento
model
columns:subelementodespesa_sk,subelementodespesa_skcolumns:codigosubelementodespesa,codigosubelementodespesacolumns:desc_subelementodespesa,desc_subelementodespesaShow 0 more
with
selected as (
select
codigosubelementodespesa
, desc_subelementodespesa
from {{ ref('stg_subelemento') }}
), transformed as (
select
row_number() over (ORDER BY codigosubelementodespesa) as subelementodespesa_sk
, *
from selected
)
select * from transformed
dim_programa
model
columns:programa_sk,programa_skcolumns:codigoprograma,codigoprogramacolumns:desc_programa,desc_programaShow 0 more
with
selected as (
select
codigoprograma
, desc_programa
from {{ ref('stg_programa') }}
), transformed as (
select
row_number() over (ORDER BY codigoprograma) as programa_sk
, *
from selected
)
select * from transformed
dim_modalidade
model
columns:modalidade_sk,modalidade_skcolumns:codigomodalidade,codigomodalidadecolumns:desc_modalidade,desc_modalidadeShow 0 more
with
selected as (
select
codigomodalidade
, desc_modalidade
from {{ ref('stg_modalidade') }}
), transformed as (
select
row_number() over (ORDER BY codigomodalidade) as modalidade_sk
, *
from selected
)
select * from transformed
dim_grupo_despesa
model
columns:grupodespesa_sk,grupodespesa_skcolumns:codigogrupodespesa,codigogrupodespesacolumns:desc_grupodespesa,desc_grupodespesaShow 0 more
with
selected as (
select distinct
codigogrupodespesa
, desc_grupodespesa
from {{ ref('stg_grupo_despesa') }}
), transformed as (
SELECT
row_number() over (ORDER BY codigogrupodespesa) as grupodespesa_sk
, *
from selected
)
select * from transformed
dim_funcao
model
columns:funcao_sk,funcao_skcolumns:codigofuncao,codigofuncaocolumns:desc_funcao,desc_funcaoShow 0 more
with
selected as (
select
codigofuncao
, desc_funcao
from {{ ref('stg_funcao') }}
), transformed as (
SELECT
row_number() over (ORDER BY codigofuncao) as funcao_sk
, *
from selected
)
select * from transformed
dim_fonte
model
columns:fonte_sk,fonte_skcolumns:codigofonte,codigofontecolumns:desc_fonte,desc_fonteShow 0 more
with
selected as (
select
codigofonte
, desc_fonte
from {{ ref('stg_fonte') }}
), transformed as (
SELECT
row_number() over (ORDER BY codigofonte) as fonte_sk
, *
from selected
)
select * from transformed
dim_elemento_despesa
model
columns:elementodespesa_sk,elementodespesa_skcolumns:codigoelementodespesa,codigoelementodespesacolumns:desc_elementodespesa,desc_elementodespesaShow 0 more
with
selected as (
select
codigoelementodespesa
, desc_elementodespesa
from {{ ref('stg_elemento_despesa') }}
), transformed as (
SELECT
row_number() over (ORDER BY codigoelementodespesa) as elementodespesa_sk
, *
from selected
)
select * from transformed
dim_categoria_economica
model
columns:categoriaeconomica_sk,categoriaeconomica_skcolumns:codigocategoriaeconomica,codigocategoriaeconomicacolumns:desc_categoriaeconomica,desc_categoriaeconomicaShow 0 more
with
selected as (
select
codigocategoriaeconomica
, desc_categoriaeconomica
from {{ ref('stg_categoria_economica') }}
), transformed as (
SELECT
row_number() over (ORDER BY codigocategoriaeconomica) as categoriaeconomica_sk
, *
from selected
)
select * from transformed
dim_acao
model
Atividade que o governo precisa realizar para atender a necessidade da população.
columns:acao_sk,acao_skcolumns:codigoacao,codigoacaocolumns:desc_acao,desc_acaoShow 0 more
with
selected as (
select distinct
codigoacao
, desc_acao
from {{ ref('stg_acao') }}
), transformed as (
select
row_number() over (ORDER BY codigoacao) as acao_sk
, *
from selected
)
select * from transformed
agg_funcao
model
columns:funcao_fk,funcao_fkcolumns:soma_valorpago,soma_valorpagocolumns:percentual,percentualShow 0 more
WITH funcao AS (
SELECT *
FROM {{ ref('dim_funcao')}}
),
agg_funcao AS (
SELECT
funcao_fk,
SUM(despesas.valorpago) AS soma_valorpago
FROM {{ ref('fact_despesas_sk') }} AS despesas
GROUP BY despesas.funcao_fk
),
total_valorpago AS (
SELECT SUM(soma_valorpago) AS total
FROM agg_funcao
)
SELECT
agg_funcao.funcao_fk,
agg_funcao.soma_valorpago,
ROUND((agg_funcao.soma_valorpago / (SELECT total FROM total_valorpago)) * 100, 2) AS percentual
FROM agg_funcao