Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. SAP.CDHDR

  2. SAP.VBAK 

  3. SAP.VBFA

  4. SAP.VBAP

  5. SAP.VBKD

  6. SAP.VBEP

  7. SAP.VBUP

  8. SAP.MARA

  9. SAP.KNA1

  10. SAP.AUSP

  11. SAP.CABN

  12. SAP.KONV

Montagem:

  1. SAP.MARC

Montagem:

1 - É feito 2 selects uma consulta na tabela: SAP.J_1BNFDOCCDHDR para validar se existem documentos de vendas que foram alterados com base na regra abaixo:

1.1 - Primeiro com o filtro PSTDAT = Data atual – 1 ---> filtrando o dia anteriorData do dia anterior ( D -1)

1.2 - Segundo com o filtro CREDAT = Data atual – 1 ---> filtrando o dia anterior

2 - é feito um union entre esses dois selects acima, removido os duplicados existentes

3 - A carga incremental, irá verificar se na tabela existem a chave: DOCNUM

3.1 - SE sim, é apagado na tabela os DOCNUMs existentes, e os novos são adicionados na tabela final, juntamente com os novos DOCNUMs

3.2 - SE não, é adicionado na tabela final os novos DOCNUMs

 

Filtro aplicado na tabela: SAP.CDHDR no campo: OBJECTCLAS = ‘VERKBELEG’

2 - Se encontrar documentos, apaga os documentos contidos na tabela histórica e carrega o update desses documentos, juntamente com os documentos criados.

3 - É feito Select na tabela base: SAP.J_1BNFDOC após o tratamento especificado no item 3, trazendo os campos: SAP.VBAK trazendo os campos:

Campo

Nome de Saída

BUKRS_VF

CD_EMPRESA 

VKORG

CD_ORGANIZACAO_VENDAS  

VTWEG

CD_CANAL_DISTRIBUICAO  

SPART

CD_SETOR_ATIVIDADE 

VKBUR

CD_ESCRITORIO_VENDAS 

VKGRP

CD_EQUIPE_VENDAS 

KUNNR

CD_EMISSOR_ORDEM 

BNAME

CD_NAVIO 

Inner join com a tabela: SAP.KNA1 trazendo os campos

Campo

Nome de Saída

LAND1

CD_PAIS_PARCEIRO_FABRICANTE_IT 

KATR4

XX_CLIENTE_EXIGE_FSC 

Inner joins com a tabela SAP.MARA trazendo os campos abaixo:

Campo

Nome de Saída

LEFT

RIGHT(

DOCDAT

EAN11,

6)

DT_COMPETENCIA 

PARID

CD_EMISSOR_ORDEM 

CONDIÇÃO:
SE NFENUM FOR NULO O DADOS SEJA: NFNUM
SE NÃO O DADO SEJA: NFENUM

NM_NOTA_FISCAL 

SERIES

5)

CD_BARRA_REDUZIDO 

EAN11

CD_BARRA_PRODUTO 

MEINS

CD_UNIDADE_MEDIDA_ESTOQUE_ITEM 

MFRNR

CD_FABRICANTE 

MTART

TP_MATERIAL 

MATKL

XX_GRUPO_MERCADORIA 

BISMT

NM_MATERIAL_ANTIGO 

PRDHA

XX_HIERARQUIA_PRODUTO 

Inner joins com a tabela SAP.VBAP trazendo os campos abaixo:

Campo

Nome de Saída

MATNR

CD_PRODUTO 

ARKTX

DC_PRODUTO 

VBELN

NM_ORDEM_VENDA 

GEWEI

CD_UNIDADE_MEDIDA_PESO_ITEM 

KWMENG

QT_ITEM 

SERNR

NM_SERIE_

NF 

ITEM 

SUBSER

NM_SUBSERIE_NF 

DOCDAT

DT_EMISSAO 

...

POSNR

NM_SEQ_ITEM_ORDEM_VENDA 

NTGEW

PS_LIQUIDO_ITEM 

ZIEME

CD_UNIDADE_MEDIDA_VENDA_ITEM 

NTGEW

PS_LIQUIDO_ITEM 

BRGEW

PS_BRUTO_UNITARIO_ITEM 

VOLEH

CD_UNIDADE_MEDIDA_VOLUME_ITEM 

VOLUM

MD_VOLUME_ITEM 

ABGRU

XX_MOTIVO_RECUSA 

WERKS

CD_CENTRO 

VSTEL

LC_EXPEDICAO 

PSTYV

XX_CATEGORIA_ITEM 

ROUTE

XX_ITINERARIO 

J_1BTXSDC

CD_IMPOSTO 

GSBER

CD_DIVISAO 

J_1BCFOP

CD_CFOP 

J_1BTAXLW1

XX_DIREITO_FISCAL_ICMS 

J_1BTAXLW2

XX_DIREITO_FISCAL_IPI 

PRCTR

CD_CENTRO_LUCRO 

ZDTBMR

DT_BLOQUEIO_MOTIVO_RECUSA 

POSEX

NM_ITEM_CLIENTE 

KDMAT

XX_BLOCK_NUMBER_CLIENTE 

KZTLF

XX_REM_PARCIAL_ITEM 

GEWEI

CD_UNIDADE_MEDIDA_PESO_ITEM 

ZIEME

CD_UNIDADE_MEDIDA_VENDA_ITEM

Inner joins com a tabela SAP.VBEP trazendo os campos abaixo:

Campo

Nome de Saída

CONDIÇÃO

TABELA VBEP COLUNA: posnr = VBAP COLUNA:

SE LEFT(REFKEY,10) NÃO FOR NULO O DADO SEJA: LEFT(REFKEY,10)

SE NÃO O DADO SEJA: DOCNUM DA TABELA J_1BNFLIN

NM_FATURA_COMERCIAL  

posnr AND VBEP COLUNA: etenr = c_0001

TABELA VALOR : VBEP

VALOR: edatu

st_item 

CONDIÇÃO

TABELA VBEP COLUNA: posnr = VBAP COLUNA: posnr AND VBEP COLUNA: etenr = c_0001

TABELA VALOR : VBEP

VALOR: edatu

dt_primeira_remessa 

Inner joins com a tabela SAP.PRCD_ELEMENTSVBKD trazendo os campos abaixo:

Campo

Nome de Saída

KPOSN

NM_SEQUENCIAL_ITEM_FATURA 

KSCHL

TP_CONDICAO 

KOAID

XX_CLASSE_CONDICAO

KWERT

PC_CONDICAO

INCO2

INCO2

TRATY

TP_VEICULO_TRANSPORTE 

PLTYP

CD_LISTA_PRECOS 

BSTKD

NM_PEDIDO_CLIENTE 

IHREZ

XX_SUA_REFERENCIA 

BZIRK

XX_REGIAO_VENDAS 

AUGRU

XX_MOTIVO_ORDEM 

KONDA

XX_GRUPO_PRECO 

KURSK

KURSK

Inner joins com a tabela SAP.VBRKAUSP trazendo os campos abaixo:

Campo

Nome de Saída

BUKRS

CD_EMPRESA 

VKORG

CD_ORGANIZACAO_VENDAS

VTWEG

CD_CANAL_DISTRIBUICAO 

SPART

CD_SETOR_ATIVIDADE

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_LINHA_PRODUTO'

VALOR: ATWRT

xx_linha_produto 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_GRUPO'

VALOR: ATWRT

xx_grupo 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_SUB_GRUPO'

VALOR: ATWRT

xx_sub_grupo 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_GRUPO_PADRAO'

VALOR: ATWRT

xx_grupo_padrao 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_PADRAO'

VALOR: ATWRT

xx_padrao 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_ACABAMENTO'

VALOR: ATWRT

xx_acabamento_superficial 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_TOC'

VALOR: ATWRT

xx_toc 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_BASE'

VALOR: ATWRT

xx_base 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_ESPESSURA'

VALOR: atflv

md_espessura 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_LARGURA'

VALOR: atflv

md_largura

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_COMPRIMENTO'

VALOR: atflv

md_comprimento

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_LINHA_PRODUCAO'

VALOR: atwrt

xx_linha_producao 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_FACE_PRINCIPAL'

VALOR: atwrt

xx_superficie_face_principal

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_FACE_SECUNDARIA'

VALOR: atwrt

xx_superficie_face_secundaria 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_NATUREZA'

VALOR: atwrt

xx_natureza 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'MAD_FACES'

VALOR: atwrt

xx_quantidade_faces 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'LOU_CLASSE'

VALOR: atwrt

xx_classe_material 

CONDIÇÃO

TABELA VBAK COLUNA: SPART: LF OU CH

FILTRO: atnam =  'LOU_SEGMENTO'

VALOR: atwrt

xx_segmento_material 

Inner joins com a tabela SAP.VBRPVBUP trazendo os campos abaixo:

Campo

Nome de Saída

CONDIÇÃO

TABELA VBUP

1 CONDIÇÃO: gbsta = NULL SETA = INDIFERENTE

2 CONDIÇÃO: gbsta = c a SETA = NAO PROCESSADO

3 CONDIÇÃO: c_b SETA = ÍNCOMPLETO

4 CONDIÇÃO: c c SETA = CONCLUIDO

st_item  

Inner joins com a tabela SAP.MARC trazendo os campos abaixo:

Campo

Nome de Saída

WERKS

steuc

CD

xx_ncm_

CENTRO

item 

Inner joins com a tabela SAP.T685TKONV trazendo os campos abaixo:

Campo

Nome de Saída

VTEXT

XX_DENOMINACAO_CONDICAO

kwert

vl_mercadoria

CONDIÇÃO

FILTRO : kschl  = 'BX82'

VALOR: kwert

vl_pis 

CONDIÇÃO

FILTRO : kschl  = 'BX82'

VALOR: kwert / 10

pc_cofins 

CONDIÇÃO

FILTRO : kschl  = ‘ZP00' + ‘ZP04’ + ‘ZP90’

VALOR: kwert

vl_preco_tabela 

CONDIÇÃO

FILTRO : kschl  = 'ZAVP'

VALOR: kwert

vl_avp 

CONDIÇÃO

FILTRO : kschl  = 'ZCOE'

VALOR: kwert

vl_comissao_agente

CONDIÇÃO

FILTRO : kschl  = 'ZSAG'

VALOR: kwert

vl_comissao_subagente

CONDIÇÃO

FILTRO : kschl  = 'ZRFT'

VALOR: kwert

vl_frete_mi

CONDIÇÃO

FILTRO : kschl  = 'ZFRF'

VALOR: kwert

vl_frete_me_fechado 

CONDIÇÃO

FILTRO : kschl  = 'ZSGF'

VALOR: kwert

vl_seguro_fechado

CONDIÇÃO

FILTRO : kschl  = 'ZFRE'

VALOR: kwert

vl_frete_me_aberto

CONDIÇÃO

FILTRO : kschl  = 'ZSEG'

VALOR: kwert

vl_seguro_aberto

CONDIÇÃO

FILTRO : kschl  = 'BX10'

VALOR: kwert

vl_base_icms

CONDIÇÃO

FILTRO : kschl  = 'ZPCD'

VALOR: kwert

vl_mercadoria_vista_sem_bonus 

CONDIÇÃO

FILTRO : kschl  = 'ZPCL'

VALOR: kwert

vl_preco_cliente_edi

CONDIÇÃO

FILTRO : kschl  = 'BX13'

VALOR: kwert

vl_icms 

CONDIÇÃO

FILTRO : kschl  = 'BX13'

VALOR: kwert / 10

pc_icms

CONDIÇÃO

FILTRO : kschl  = 'BX41'

VALOR: kwert

vl_substituicao_tributaria

CONDIÇÃO

FILTRO : kschl  = 'ISIC'

VALOR: kbetr / 10

pc_icms_st 

CONDIÇÃO

FILTRO : kschl  = 'BX40'

VALOR: kwert

vl_base_substituicao_tributari

CONDIÇÃO

FILTRO : kschl  = 'ZTOT'

VALOR: kwert

vl_nota_fiscal 

CONDIÇÃO

FILTRO : kschl  = 'ISTS'

VALOR: kbetr / 10

pc_sobretaxa_st

CONDIÇÃO

FILTRO : kschl  = 'ZBON'

VALOR: kwert

vl_desconto_bonus_promocional 

CONDIÇÃO

FILTRO : kschl  = 'ZTOL'

VALOR: kwert

vl_liquido 

CONDIÇÃO

FILTRO : kschl  = 'BX20'

VALOR: kwert

vl_base_ipi 

CONDIÇÃO

FILTRO : kschl  = 'BX23'

VALOR: kwert

vl_ipi 

CONDIÇÃO

FILTRO : kschl  = 'BX23'

VALOR: kwert / 10

pc_ipi 

CONDIÇÃO

FILTRO : kschl  = 'ZTDE'

VALOR: KBETR / 10

KBETR / 10

CONDIÇÃO

FILTRO : kschl  = 'ICMI'

VALOR: kwert

vl_mercadoria

CONDIÇÃO

QUANDO A TABELA VBAK CAMPO: SPART FOR IGUAL A LF OU CH E TABELA KONV CAMPO: kschl = 'ICMI'

VALOR: kbetr

SE NÃO O VALOR: TABELA vbap CAMPO: netwr

vl_unitario 

Databricks:

camada_semantica.zitfsd051ZITFSD049_nfOV_condiITEM

Documentação de desenvolvimento - Basseto

View file
nameZITFSD049_OV_ITEM.txt
View file
nameZITFSD049_OV_ITEM.docx