diff --git a/models/br_camara_dados_abertos/br_camara_dados_abertos__proposicao_microdados.sql b/models/br_camara_dados_abertos/br_camara_dados_abertos__proposicao_microdados.sql index 24150784..402e472e 100644 --- a/models/br_camara_dados_abertos/br_camara_dados_abertos__proposicao_microdados.sql +++ b/models/br_camara_dados_abertos/br_camara_dados_abertos__proposicao_microdados.sql @@ -6,43 +6,87 @@ partition_by={ "field": "ano", "data_type": "INT64", - "range": {"start": 1935, "end": 2023, "interval": 1}, + "range": {"start": 1935, "end": 2024, "interval": 1}, }, ) }} -select - safe_cast(ano as int64) ano, - safe_cast( - split( - format_timestamp('%Y-%m-%dT%H:%M:%E*S', timestamp(dataapresentacao)), 'T' - )[offset(0)] as date - ) data, - safe_cast( - split( - format_timestamp('%Y-%m-%dT%H:%M:%E*S', timestamp(dataapresentacao)), 'T' - )[offset(1)] as time - ) horario, - safe_cast(id as string) id_proposicao, - safe_cast(uri as string) url, - safe_cast(numero as string) numero, - safe_cast(siglatipo as string) sigla, - safe_cast(descricaotipo as string) tipo, - safe_cast(ementa as string) ementa, - safe_cast(ementadetalhada as string) ementa_detalhada, - safe_cast(keywords as string) palavra_chave, - safe_cast(uriorgaonumerador as string) url_orgao_numerador, - safe_cast(uripropprincipal as string) url_principal, - safe_cast(uripropposterior as string) url_posterior, - safe_cast(urlinteiroteor as string) url_teor_proposicao, - safe_cast(ultimostatus_datahora as string) data_hora_ultimo_status, - safe_cast(ultimostatus_urirelator as string) url_relator_ultimo_status, - safe_cast(ultimostatus_siglaorgao as string) sigla_orgao_ultimo_status, - safe_cast(ultimostatus_regime as string) regime_ultimo_status, - safe_cast(ultimostatus_descricaotramitacao as string) tramitacao_ultimo_status, - safe_cast(ultimostatus_descricaosituacao as string) situacao_ultimo_status, - safe_cast(ultimostatus_despacho as string) despacho_ultimo_status, - safe_cast(ultimostatus_apreciacao as string) apreciacao_ultimo_status, - safe_cast(ultimostatus_sequencia as string) sequencia_ultimo_status, - safe_cast(ultimostatus_url as string) url_ultimo_status, -from `basedosdados-dev.br_camara_dados_abertos_staging.proposicao_microdados` as t +with + table as ( + select + safe_cast(ano as int64) ano, + safe_cast( + split( + format_timestamp( + '%Y-%m-%dT%H:%M:%E*S', timestamp(dataapresentacao) + ), + 'T' + )[offset (0)] as date + ) data, + safe_cast( + split( + format_timestamp( + '%Y-%m-%dT%H:%M:%E*S', timestamp(dataapresentacao) + ), + 'T' + )[offset (1)] as time + ) horario, + safe_cast(id as string) id_proposicao, + safe_cast(uri as string) url, + safe_cast(numero as string) numero, + safe_cast(siglatipo as string) sigla, + safe_cast(descricaotipo as string) tipo, + safe_cast(ementa as string) ementa, + safe_cast(ementadetalhada as string) ementa_detalhada, + safe_cast(keywords as string) palavra_chave, + safe_cast(uriorgaonumerador as string) url_orgao_numerador, + safe_cast(uripropprincipal as string) url_principal, + safe_cast(uripropposterior as string) url_posterior, + safe_cast(urlinteiroteor as string) url_teor_proposicao, + safe_cast(ultimostatus_datahora as string) data_hora_ultimo_status, + safe_cast(ultimostatus_urirelator as string) url_relator_ultimo_status, + safe_cast(ultimostatus_siglaorgao as string) sigla_orgao_ultimo_status, + safe_cast(ultimostatus_regime as string) regime_ultimo_status, + safe_cast( + ultimostatus_descricaotramitacao as string + ) tramitacao_ultimo_status, + safe_cast(ultimostatus_descricaosituacao as string) situacao_ultimo_status, + safe_cast(ultimostatus_despacho as string) despacho_ultimo_status, + safe_cast(ultimostatus_apreciacao as string) apreciacao_ultimo_status, + safe_cast(ultimostatus_sequencia as string) sequencia_ultimo_status, + safe_cast(ultimostatus_url as string) url_ultimo_status, + from + `basedosdados-dev.br_camara_dados_abertos_staging.proposicao_microdados` + as t + ), + query_total as ( + select + ano, + case when data >= current_date() then null else data end as data, + horario, + id_proposicao, + url, + numero, + sigla, + tipo, + ementa, + ementa_detalhada, + palavra_chave, + url_orgao_numerador, + url_principal, + url_posterior, + url_teor_proposicao, + data_hora_ultimo_status, + url_relator_ultimo_status, + sigla_orgao_ultimo_status, + regime_ultimo_status, + tramitacao_ultimo_status, + situacao_ultimo_status, + despacho_ultimo_status, + apreciacao_ultimo_status, + sequencia_ultimo_status, + url_ultimo_status, + from table + ) +select * +from query_total diff --git a/models/br_mme_consumo_energia_eletrica/br_mme_consumo_energia_eletrica__uf.sql b/models/br_mme_consumo_energia_eletrica/br_mme_consumo_energia_eletrica__uf.sql index 9826383a..ba82dae9 100644 --- a/models/br_mme_consumo_energia_eletrica/br_mme_consumo_energia_eletrica__uf.sql +++ b/models/br_mme_consumo_energia_eletrica/br_mme_consumo_energia_eletrica__uf.sql @@ -12,4 +12,5 @@ select safe_cast(tipo_consumo as string) tipo_consumo, safe_cast(replace(numero_consumidores, ".0", '') as int64) numero_consumidores, safe_cast(consumo as int64) consumo + from `basedosdados-dev.br_mme_consumo_energia_eletrica_staging.uf` as t diff --git a/models/br_ms_cnes/br_ms_cnes__estabelecimento.sql b/models/br_ms_cnes/br_ms_cnes__estabelecimento.sql index 3bda924d..f8b6e914 100644 --- a/models/br_ms_cnes/br_ms_cnes__estabelecimento.sql +++ b/models/br_ms_cnes/br_ms_cnes__estabelecimento.sql @@ -19,7 +19,7 @@ with raw_cnes_estabelecimento as ( -- 1. Retirar linhas com id_estabelecimento_cnes nulo select * - from `basedosdados-staging.br_ms_cnes_staging.estabelecimento` + from `basedosdados-dev.br_ms_cnes_staging.estabelecimento` where cnes is not null ), raw_cnes_estabelecimento_without_duplicates as ( @@ -43,8 +43,8 @@ select safe_cast(ano as int64) as ano, safe_cast(mes as int64) as mes, safe_cast(sigla_uf as string) sigla_uf, - cast(substr(dt_atual, 1, 4) as int64) as ano_atualizacao, - cast(substr(dt_atual, 5, 2) as int64) as mes_atualizacao, + safe_cast(substr(cast(dt_atual as string), 1, 4) as int64) as ano_atualizacao, + safe_cast(substr(cast(dt_atual as string), 5, 2) as int64) as mes_atualizacao, safe_cast(id_municipio as string) id_municipio, safe_cast(codufmun as string) id_municipio_6, safe_cast({{ clean_cols("REGSAUDE") }} as string) id_regiao_saude, @@ -79,22 +79,28 @@ select safe_cast(c_corren as string) conta_corrente, safe_cast(contratm as string) id_contrato_municipio_sus, safe_cast( - parse_date('%Y%m%d', dt_publm) as date + safe.parse_date('%Y%m%d', cast(dt_publm as string)) as date ) data_publicacao_contrato_municipal, - safe_cast(parse_date('%Y%m%d', dt_puble) as date) data_publicacao_contrato_estadual, + safe_cast( + safe.parse_date('%Y%m%d', cast(dt_puble as string)) as date + ) data_publicacao_contrato_estadual, safe_cast(contrate as string) id_contrato_estado_sus, safe_cast(alvara as string) numero_alvara, - safe_cast(parse_date('%Y%m%d', dt_exped) as date) data_expedicao_alvara, + safe_cast( + safe.parse_date('%Y%m%d', cast(dt_exped as string)) as date + ) data_expedicao_alvara, safe_cast({{ clean_cols("ORGEXPED") }} as string) tipo_orgao_expedidor, safe_cast( {{ clean_cols("AV_ACRED") }} as string ) tipo_avaliacao_acreditacao_hospitalar, safe_cast(clasaval as string) tipo_classificacao_acreditacao_hospitalar, - cast(substr(dt_acred, 1, 4) as int64) as ano_acreditacao, - cast(substr(dt_acred, 5, 2) as int64) as mes_acreditacao, - safe_cast({{ clean_cols("AV_PNASS") }} as int64) tipo_avaliacao_pnass, - cast(substr(dt_pnass, 1, 4) as int64) as ano_avaliacao_pnass, - cast(substr(dt_pnass, 5, 2) as int64) as mes_avaliacao_pnass, + safe_cast(substr(cast(dt_acred as string), 1, 4) as int64) as ano_acreditacao, + safe_cast(substr(cast(dt_acred as string), 5, 2) as int64) as mes_acreditacao, + safe_cast( + cast({{ clean_cols("AV_PNASS") }} as string) as int64 + ) tipo_avaliacao_pnass, + safe_cast(substr(cast(dt_pnass as string), 1, 4) as int64) as ano_avaliacao_pnass, + safe_cast(substr(cast(dt_pnass as string), 5, 2) as int64) as mes_avaliacao_pnass, safe_cast(nivate_a as int64) indicador_atencao_ambulatorial, safe_cast(gesprg1e as int64) indicador_gestao_basica_ambulatorial_estadual, safe_cast(gesprg1m as int64) indicador_gestao_basica_ambulatorial_municipal, @@ -263,6 +269,7 @@ select safe_cast(ap07cv04 as int64) indicador_atendimento_regulacao_plano_seguro_terceiro, safe_cast(ap07cv05 as int64) indicador_atendimento_regulacao_plano_saude_publico, safe_cast(ap07cv06 as int64) indicador_atendimento_regulacao_plano_saude_privado +from cnes_add_muni {% if is_incremental() %} where diff --git a/models/br_ms_sia/br_ms_sia__dicionario.sql b/models/br_ms_sia/br_ms_sia__dicionario.sql index 180c5467..66757e55 100644 --- a/models/br_ms_sia/br_ms_sia__dicionario.sql +++ b/models/br_ms_sia/br_ms_sia__dicionario.sql @@ -7,44 +7,10 @@ }} -with - dict as ( - select - id_tabela, - coluna, - cobertura_temporal, - valor, - case - when id_tabela = 'producao_ambulatorial' and coluna = 'tipo_unidade' - then lpad(chave, 2, '0') - when - id_tabela = 'producao_ambulatorial' - and coluna = 'tipo_financiamento_producao' - then lpad(chave, 2, '0') - when - id_tabela = 'producao_ambulatorial' - and coluna = 'carater_atendimento' - then lpad(chave, 2, '0') - when - id_tabela = 'producao_ambulatorial' and coluna = 'raca_cor_paciente' - then lpad(chave, 2, '0') - when - id_tabela = 'producao_ambulatorial' - and coluna = 'motivo_saida_paciente' - then lpad(chave, 2, '0') - when - id_tabela = 'producao_ambulatorial' - and coluna = 'subtipo_financiamento_producao' - then lpad(chave, 6, '0') - else chave - end as chave2 - from basedosdados - dev.br_ms_sia_staging.dicionario - ) - select safe_cast(id_tabela as string) id_tabela, - safe_cast(coluna as string) nome_coluna, - safe_cast(chave2 as string) chave, + safe_cast(nome_coluna as string) nome_coluna, + safe_cast(chave as string) chave, safe_cast(replace(cobertura_temporal, '-1', '(1)') as string) cobertura_temporal, safe_cast(valor as string) valor -from dict +from `basedosdados-dev.br_ms_sia_staging.dicionario` diff --git a/models/br_ms_sia/br_ms_sia__producao_ambulatorial.sql b/models/br_ms_sia/br_ms_sia__producao_ambulatorial.sql index 2c4c990a..500bf599 100644 --- a/models/br_ms_sia/br_ms_sia__producao_ambulatorial.sql +++ b/models/br_ms_sia/br_ms_sia__producao_ambulatorial.sql @@ -19,6 +19,7 @@ with from `basedosdados-dev.br_ms_sia_staging.producao_ambulatorial` as producao_ambulatorial + left join ( select id_municipio, id_municipio_6, @@ -45,8 +46,8 @@ select -- ) cnpj_mantenedora_estabalecimento, -- safe_cast(regexp_replace(pa_cnpj_cc, '0{14}', '') as string) cnpj_orgao, -- safe_cast(pa_mn_ind as string) tipo_mantenedor_estabelecimento, - safe_cast(pa_gestao as string) id_gestao, - safe_cast(pa_condic as string) tipo_gestao, + -- safe_cast(pa_gestao as string) id_gestao, + -- safe_cast(pa_condic as string) tipo_gestao, safe_cast(pa_regct as string) tipo_regra_contratual, safe_cast(pa_ine as string) id_equipe, safe_cast(pa_srv_c as string) id_servico_especializado, @@ -57,8 +58,12 @@ select regexp_replace(pa_autoriz, '0{13}', '') as string ) codigo_autorizacao_apac, safe_cast(pa_codoco as string) codigo_ocorrencia, - safe_cast(pa_tpfin as string) tipo_financiamento_producao, - safe_cast(pa_subfin as string) subtipo_financiamento_producao, + case + when pa_tpfin = '00' then '0' else cast(ltrim(pa_tpfin, '0') as string) + end as tipo_financiamento_producao, + case + when pa_subfin = '0000' then '0' else cast(ltrim(pa_subfin, '0') as string) + end as subtipo_financiamento_producao, -- - parse e criar ano mes data é yyyy-mm safe_cast(substr(pa_mvm, 1, 4) as int64) as ano_processamento_procedimento, safe_cast(substr(pa_mvm, 5, 2) as int64) as mes_processamento_procedimento, @@ -130,17 +135,27 @@ select end ) as string ) as cid_causas_associadas_subcategoria, - safe_cast(pa_catend as string) carater_atendimento, + case + when pa_catend = '00' then '0' else cast(ltrim(pa_catend, '0') as string) + end as carater_atendimento, safe_cast(regexp_replace(pa_munpcn, '9{6}', '') as string) id_paciente_proto, safe_cast(replace(pa_sexo, '0', '') as string) sexo_paciente, safe_cast(regexp_replace(pa_idade, '9{3}', '') as int64) idade_paciente, - safe_cast(pa_racacor as string) raca_cor_paciente, + case + when pa_racacor = '00' then '0' else cast(ltrim(pa_racacor, '0') as string) + end as raca_cor_paciente, safe_cast(ltrim(pa_etnia, '0') as string) etnia_paciente, safe_cast(idademin as int64) idade_minima_paciente, safe_cast(idademax as int64) idade_maxima_paciente, - safe_cast(pa_flidade as string) compatibilidade_idade_procedimento, - safe_cast(pa_nivcpl as string) complexidade_procedimento, - safe_cast(pa_docorig as string) instrumento_registro, + case + when pa_flidade = '00' then '0' else cast(ltrim(pa_flidade, '0') as string) + end as compatibilidade_idade_procedimento, + case + when pa_nivcpl = '00' then '0' else cast(ltrim(pa_nivcpl, '0') as string) + end as complexidade_procedimento, + case + when pa_docorig = '00' then '0' else cast(ltrim(pa_docorig, '0') as string) + end as instrumento_registro, safe_cast(pa_valapr as float64) valor_aprovado_procedimento, safe_cast(pa_qtdapr as int64) quantidade_aprovada_procedimento, safe_cast(pa_valpro as float64) valor_produzido_procedimento, @@ -151,7 +166,9 @@ select safe_cast(pa_vl_cf as float64) valor_complemento_federal, safe_cast(pa_vl_cl as float64) valor_complemento_local, safe_cast(pa_vl_inc as float64) valor_incremento, - safe_cast(pa_motsai as string) motivo_saida_paciente, + case + when pa_motsai = '00' then '0' else cast(ltrim(pa_motsai, '0') as string) + end as motivo_saida_paciente, -- - em uf e muicipio replace de safe_cast( regexp_replace(pa_ufdif, '9{1}', '') as int64 diff --git a/models/br_ms_sia/br_ms_sia__psicossocial.sql b/models/br_ms_sia/br_ms_sia__psicossocial.sql new file mode 100644 index 00000000..580c9f32 --- /dev/null +++ b/models/br_ms_sia/br_ms_sia__psicossocial.sql @@ -0,0 +1,132 @@ +{{ + config( + alias="psicossocial", + schema="br_ms_sia", + materialized="table", + partition_by={ + "field": "ano", + "data_type": "int64", + "range": {"start": 2005, "end": 2024, "interval": 1}, + }, + cluster_by=["mes", "sigla_uf"], + ) +}} +with + sia_add_municipios as ( + -- Adicionar id_municipio de 7 dígitos + select * + from `basedosdados-dev.br_ms_sia_staging.psicossocial` as psicossocial + left join + ( + select id_municipio, id_municipio_6, + from `basedosdados-dev.br_bd_diretorios_brasil.municipio` + ) as mun + on psicossocial.ufmun = mun.id_municipio_6 + where sigla_uf = 'PA' + ) + +select + safe_cast(ano as int64) ano, + safe_cast(mes as int64) mes, + safe_cast(sigla_uf as string) sigla_uf, + safe_cast(id_municipio as string) id_municipio, + safe_cast(cnes_exec as string) id_estabelecimento_cnes, + safe_cast(cnes_esf as string) id_estabelecimento_cnes_familia, + safe_cast(gestao as string) id_gestao, + safe_cast(condic as string) tipo_gestao, + safe_cast(tpups as string) tipo_unidade, + safe_cast(tippre__ as string) tipo_prestador, + safe_cast(mn_ind as string) tipo_mantenedor_estabelecimento, + safe_cast(cnpjcpf as string) cnpj_estabelecimento_executante, + safe_cast(cnpjmnt as string) cnpj_mantenedora_estabalecimento, + safe_cast(nat_jur as string) natureza_juridica_estabelecimento, + safe_cast(pa_proc_id as string) id_procedimento_ambulatorial, + safe_cast(pa_srv as string) id_servico_especializado, + safe_cast(pa_class_s as string) id_classificacao_servico, + safe_cast(cns_pac as string) id_cns_paciente_criptografado, + safe_cast( + format_date('%Y-%m-%d', safe.parse_date('%Y%m%d', inicio)) as date + ) data_inicio_atendimento, + safe_cast( + format_date('%Y-%m-%d', safe.parse_date('%Y%m%d', fim)) as date + ) data_termino_atendimento, + safe_cast(permanen as string) permanencia_atendimento, + safe_cast(mot_cob as string) motivo_saida_permanencia, + safe_cast( + format_date('%Y-%m-%d', safe.parse_date('%Y%m%d', dt_motcob)) as date + ) as data_motivo_saida_permanencia, + safe_cast(substr(dt_process, 1, 4) as int64) as ano_processamento, + safe_cast(substr(dt_process, 5, 2) as int64) as mes_processamento, + safe_cast(substr(dt_atend, 1, 4) as int64) as ano_atendimento, + safe_cast(substr(dt_atend, 5, 2) as int64) as mes_atendimento, + safe_cast( + format_date('%Y-%m-%d', safe.parse_date('%Y%m%d', dtnasc)) as date + ) data_nascimento_paciente, + safe_cast(munpac as string) id_municipio_residencia_paciente, + safe_cast(origem_pac as string) origem_paciente, + safe_cast(nacion_pac as string) nacionalidade_paciente, + safe_cast(tpidadepac as string) tipo_idade, + safe_cast(idadepac as int64) idade_paciente, + safe_cast(sexopac as string) sexo_paciente, + safe_cast(racacor as string) raca_cor_paciente, + safe_cast(etnia as string) etnia_paciente, + safe_cast(catend as string) carater_atendimento, + safe_cast( + trim(case when length(trim(cidpri)) = 3 then cidpri else null end) as string + ) as cid_principal_categoria, + safe_cast( + trim( + case + when length(trim(cidpri)) = 4 and cidpri != '0000' + then cidpri + when + length(trim(cidpri)) = 3 + and cidpri in ( + select subcategoria + from `basedosdados-dev.br_bd_diretorios_brasil.cid_10` + where length(subcategoria) = 3 + ) + then cidpri + else null + end + ) as string + ) as cid_principal_subcategoria, + safe_cast( + trim(case when length(trim(cidassoc)) = 3 then cidassoc else null end) as string + ) as cid_causas_associadas_categoria, + safe_cast( + trim( + case + when length(trim(cidassoc)) = 4 and cidassoc != '0000' + then cidassoc + when + length(trim(cidassoc)) = 3 + and cidassoc in ( + select subcategoria + from `basedosdados-dev.br_bd_diretorios_brasil.cid_10` + where length(subcategoria) = 3 + ) + then cidassoc + else null + end + ) as string + ) as cid_causas_associadas_subcategoria, + safe_cast(tp_droga as string) tipo_droga, + safe_cast(destinopac as string) destino_paciente, + safe_cast(loc_realiz as string) local_realizacao_atendimento, + safe_cast( + case + when sit_rua = 'S' then '1' when sit_rua = 'N' then '0' else sit_rua + end as int64 + ) indicador_situacao_rua, + safe_cast(cob_esf as int64) indicador_estrategia_familia, + safe_cast(pa_qtdpro as int64) quantidade_produzida_procedimento, + safe_cast(pa_qtdapr as int64) quantidade_aprovada_procedimento, + safe_cast(qtdate as int64) quantidade_atendimentos, + safe_cast(qtdpcn as string) quantidade_pacientes, +from sia_add_municipios as t +{% if is_incremental() %} + where + date(cast(ano as int64), cast(mes as int64), 1) + > (select max(date(cast(ano as int64), cast(mes as int64), 1)) from {{ this }}) +{% endif %} diff --git a/models/br_ms_sia/schema.yml b/models/br_ms_sia/schema.yml index 668c3598..3beb4b3d 100644 --- a/models/br_ms_sia/schema.yml +++ b/models/br_ms_sia/schema.yml @@ -5,14 +5,6 @@ models: description: Esta tabela contém o registro de processos ambulatorias realizados em todo sistema de saúde nacional - público e privado. tests: - - dbt_utils.unique_combination_of_columns: - combination_of_columns: - - ano - - mes - - id_estabelecimento_cnes - - instrumento_registro - - id_processamento_ambulatorial - - id_cbo_2002 - not_null_proportion_multiple_columns: at_least: 0.05 columns: @@ -252,3 +244,177 @@ models: description: Cobertura temporal - name: valor description: Valor + - name: br_ms_sia__psicossocial + description: Insert `psicossocial` table description here + tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: [ano, mes] + - not_null_proportion_multiple_columns: + at_least: 0.05 + columns: + - name: ano + description: Ano + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__ano') + field: ano.ano + - name: mes + description: Mês + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__mes') + field: mes.mes + - name: sigla_uf + description: Sigla da Unidade da Federação + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + - name: id_municipio + description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio + - name: id_estabelecimento_cnes + description: ID Estabelecimento - CNES + - name: id_estabelecimento_cnes_familia + description: Código do SCNES do Estabelecimento de Saúde Unidade da Saúde + da Família da região + - name: id_gestao + description: ID do tipo de gestão do estabelecimento + - name: tipo_gestao + description: Tipo de gestão do estabelecimento + - name: tipo_unidade + description: Tipo de estabelecimento + - name: tipo_prestador + description: Tipo de Prestador + - name: tipo_mantenedor_estabelecimento + description: Tipo de manutenção do estabelecimento + - name: cnpj_estabelecimento_executante + description: CNPJ do Estabelecimento executante + - name: cnpj_mantenedora_estabalecimento + description: 'CNPJ da Mantenedora do Estabelecimento ' + - name: natureza_juridica_estabelecimento + description: Natureza jurídica do operador do estabelecimento + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__natureza_juridica') + field: id_natureza_juridica + - name: id_procedimento_ambulatorial + description: Ação Realizada + - name: id_servico_especializado + description: Código do Serviço Especializado / Classificação CBO (de acordo + com o CNES) + - name: id_classificacao_servico + description: Código da Classificação do Serviço + - name: id_cns_paciente_criptografado + description: Número do CNS (Cartão Nacional de Saúde) do paciente (criptografia) + - name: data_inicio_atendimento + description: Data de Início do Atendimento (DDMMAAAA) + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__data') + field: data.data + - name: data_termino_atendimento + description: Data de Fim do Atendimento (DDMMAAAA) + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__data') + field: data.data + - name: permanencia_atendimento + description: Permanência em Atendimento + - name: motivo_saida_permanencia + description: Motivo de Saída/Permanência + - name: data_motivo_saida_permanencia + description: Data da ocorrência no caso de alta, transferência ou óbito + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__data') + field: data.data + - name: ano_processamento + description: Ano do processamento + - name: mes_processamento + description: Mês do processamento + - name: ano_atendimento + description: Ano do atendimento + - name: mes_atendimento + description: Mês do atendimento + - name: data_nascimento_paciente + description: Data de nascimento do paciente + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__data') + field: data.data + - name: municipio_residencia_paciente + description: ID Município - IBGE 7 Dígitos + - name: origem_paciente + description: Origem do paciente + - name: nacionalidade_paciente + description: Nacionalidade do paciente + - name: tipo_idade + description: Tipo da Idade do paciente em anos, meses ou dias. Calculado a + partir da data de nascimento + - name: idade_paciente + description: Idade do paciente + - name: sexo_paciente + description: Sexo do paciente + - name: raca_cor_paciente + description: Raça/cor do paciente + - name: etnia_paciente + description: Etnia do paciente + - name: carater_atendimento + description: Caráter de atendimento (APAC ou BPA-I) + - name: cid_principal_categoria + description: 'Identificador da categoria da Classificação Internacional de + Doenças (CID10) principal da Autorização de Procedimento Ambulatorial de + Alta complexidade (APAC) ou do Boletim de Produção Ambulatorial Individualizado + (BPA-I) ' + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__cid_10') + field: categoria + - name: cid_principal_subcategoria + description: 'Identificador da subcategoria da Classificação Internacional + de Doenças (CID10) principal da Autorização de Procedimento Ambulatorial + de Alta complexidade (APAC) ou do Boletim de Produção Ambulatorial Individualizado + (BPA-I) ' + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__cid_10') + field: subcategoria + - name: cid_causas_associadas_categoria + description: Identificador da categoria da Classificação Internacional de + Doenças (CID10) causas associadas a Autorização de Procedimento Ambulatorial + de Alta complexidade (APAC) + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__cid_10') + field: categoria + - name: cid_causas_associadas_subcategoria + description: Identificador da subcategoria da Classificação Internacional + de Doenças (CID10) causas associadas a Autorização de Procedimento Ambulatorial + de Alta complexidade (APAC) + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__cid_10') + field: subcategoria + - name: tipo_droga + description: TIPO DE DROGA (A - Álcool, C - Crack, O - Outros) + - name: destino_paciente + description: Destino do paciente + - name: local_realizacao_atendimento + description: Local de Realização (C – CAPS, T - Território) + - name: indicador_situacao_rua + description: Situação de Rua (S- SIM, N - NÃO) + - name: indicador_estrategia_familia + description: Indica se a região de atendimento do paciente tem cobertura de + Estratégia Saúde da Família + - name: quantidade_produzida_procedimento + description: Quantidade produzida (apresentada) do procedimento + - name: quantidade_aprovada_procedimento + description: Quantidade aprovada do procedimento + - name: quantidade_atendimentos + description: Quantidade de Atendimentos + - name: quantidade_pacientes + description: Quantidade de pacientes