Implementação das notas da NT2021.004
Implementação das notas da NT2021.004 – Overview das notas
Sairam nessa semana as Implementação das notas da NT2021.004 e já testei a implementação delas num sistema S/4HANA 2021.
No lado do ERP são 6 notas (2 de SD, 2 de NFE saída, 2 de NFE entrada) considerando um cenário com GRC NFE para entradas e saídas (notas para quem usa SAP Document Compliance de entradas existem notas diferentes que nem olhei):
3143281 – NF-e NT 2021.004: Prerequisite objects for SAP Note 3146447
3146447 – NF-e NT 2021.004: Item Additional Information, Vehicle and Concession Act
3142096 – Outbound NF-e: Prerequisite objects for SAP Note 3142108
3142108 – Outbound NF-e: Technical Note 2021.004 – Versions 1.00, 1.10, and 1.20
3142100 Inbound NF-e: Prerequisite objects for SAP Note 3142101
3142101 Inbound NF-e: Technical Note 2021.004 – Versions 1.00, 1.10, and 1.20
As duas primeiras notas inserem os campos nas tabelas e nos processos de SD/Writer, as duas de NFE entregam o mapeamento da NFe e as duas de incoming ajustam detalhes para o processamento da NFe de entrada dos fornecedores com as novas tags.
Para quem for implementar recomendo acompanhar também o KBA 3188405 – NF-e Technical Note 2021.004 Troubleshooting Guide que tem um resumo das notas, atualizações e erros conhecidos durante o processo de implementação das notas.
Para o GRC NFE a mudança tem apenas uma nota (por enquanto) 3148222 – NF-e NT2021.004 v1.10 .
A estratégia de implementação
Antes de mais nada, quero deixar claro que neste caso implementei tudo em um S/4HANA bem atualizado, de maneira que já utilizei a SNOTE com a interface nova. Se sobrar tempo na semana até vou fazer um post sobre a SNOTE, porque gostei bastante da atualização e das melhorias que foram feitas na SNOTE.
Nesse caso eu baixei as notas da mudança legal e deixei o SNOTE calcular a fila de implementação, não é uma melhor prática já que essa fila normalmente não leva em consideração as notas de pré-requisitos no qual existem programas que criam DDIC’s (mais adianto no post falo mais desse assunto), mas como era um sistema interno para testar a implementação não é um problema.
Para fazer num sistema de DEV num landscape real eu recomendaria buscar atualizar do começo pro fim da lista, uma por uma, lendo as notas uma por uma e implementando. É bem mais demorado do que jogar as notas de destino no SNOTE, deixar ele calcular a fila e rodar a implementação, mas uma a uma você evita melhor erros de pré-requisitos que estam apenas escritos em notas e não na Correction instruction da nota. O objetivo do post não é mostrar passo a passo cada nota, mas mostrar o conceito e destacar alguns pontos relevantes.
Overview do SNOTE novo
Em primeiro lugar, tenho que elogiar o SNOTE. Aqui embaixo tem a cara nova da SNOTE depois da última atualizção que eu vi e ali embaixo aparece a primeira nota da lista que eu tinha para implementar:
A tela de Implementação da CI também mudou, agora snote mostra a CI na esquerda e divide com os objetos que aparecerem na parte da direita.
Começando a implementação
Para implementar a primeira nota (3143281) não tive muitos problemas, como essas notas normalmente criam DDIC’s dificilmente elas causam grandes problemas, os principais erros sempre acontecem nas notas que entregam o código (principalmente quando os pré-requisitos de DDIC não foram corretamente implementados).
Do mesmo modo no post vou focar em falar na implementação técnica (o escopo funcional das notas vai ficar para um próximo post) e destacar alguns pontos dos passos manuais.
A nota 3143281 cria três views, para editar as informações de veículos, parte das novas tags da NT2021.004. Mais adiante existem alguns passos manuais para alterar essas views. Nesse ponto tem um report que cria DDIC’s (data dictionary objects), também conhecido como “UDO Report”. UDO vem de Upport/Downport overview, que é a ferramenta que a SAP usa para gerar um relatório que cria DDIC (no lugar de criar um PDF cheio de passos manuais).
Abaixo tem o output do report ( por favor não esqueçam de executar esses reports depois de implementar as notas ).
Em seguida nos passos manuais dessa nota 3143281 é pedido para alterar a tela usando o Screen Painter com editor de layout.
Nesse ponto eu fiz o passo um pouco diferente da instrução, eu selecionei a coluna “Usage” e mudei a posição dela de 2 para 3 (no lugar de puxar/arrastar na tela que as vzs dá erro ). Eu raramento crio telas e não tenho muita intimidade com o Screen Painter, acho que assim é mais fácil, pois sempre que movo os objetos parece que fica algo estranho.
Passo 1 – Selecionei o campo Usage na tela:
E, então, mudei ele para coluna 3:
Nesse caso o resultado ficou igual ao exemplo da nota, mas sem arrastar o campo.
No final da história a tela na SM30 fica com essa cara:
Segunda parte das notas – Começando a nota 3146447
Depois da primeira parte com as mudanças de DDIC, segui para a próxima nota. No passo manual da 3146447 no momento de gerar o change document object eu selecionei a opção “Function” no pop-up. Esse pop-up não estava no passo manual e eu tinha que escolher uma das duas opções.
O passo era adicionar a tabela nova no objeto de change para gerar logs na NFE:
O pop-up que apareceu para mim foi o seguinte:
Eu escolhi function mas isso não foi chute não, eu sei que o change object da NF é uma Function Module (conforme screenshot abaixo):
Observação sobre passos manuais já entregues pela nota
Uma observação importante para os próximos passos, na própria nota tem um observação dizendo que alguns passos manuais já podem ter sido por UDO report ou por Correction instruction.
Isso acontece porque a SAP faz um manual para implementar que é independente do release eacontecem pequenas variações entre releases com netweaver mais novo (7.51 em diante) para releases com netweaver mais antigo. Aqui está a observação da SAP:
Seguindo essa tarefa, nos passo manuais da mesma nota, tinha mais uma observação, caso as mensagens não fossem criadas pela note então elas deveriam ser criadas manualmente. No meu caso criei na mão porque não estavam lá.
Era esse passo aqui:
Assim, nos passos manuais pós-implementação da Nota 3146447 pedia para fazer algumas alterações no menu painter.
Neste momento me aconteceu algo de acordo com o aviso anterior, ao tentar fazer um passo o sistema disse que o status ADDI01 já existia para o programa SAPLJ1BB2 (assim como o 02,03 e 04).
Nesse caso conferi e o objeto estava lá, apenas a descrição estava errada e precisava ser trocada.
Essa era a descrição que estava criada já para o objeto (provavelmente pela própria nota, não voltei para conferir quando havia sido criado):
Para alterar a descrição eu desativei o “modification assistant”:
Assim o sistema libera as descrições do menu para edição (talvez exista jeito melhor de fazer isso):
Os passos manuais seguintes envolvendo as views de controle de tela também já tinham sido entregues pela nota aparentemente, ou seja, menos ajustes manuais para fazer ;D.
Apenas conferi passo a passo se estava tudo OK.
Aqui foi outro passo que estava pronto já:
No final da Implementação subi o BC-SET da nota e todas as entradas foram criadas na view de acordo com o BCset:
Até aqui tudo OK. A primeira parte da alteração já estava implementada, agora parti para as notas seguintes (de NFE e NFEIN) e foi onde tive a maior parte dos erros.
Notas seguintes e pré-requisitos adicionais
Por fim e por algum motivo durante a implementação da nota 3142108 o SNOTE travou e não conseguiu baixar todos os pré-requisitos, que eram 35 na lista do snote para a minha versão. Baixei todos manualmente com a opção “Download Notes” fornecendo a lista.
Nes momento, durante a ativação da nota, tive algumas mensagens de erro devido a objetos de DDic inexistentes, nesse momento sempre peguei o nome do objeto e procurei direto no SAP Support launchpad qual a nota que criava o mesmo (sempre procurando alguma nota com “Prerequisite objects for SAP Note” no título e os respectivos componentes da localização).
No final das contas levei cerca de duas horas (e alguns erros de sintaxe) para finalizar a implementação de notas as notas e pré-requisitos.
Por último fiz um teste rápido e tanto a view como a tela nova da NFE estavam aparecendo corretamente:
No final das contas deixei os testes funcionais para serem realizados depois com mais calma.
Valeu Gurizada!
Renan Correa
Lista de notas implementadas no S/4HANA 2021
Para quem ficou curioso com as notas Abaixo segue a lista completa das notas que foram implementadas no S/4HANA 2021 para essa mudança:
3098711
3111469
3114099
3115457
3115712
3116373
3125353
3126418
3127920
3129929
3130909
3131322
3133719
3133725
3133727
3135271
3139758
3142096
3142108
3143281
3143741
3145209
3145679
3146447
3147091
3147135
3111408
3063959
3081228
3083339
3083839
3086017
3088731
3089167
3089506
3091297
3091723
3094859
3096762
3098169
3098711
3098743
3100476
3100477
3102553
3102858
3108618
3108669
3109823
3110863
3110985
3111268
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.
Outros posts sobre TDF você pode conferir filtrando pela categoria TDF/ACR.
Top Renan, ajudou muito! Agora é a emoção de dar o go-live e ter que aplicar inúmeras notas aos 45 do segundo tempo por aqui hahaha
Mais uma vez obrigado!
Valeu Secco! Estamos implementando num ECC 605 agora, já passou das 150 notas. Esse está sendo mais divertido.
Muito bom o passo a passo, alguém já implementou em um ambiente ECC?
Estou fazendo agora, principal diferença é que num release mais antigo e com SP baixo tem bem mais notas
Meu colega implementou num ECC, deu 215 notas.
Renan, mas para o GRC NF-e precisamos esperar o support package 35, sabe se tem previsão?
No GRC precisa apenas da nota 3148222. Apenas as telas do GRC que serão atualizados no Support Package 35, ou seja, com a nota você já está habiltiado para enviar as tags novas corretamente e apenas elas não vão aparecer nas WedDynpros do GRC.
Mas com esse Recado, não faz menor sentido implementar a SAP Note:
Solution
All UI changes will only be delivered via the next support package.
If you have to implement these changes before implementing the support package, please carry out the steps as described in the correction instruction.
Caution: The necessary prerequisite SAP Notes listet in SAP Note 1397878 have to be implemented BEFORE implementing this SAP Note !!!
Eu acho que faz sentido, esses campos são basicamente irrelevantes nas telas do GRC (maior parte dos usuários nem olha esse tipo de detalhe na WD do GRC) então você pode implementar a nota e sair usando a funcionalidade (proxy e mapeamento).
O aviso de “Caution” é porque a nota tem changes de proxy, e para implementar essas alterações o Netweaver precisa estar atualizado conforme essa outra nota meciona.
Oi Augusto,
Fiz um segundo post falando exatamente sobre a parte do GRC NFE.
att,
Renan Correa
Fala Renan, tudo bem?
Aqui no Projeto, release 617 do ECC, já apliquei todas as notas (3142381, 3146447, 3142096, 3142108, 3142100 e 3142101) e seus pré-requisitos, inclusive a do GRC (3148222). As notas de compliance não são necessárias. Estamos tendo um dump no momento do envio da nota, onde descrevo abaixo o que está descrito na ST22. Na nota 3142108, todos os passos manuais foram realizados, inclusive o que inclui o método FILL_ADD_INFLIN onde aparentemente seria o erro em questão.
Segue abaixo a parte principal do texto do dump. Desde já, muito obrigado!!!
Erro tmp.exec. CALL_METHOD_NOT_IMPLEMENTED
Exceção CX_SY_DYN_CALL_ILLEGAL_METHOD
Programa ABAP CL_EX_CL_NFE_PRINT============CP
Die Ausnahme muß entweder verhindert werden, innerhalb der Prozedur
“IF_EX_CL_NFE_PRINT~FILL_ADD_INFLIN” “(METHOD)” abgefangen werden oder
ihr potentielles Auftreten in der RAISING-Klausel der Prozedur
deklariert werden.
Um die Ausnahme zu verhindern, beachten Sie bitte folgendes:
Die Klasse “ZTL_NFEE002P_CL_NFE_PRINT” muß die Methode
IF_EX_CL_NFE_PRINT~FILL_ADD_INFLIN
implementieren.
Probably the only way to eliminate the error is to correct the program.
–
If the error occurs in a non-modfied SAP program, you might be able to
find a solution in the SAP Notes system. If you have access to the SAP
Notes system, check there first using the following keywords:
“CALL_METHOD_NOT_IMPLEMENTED” CX_SY_DYN_CALL_ILLEGAL_METHOD
“CL_EX_CL_NFE_PRINT============CP” bzw. CL_EX_CL_NFE_PRINT============CM00L
“IF_EX_CL_NFE_PRINT~FILL_ADD_INFLIN”
Oi Luiz,
Falta criar uma implementação no método FILL_ADD_INFLIN da badi CL_NFE_PRINT. Pelo menos uma implementação em branco deve existir, do contrário esse erro é disparado.
att,
Renan Correa
Fala Renan, muito obrigado pelo feedback. Estou aqui agora dentro da badi CL_NFE_PRINT, na tela da interface IF_EX_CL_NFE_PRINT, onde tenho todos os métodos, inclusive o FILL_ADD_INFLIN. Como faço isso?
O problema nao é a interface, mas sim a implementação. Você deve abrir a implementação da BAdi e criar uma implementacao para este método.
Renan, seria pela SE19 mesmo esse procedimento? Em ‘Create Implementation” coloquei CL_NFE_PRINT em ‘classic badi’, e pressionei o botão para criar a implementação. Só que aí aparecem muitas sugestões de nomes para a implementação… o caminho é esse mesmo?
Oi, Pode Se18 ou se19. Você já tem uma implementação para a BadI e só precisa criar uma implementação para este método especificamente. A sua classe Z ZTL_NFEE002P_CL_NFE_PRINT precisa também de uma implementação para este método, além dos que já existem.
Aconselho você a procurar um colega ABAP para verificar esse cas, essa é uma alteração técnica que precisar ser salva em um request e testada posteriormente em qualidade.
Renan, blz??
No final das contas, uma colega me ajudou, e depois de algumas tentativas descobrimos que, após desativar o assistente de modificação, não aconteceu mais o dump.
Muito obrigado pela ajuda, e parabéns pelo seu blog.
Pessoal alguém teve um problema quando foi fazer o BC SET? Z_VEHICLE_VIEWS_SAP_APPL.bcs da nota 3146447 pós implementação da nota
Abaixo são essas views acho que vou ter que pegar de outro cliente que funcionou e colocar os dados na mão, mas se alguém souber de uma forma mais simples ajudaria muito!
J_1BVEHICTYPUSGV
J_1BVEHICLEUSAGV
J_1BVEHICLETYPEV
Eu subi o Bcset em um sistema sem erro, mas não fiz em várias versões diferentes.
Renan, boa noite. Aqui no projeto, a tab ”additional information”, assim como os campos de tipo ato concessório e ‘uso livre para inf adicional’ não estão aparecendo na J1B*N. Já aplicamos todas as notas. Tem ideia do que pode estar errado faltando?
Oi Bianca,
Configuração do screen control, lembrando que existe a configuração do cabeçalho/item e a configuração das ambas. Ambas são atribuídas por categoria de nota (e as de item também por categoria de item/serviço).
att,
Renan Correa
Adorei conhecer seu blog, tem muito artigos bem interessantes. Baixar anydesk no Android