From 83cbe1fefe8bebef5b9d8bd5e22e31ee5590d32f Mon Sep 17 00:00:00 2001 From: vitmesquita Date: Mon, 14 Oct 2024 11:20:27 -0300 Subject: [PATCH] concatenating procedures field --- ..._historico_clinico__episodio__vitacare.sql | 21 ++++++++++--------- .../mart_historico_clinico__episodio.sql | 5 +---- .../mart_historico_clinico_app__episodio.sql | 10 +++------ 3 files changed, 15 insertions(+), 21 deletions(-) diff --git a/models/intermediate/historico_clinico/episodio/int_historico_clinico__episodio__vitacare.sql b/models/intermediate/historico_clinico/episodio/int_historico_clinico__episodio__vitacare.sql index 1c8e1a11..47d9d8e9 100644 --- a/models/intermediate/historico_clinico/episodio/int_historico_clinico__episodio__vitacare.sql +++ b/models/intermediate/historico_clinico/episodio/int_historico_clinico__episodio__vitacare.sql @@ -129,23 +129,24 @@ with ), procedimentos_sem_nulos as ( select - * + fk_atendimento, + concat( + + procedimento, + '\n', + observacao + + ) as procedimentos_realizados from procedimentos where - procedimentos.procedimento is not null and - procedimentos.observacao is not null + procedimentos.procedimento is not null or procedimentos.observacao is not null ), dim_procedimentos_realizados as ( select fk_atendimento, - array_agg( - struct( - procedimento as descricao, - observacao - ) - ) as procedimentos_realizados + string_agg(procedimentos_realizados,'\n') as procedimentos_realizados from procedimentos_sem_nulos - group by fk_atendimento + group by 1 ), -- -=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-- -- DIM: Medicamento Prescrito diff --git a/models/marts/historico_clinico/mart_historico_clinico__episodio.sql b/models/marts/historico_clinico/mart_historico_clinico__episodio.sql index 78031a8e..6b6ab7c3 100644 --- a/models/marts/historico_clinico/mart_historico_clinico__episodio.sql +++ b/models/marts/historico_clinico/mart_historico_clinico__episodio.sql @@ -25,10 +25,7 @@ with entrada_datahora, saida_datahora, exames_realizados, - array( - select as struct - cast(null as string) as descricao, cast(null as string) as observacao - ) as procedimentos_realizados, + null as procedimentos_realizados, motivo_atendimento, desfecho_atendimento, condicoes, diff --git a/models/marts/historico_clinico_app/mart_historico_clinico_app__episodio.sql b/models/marts/historico_clinico_app/mart_historico_clinico_app__episodio.sql index 1ff7e512..74e56ef9 100644 --- a/models/marts/historico_clinico_app/mart_historico_clinico_app__episodio.sql +++ b/models/marts/historico_clinico_app/mart_historico_clinico_app__episodio.sql @@ -25,8 +25,8 @@ with ), episodios_com_procedimento as ( select id_episodio - from {{ ref("mart_historico_clinico__episodio") }}, unnest(procedimentos_realizados) as p - where p.descricao is not null + from {{ ref("mart_historico_clinico__episodio") }} + where procedimentos_realizados is not null ), todos_episodios as ( select @@ -125,11 +125,7 @@ with from unnest(exames_realizados) where tipo is not null ) as clinical_exams, - array( - select struct(descricao as description, observacao as notes) - from unnest(procedimentos_realizados) - where tipo is not null - ) as procedures, + safe_cast(procedimentos_realizados as string) as procedures, array( select struct(descricao as description , situacao as status) from unnest(condicoes)