Você está na página 1de 3

Dicas e truques de SAP - Triggers de Bancos de dados no SAP

– TAXBRA

Triggers de Bancos de dados no SAP – TAXBRA

Como um grande saudosista dos bancos de dados, sempre senti a falta de triggers no SAP.
Ao longo do tempo, sempre me disseram que isso não existia no SAP. Ou seja, toda vez
que ocorrer um Insert/Update ou Delete em uma determinada tabela o sistema executa uma
ação pré-definida para isso. Isso era muito comum em situações de Cabeçalhos/itens ou
Pais/Filhos onde usávamos estes recursos para que não houvesse filhos sem pais ou itens
sem cabeçalhos e garantíamos isso com as famosas Triggers. Dessa mesma
forma, também incluíamos regras de negócio nos bancos de dados, o que facilitava e
agilizava muito os desenvolvimentos.
Contudo, uma das principais regras de desenvolvimento no SAP é não colocar regras em
bancos de dados, para que aplicação possa utilizar o banco de dados que melhor atenda a
necessidade de cada cliente.
Outro dia em um cliente surgiu a necessidade de fazermos a migração on-line de algumas
tabelas e registros da localização brasileira mediante algumas condições apenas.
Meio que sem solução para o problema, verifiquei que o SAP faz a migração on-line de
alguns registros via eventos ( Triggers ) no SAP. A partir daí ficou fácil localizar um
enhencement e desenvolver um ABAP para solucionar o problema de forma pontual e
cirúrgica sem grandes impactos.
Os desenvolvimentos Standard SAP para migração de dados on-line, de certa forma,
também tem as suas triggers. Na verdade com o nome de eventos, mas não deixam de ser
um gatilho que podem ser usados em qualquer tabela do SAP. Este é um recurso
interessante que pode ser utilizado em desenvolvimentos, onde a própria SAP, para atender
as necessidades da TAXBRA já utiliza.
Como exemplo, via se11, abaixo, estarei mostrando uma trigger da tabela de localização
brasileira J_1BTXIC3 ( ICMS ).
Após colocar a tabela na transação SE11 e dar um enter, entrar nas opções abaixo:

Depois de entrar no gerador de atualização da tabela, entrar nas opções abaixo:

É meio estranho a opção Horas ( Time ) para quem estiver logado em inglês mas é isso.
Depois de entrar no evento, clique no botão abaixo para visualizar o código abap que pode
ser inserido neste ponto dos desenvolvimentos.