Pontos de Debugging na localização MM – Parte 1 PO (Pedido de Compra)
Pontos de Debugging na localização MM – Parte 1 PO
Estava atualizando algumas documentações e encontrei alguns docs velhos falando da localização BR. Apesar de mudanças de lei e do S/4HANA em si, 90% do conteúdo continuava válido. Então resolvi ajustar e publicar um documento com os pontos de debugging na localização MM.
Editei um pouco, traduzi o documento e segue abaixo as dicas. Não sei quem é o autor do documento original, provavelmente foram ex-colegas meus da SAP.
Vou fazer uma sequência de posts, começando pela ordem de compras (PO) e seguindo para a Entrada de mercadorias até chegar na entrada da fatura via MIRO.
Pontos relevantes do pedido de compras (PO)
- Tabelas importantes:
- EKKO (Cabeçalho da PO)
- EKPO (Item da PO)
- MARA (Material Master)
- MBEW (Material Valuation)
- LFA1 (Vendor Master)
- EKPO – Campos BR:
- J_1BNBM – NCM
- J_1BMATUSE – Uso do Material
- J_1BMATORG – Origem do material
- J_1BOWNPRO – Produced in-house
- J_1BINDUST – Material CFOP category
Programa Principal
- Programa com os principais forms no momento da PO: SAPLMEPO
Preenchimento dos campos do Brazil na PO
- Form mepo_item_fill_j_1b, chamado pelo form mepo_item_fill no LMEPOF7X.
Net Price
- J_1B_NF_PO_DISCOUNTS – Determinação de descontos, seguro e despesas
Aqui tem uma observação interessante, dependendo do contexto (se a solução do CTe está ativa) o cálculo feito na PO é alterado.
Além disso nessa função tem a leitura da J_1B_APPEND_TAXINPRICE que lê a tabela j_1bkon1 para ver quais impostos estão incluídos no preço.
Cálculo de impostos
- Form para cálculo de impostos na PO: KOND_TAXES (no function group MEPO)
- Função para cálculo dos impostos na PO:
- CALCULATE_TAX_ITEM (no function group TAX1)
- PRICING (no function group V61A)
O sistema vai passar nas duas pricings, tanto na RM0000 (pricing de preço, se é que isso faz sentido dizer) como na TAXBRA (pricing de imposto, só no BR zueiro mesmo).
Na TKOMV é possíver quais condições estão sendo processadas em cada parte. No caso abaixo é a pricing de preço.
- Function group: J1BCONDTAX:
- J_1B_APPEND_PO_CONDS – Adiciona condições da PO
- J_1B_SAVE_TAX_FIELDS – Salva os campos de impostos para preencher KOMK/KOMP
- J_1B_SAVE_PO_CONDS – Salva condições da PO
- Na criação da Purchase Order, a ordem das rotinas de imposto é a seguinte:
- KOND_TAXES
- J_1B_SAVE_TAX_FIELDS
- CALCULATE_TAX_ITEM
- PRICING
No caso abaixo está passando na pricing de impostos. A chamada da J_1B_CBT ocorre a partir da fórmula 320 ( no caso de impostos a BX01 é onde começa o cálculo do impostos em si ).
Desse momento em diante a Pricing faz “handover” para a localização fazer o cálculo dos nossos impostos brazucas usando os métodos das classes CL_TAX_CALC_BR e CL_TAX_CALC_BR_MM:
Se o objetivo é só debugar a pricing, daí pode se usar breakpoint direto nos métodos das CL_TAX_CALC_BR* , não é preciso debugar a parte da PO em si.
Dicas de debugging na Pricing da localização vão vir em outro post, esse assunto é longo, tem muitos detalhes e para MM com certeza tem gente que poderia explicar bem melhor. Quem quiser se aventurar na explicação é bem vindo!
Att,
Renan Correa
Quer ficar ligado nas novidades de localização? Entra no grupo da S4CN no Telegram e segue a gente no canal do Youtube
Mais infos sobre a localização Brasil no ERP, direto da sap, vocês podem conferir no SAP community na tag de S/4HANA logistics for Brazil
Outros posts sobre Localização você pode conferir filtrando pela categoria NFE/CTE ou Localização BR Geral.
Boa Renan!!
Valeu!
[…] no debugging, na FM CALCULATE_TAX_ITEM (já tinha citado essa FM no post sobre pontos de debugging na PO) tem o form NAV_ANTEIL_AUS_T_KOMV e aqui achei a explicação do […]