Skip to Content
Author's profile photo Former Member

Implementando TDF – Determinar Tax Code no Pedido de Compra usando o BRF+ – PARTE 1

No documento Implementando TDF – Determinar Tax Code no Pedido de Compra – Tipo de condição NAVS  eu demonstrei um exemplo de como fazer a determinação do IVA de MM usando o tipo de condição NAVS. Agora vou demonstrar um exemplo simples de como fazer isso através da ferramenta BRF+.

Não vou aqui me aprofundar nos recursos da ferramenta (que são muitos) ou mesmo detalhar os objetos, mas apenas demonstrar como é simples de utilizá-lo.


Este não não é um caso real e o cenário consiste em criar uma tabela de decisão no BRF+ onde o tax code será determinado conforme o fornecedor e o uso do material. Este exemplo é usado para determinar o tax code mas você pode usar o BRF+ para determinar outros campos ou mesmo fazer validações no seu pedido de compra ou outro objeto no sap como: cliente, fornecedor, ordem de vendas, etc.


* O cenário descrito neste documento não requer a licença do TDF; quanto ao uso do BRF+, este não requer licenciamento adicional visto compõe o ERP através do NetWeaver.

Veja abaixo os passos para configuração do cenário. Você irá precisar acesso de desenvolvedor para criar/alterar a BAdI no pedido de compra para chamar a função que será criada no BRF+.

Bom… vamos lá! Mão na massa!!!

Passo 1. Execute a transação BRFPLUS.

Screen Shot 2014-12-19 at 1.48.18 PM.png

Passo 2. Selecione a opção Criar aplicação no menu Workbench.

Screen Shot 2014-12-19 at 1.50.19 PM.png

Passo 3. Entre com as informações da sua aplicação e clique no botão Criar e navegar para o objeto.

Screen Shot 2014-12-19 at 1.53.49 PM.png

Passo 4. Selecione a pasta Objetos contidos, selecione a Função e clique no botão Criar Objeto.

Screen Shot 2014-12-19 at 1.56.25 PM.png

Passo 5. Entre com as informações da sua função e clique no botão Criar e navegar para o objeto.

Screen Shot 2014-12-19 at 2.02.49 PM.png

Passo 6. Selecione a pasta Assinatura e clique no botão Inserir novo objeto dados.

Screen Shot 2014-12-19 at 2.12.20 PM.png

Passo 7. Selecione na pasta Características de elemento, a opção Ligar a elemento Data Dictionary.

Screen Shot 2014-12-19 at 2.17.04 PM.png

Passo 8. Entre com o elemento LIFNR e clique no botão OK.

Screen Shot 2014-12-19 at 2.30.20 PM.png

O sistema irá complementar com os dados do elemento. Clique no botão Criar.

Screen Shot 2014-12-19 at 2.30.33 PM.png


Confirme para gravar a função.

Screen Shot 2014-12-19 at 2.30.47 PM.png

Passo 9. Repita os passos 6-9 e insira o elemento J_1BMATUSE e confirme para gravar as alterações.

Screen Shot 2014-12-23 at 4.44.53 PM.png

Passo 10. Selecione a função criada, no caso Func IVA MM.

Screen Shot 2014-12-23 at 4.45.48 PM.png


Passo 11. Clique no icone (folha) ao lado do link Ações e selecione a opção Criar…


* certifique-se de estar no modo edição (Processar).

Screen Shot 2014-12-23 at 4.47.21 PM.png

Passo 12. Crie o elemento MWSKZ e clique no botão Criar e navegar para o objeto e confirme para salvar as alterações.

Screen Shot 2014-12-23 at 4.49.06 PM.png

Passo 13. Selecione a função novamente e clique na aba Conjuntos de regras atribuídos.

Screen Shot 2014-12-23 at 4.55.28 PM.png

Passo 14. Clique no botão Criar conjunto de regras e entre com as informações da regra conforme a imagem. Clique no botão Criar e navegar para o objeto e salve as alterações.

Screen Shot 2014-12-23 at 4.58.46 PM.png

Passo 15. Selecione a regra recém criada.

Screen Shot 2014-12-23 at 5.04.43 PM.png


Passo 16. Na aba Regras, clique no botão Inserir regra e selecione a opção Criar…

Screen Shot 2014-12-23 at 5.07.40 PM.png


Passo 17. Entre com a descrição e clique em Se Nenhuma condição atribuida. Atribuir condição… selecione Utilizar intervalo de valores de… / Fornecedor e clique no botão OK.

Screen Shot 2014-12-23 at 7.38.20 PM.png


Selecione a opção não é inicial. Você poderia aqui processar diretamente a tabela de decisão ou mesmo validar se o tax code já foi determinado pelo usuário.

Screen Shot 2014-12-23 at 7.38.40 PM.png


Passo 18. Em Depois Inserir selecione a opção Processar expressão e Criar.

Screen Shot 2014-12-23 at 7.42.18 PM.png


Passo 19. Em Tipo selecione a opção Tabela de decisões e complemente as informações conforme imagem abaixo. Confirme as alterações.

Screen Shot 2014-12-23 at 5.29.02 PM.png


Passo 20. Na aba Coluna de condições, clique no botão Inserir coluna e selecione a opção De objetos de dados de contexto…

Screen Shot 2014-12-23 at 5.32.07 PM.png


Passo 21. Selecione o objeto LIFNR e clique no botão Selecionar.

Screen Shot 2014-12-23 at 5.37.31 PM.png


Repita o procedimento e inclua o objeto J_1BMATUSE; marque entrada obrigatória para os dois objetos.

Screen Shot 2014-12-23 at 5.39.52 PM.png


Passo 22. Na aba Coluna de resultados, clique no botão Inserir coluna de objeto de dados.Clique no botão procurar e selecione o objeto MWSKZ.

Screen Shot 2014-12-23 at 5.42.47 PM.png

Screen Shot 2014-12-23 at 5.49.39 PM.png

Passo 23. Em detalhes clique no botão Inserir linha nova e selecione a opção Entrada direta de valor no campo do Fornecedor.

Screen Shot 2014-12-23 at 5.52.17 PM.png


Entre com um código de fornecedor válido.

Screen Shot 2014-12-23 at 6.00.14 PM.png

Passo 24. Complemente a tabela com os demais dados conforme seu cenário. Ou seja, aqui você estará definindo qual o IVA que deve ser retornado quando o sistema buscar pelo fornecedor e pelo uso do material.


Repare que você pode exportar/importar sua tabela de decisões para o excel. Facilitando a manutenção das regras.

Screen Shot 2014-12-23 at 6.01.58 PM.png

Passo 25. Clique no botão Gravar.

************ devido a limitação de imagens por documento, o mesmo teve que ser dividido em partes.

Continuação aqui -> Parte 2.

Assigned Tags

      7 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Silvio Miranda
      Silvio Miranda

      Show de bola o exemplo.. testei e funcionou perfeitamente (embora as minhas telas aqui estejam um pouco diferentes da sua)... vou adaptar esse exemplo para um caso real de determinação de IVA.. valeu.. obrigado pelas dicas...!!!

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Legal Silvio! Obrigado pelo feedback!

      O propósito é exatamente este; que o pessoal teste as funcionalidades!

      abraço

      Eduardo Chagas

      Author's profile photo Former Member
      Former Member

      Fui fazer um teste no nosso ambiente de DEV e o mesmo retornou erro no ID do objeto. Existe alguma nomenclatura padrão?

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Oi Jeferson Costa

      Certifique se você informou na BadI o ID da função e não da aplicação ou da regra.

      Veja abaixo a notação indicada.

      Naming Conventions for BRFplus - Business Rule Framework plus (BRFplus) - SAP Library

      Abraço

      Eduardo Chagas

      Author's profile photo Former Member
      Former Member

      Eduardo,

      Estou tentando fazer os steps mas na hora de criar a tabela da função estou recebendo o seguinte erro:

      500 SAP Internal Server Error

      ERROR: The ASSERT condition was violated. (termination: RABAX_STATE)

      Sabe me dizer se é perfil isso?

      Att,

      Alan Oliveira

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Oi Alan

      Provavelmente precisa aplicar nota. Dê uma olhada no support.sap.com

      Abraço

      Eduardo Chagas

      Author's profile photo Former Member
      Former Member

      Obrigado Eduardo,

      Realmente era uma nota, apliquei a nota 2049928 e o problema foi resolvido.

      Att,

      Alan Oliveira