Minha ficha de CIAP foi criada errada no ERP, como que analisa isso? Parte 1

Publicado por:Renan Correa Fri, 12 November 2021
Compartilhe:
12 de November de 2021

Minha ficha de CIAP foi criada errada no ERP, como que analisa isso?

Já tem excelentes blog posts ensinando a configurar CIAP no ERP usando o TDF, como funcionam os cálculos e o processo de criação das fichas, o que é relevante aqui e ali na configuração.

Entao o primeiro passo para analisar é sempre olhar a parte funcional (configuração do CIAP, dados da PO, dados da NF). Não adianta se atirar no debugging antes de saber o contexto do que procurar. Aprendi com um mestre ABAP JEDI das antigas, se você não sabe o que procurar você não precisa nem digitar o “/H”.

Mas e quando as coisas pegam o caminho errado e a configuração parece certa, como que analisa a criação da ficha tecnicamente? Daí vem o DEBUGGING!

Então, esse é o objetivo desse post e que vai fazer parte de uma série sobre CIAP: “Como debugar a criação da FICHA CIAP usando TDF/ACR Brazil no ECC/S4HANA”.

Criação da NF/Ficha

A mágica da criação da ficha do CIAP começa em um enhancement do TDF ( ativado pelo SWITCH do TDF que está vinculado na Business Function do TDF ) .

No momento de salvar a NF a própria função J_1B_NF_DOC_INSERT_FROM_OBJECT que chama o enhancement da ficha CIAP. O ponto exato é esse aí logo abaixo:

Esse método PROCESS_CIAP da class CL_CIAP_FACTORY lê todas as regras do paranauê e decide se cria ficha ou não.

O CIAP tem uma lógica muito interessante para quem conhece ABAP, ele está extremamente modularizado e tudo está bem encapsulado em classes/métodos distintos ( alôuuuuu orientação a objeto bonita de ver ).

Isso tem muitas vantagens para desenvolver, mas também exige um pouco mais de estudo para fazer um debugging, não adianta sair a esmo procurando as coisas via CTRL+F porque tem muitas classes diferentes sendo usadas. A hierarquia das classes em alto nível vai ser um assunto para outro post, com certeza.

Atualização de NF/Ficha

O segundo método que eu destaco por agora na classe CL_CIAP_FACTORY é o UPDATE_CIAP, esse é chamado quando se faz alteração num documento, na j1b2n, e precisa verificar se é relevante pra CIAP ou não. A função que chama ele é a J_1B_NF_DOC_UPDATE_FROM_OBJECT.

Esses dois pontos são o início da história, mas já servem de base para quem está interessado em começar a entender a lógica e são pontos de partida para analisar caso uma ficha não seja criada ou seja criada com alguma informação incorreta.

Ahhh e porque eu falo tanto de debugging? É um sistema, é baseado em código e dá para entender o funcionamento assim. Sem olhar código você pode olhar a documentação e tentar adivinhar como funciona na prática, mas conhecendo o código fica mais fácil de entender.

Valeu, Gurizada!

Renan

Quer Aprender mais?

Te inscreve lá no curso do ACR Brazil porque vamos discutir a sobre CIAP também.

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 o TDF direto da sap no HELP do TDF.

Outros posts sobre TDF você pode conferir filtrando pela categoria TDF/ACR.