Quando precisamos manter um controle ou acompanhamento de um procedimento específico no momento da entrada, modifique algum procedimento dentro do banco de dados dentro de um formulário em que temos a macro sc\_begin\_trans.

A macro sc\_begin\_trans é responsável por executar um procedimento de controle de transação noScriptCase, mas também pode ser complementada com o macrossc\_commit\_trans e sc\_rollback.

A macro sc\_commit\_trans é carregada, uma vez que o processo de controle tenha sido executado, pode ser por meio de uma condição, confirma a transação, ou seja, se todas as condições propostas forem atendidas, confirma a transação, pode ser de inserção, modificar ou excluir um registro.

Caso contrário, a macro sc\_rollback\_transque é responsável por cancelar as transações dadas pelo usuário, por exemplo, ao querer inserir, modificar ou excluir um registro, isso é responsável por cancelar ou omitir o procedimento.

Em seguida, no exemplo a seguir, ele é responsável por fazer um controle ao registrar:

1. No evento onAfterInsert, um controle é feito após a entrada:

![]()![](https://scriptcase-support.kayako.com/base/media/url/IzzjKzrW5pR8vhEklfG2TdTfWiP1Dvbo)

2. Ao executar, inserimos um código diferente de 85:

![]()![](https://scriptcase-support.kayako.com/base/media/url/LKyc9BlalvRdX6cVbBxWVszLbbUJoOEA)

Según la condición, si el código ingresado es distinto a 85, entoncesconfirma la transacción con la macro  sc\_commit\_trans.

3. Caso contrário, nós inserimos um registro com o código 85:

![](https://scriptcase-support.kayako.com/base/media/url/7FBLvLhDfVnVaVUZVH5MMnWSCqkfJWMr)

Dependendo da condição, se o código inserido for igual a 85, cancele a transação com a macro sc\_rollback\_trans.

4. Então, dentro do nosso administrador de banco de dados, você pode ver que o registro não foi carregado com o código 85, isso graças à macro sc\_rollback\_trans:

![](https://scriptcase-support.kayako.com/base/media/url/FKjLz9FKg3kKdpJPjssQaR2kPByQj9Fw)