/
Criação de Views

Notebook que tem como objetivo a criação de views no Databricks para serem consumidas pelo projeto.

  • Notebook: criacao_views_margin_analysis

  • Views finais: margin_analysis.vw_lfa1_fornecedores, margin_analysis.vw_knvv_clientes_vendas, margin_analysis.vw_kna1_clientes_geral, margin_analysis.vw_tvtwt_canal_distribuicao, margin_analysis.vw_t001w_centro, margin_analysis.vw_tgsbt_divisao, margin_analysis.vw_t001_empresa, margin_analysis.vw_tvgrt_equipe_vendas, margin_analysis.vw_tvkbt_escritorio_vendas, margin_analysis.vw_t137t_setor_industrial, margin_analysis.vw_tvv1t_grupo_cliente_1, margin_analysis.vw_tvv2t_grupo_cliente_2, margin_analysis.vw_tvv3t_grupo_cliente_3, margin_analysis.vw_tvv4t_grupo_cliente_4, margin_analysis.vw_tvv5t_grupo_cliente_5, margin_analysis.vw_t188t_grupo_preco, margin_analysis.vw_tpart_funcao_parceiro, margin_analysis.vw_tinct_incoterm, margin_analysis.vw_tvkot_organizacao_vendas, margin_analysis.vw_tspat_setor_atividade, margin_analysis.vw_t141t_status_material, margin_analysis.vw_tvakt_tipo_documento, margin_analysis.vw_t179t_hierarquia_material, margin_analysis.vw_marc_material_centro e vw_mara_material_geral.

1. Origem

Maioria das views tem origem da database sap do Databricks e outras do processo do upload_temporario_dimensoes_sap, que cria algumas tabelas na database margin_analysis_temp.

2. Criação das Views

A mairoia das views é select de todos os campos e registros da respectiva tabela de origem do database sap. As views são criadas na database margin_analysis.

1%sql 2create or replace view margin_analysis.vw_tvtwt_canal_distribuicao as select * from sap.tvtwt; 3create or replace view margin_analysis.vw_t001w_centro as select * from sap.t001w; 4create or replace view margin_analysis.vw_tgsbt_divisao as select * from margin_analysis_temp.tgsbt; 5create or replace view margin_analysis.vw_t001_empresa as select * from margin_analysis_temp.t001; 6create or replace view margin_analysis.vw_tvgrt_equipe_vendas as select * from sap.tvgrt; 7create or replace view margin_analysis.vw_tvkbt_escritorio_vendas as select * from sap.tvkbt; 8create or replace view margin_analysis.vw_t137t_setor_industrial as select * from margin_analysis_temp.t137t; 9create or replace view margin_analysis.vw_tvv1t_grupo_cliente_1 as select * from margin_analysis_temp.tvv1t; 10create or replace view margin_analysis.vw_tvv2t_grupo_cliente_2 as select * from margin_analysis_temp.tvv2t; 11create or replace view margin_analysis.vw_tvv3t_grupo_cliente_3 as select * from margin_analysis_temp.tvv3t; 12create or replace view margin_analysis.vw_tvv4t_grupo_cliente_4 as select * from margin_analysis_temp.tvv4t; 13create or replace view margin_analysis.vw_tvv5t_grupo_cliente_5 as select * from margin_analysis_temp.tvv5t; 14create or replace view margin_analysis.vw_tpart_funcao_parceiro as select * from margin_analysis_temp.tpart; 15create or replace view margin_analysis.vw_tinct_incoterm as select * from margin_analysis_temp.tinct; 16create or replace view margin_analysis.vw_tvkot_organizacao_vendas as select * from margin_analysis_temp.tvkot; 17create or replace view margin_analysis.vw_tspat_setor_atividade as select * from sap.tspat; 18create or replace view margin_analysis.vw_t141t_status_material as select * from sap.t141t; 19create or replace view margin_analysis.vw_t141t_status_material as select * from sap.t141t; 20create or replace view margin_analysis.vw_tvakt_tipo_documento as select * from sap.tvakt; 21create or replace view margin_analysis.vw_tvakt_tipo_documento as select * from sap.tvakt; 22create or replace view margin_analysis.vw_t179t_hierarquia_material as select * from sap.t179t;

Para a view vw_t188t_grupo_preco, é feita a seleção de alguns campos da margin_analysis_temp.t188t:

1%sql create or replace view margin_analysis.vw_t188t_grupo_preco as 2 select 3 null as MANDT, 4 SPRAS, 5 KONDA, 6 VTEXT 7 from margin_analysis_temp.t188t;

Para a view vw_kna1_clientes_geral, é feita a seleção de alguns campos da sap.kna1, além da criação do campo REGIAO, através do campo REGIO (UF):

1%sql 2create or replace view margin_analysis.vw_kna1_clientes_geral as 3 select 4 KUNNR, 5 LAND1, 6 (case when trim(REGIO) in("AM", "RR", "AP", "PA", "TO", "RO", "AC") then "NORTE" 7 when trim(REGIO) in("MA", "PI", "CE", "RN", "PE", "PB", "SE", "AL", "BA") then "NORDESTE" 8 when trim(REGIO) in("MT", "MS", "GO", "DF") then "CENTRO-OESTE" 9 when trim(REGIO) in("SP", "RJ", "ES", "MG") then "SUDENTE" 10 when trim(REGIO) in("PR", "RS", "SC") then "SUL" else "" end) as REGIAO, 11 REGIO, 12 ORT01, 13 STCD1, 14 VBUND, 15 NAME1 16 from sap.kna1;

Para a view vw_knvv_clientes_vendas, é feita a seleção de alguns campos da sap.mara:

1%sql create or replace view margin_analysis.vw_mara_material_geral as 2 select 3 MATNR, 4 MATKL, 5 substring(PRDHA, 1, 3) as PRDHA1, 6 substring(PRDHA, 1, 9) as PRDHA2, 7 PRDHA as PRDHA3, 8 SPART, 9 MSTAE, 10 MSTAV, 11 MTART, 12 MEINS 13 from sap.mara;

Para a view vw_marc_material_centro, é feita uma seleção de campos das sap.marc e sap.mbew, fazendo join através do campo MATNR:

1%sql create or replace view margin_analysis.vw_marc_material_centro as 2 select distinct 3 t1.PRCTR, 4 t2.BKLAS, 5 t1.STEUC, 6 t2.MTORG, 7 t2.MTUSE, 8 t1.MATNR, 9 t1.WERKS 10 from sap.marc t1 11 left join sap.mbew t2 on(t1.MATNR = t2.MATNR);

Para a view vw_lfa1_fornecedores, é feita uma seleção de campos da sap.lfa1:

1%sql create or replace view margin_analysis.vw_lfa1_fornecedores as 2 select 3 LIFNR, 4 NAME1 5 from sap.lfa1;