Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: DI-1719

Se não ocorrer nenhum erro durante o ciclo de transação, o bloco commit Commit da transação (commit transaction) irá confirma todas as ações realizadas desde o início da transação no banco de dados com o namespace selecionado.


Image Added

Figura 1 - Bloco Commit da Transação


Nota

Este bloco utiliza a interface

Java

Java TransactionManager

, ela

. Ela define

os

métodos para possibilitar que

permitem que um

o servidor de aplicações gerencie os limites de transações

. Antes de utilizar o bloco Commit da transação é necessário iniciar o ciclo de transação com o bloco Iniciar Transação

Image Removed

Figura 1 - Bloco Commit da Transação

Nota

O bloco Commit da Transação funciona somente com blocos do tipo banco de dados. O Cronapp já possui na thread. Dessa forma, o Cronapp oferece um serviço de controle de transação em seus blocos de que aguardará o final da thread para definir se irá atualizar o banco de dados .A fim de evitar problemas futuros na aplicação do usuário, é estritamente necessário entender o escopo (commit) ou não realizar nenhuma ação (rollback). Por isso é importante entender a necessidade do projeto e saber quando utilizar os blocos de transação, evitando, por exemplo, fechar um ciclo de transação fora do escopo do da função de bloco de programação. 

Compatibilidade

  • Bloco servidor: cronapi.database.Operations.commitTransaction()

Retorno

O bloco não possui retorno.

Parâmetros

O bloco não possui parâmetros.

Características do bloco

O bloco Commit da Transação é vinculado ao namespace da aplicação. Por padrão o Cronapp possui o namespace "app", o qual será utilizado neste exemplo. Para configurá-lo clique no ícone de engrenagem (seta da figura 2), em seguida, será aberta a janela com uma caixa de seleção solicitando a escolha do namespace.


Figura 2 - Seleção do namespace

Exemplo

Inicialmente criamos uma entidade denominada "carro" no diagrama no Diagrama de dados, em seguida, criamos uma view, na qual inserimos dois componentes: entrada de texto e um  e um botão, que será responsável por ativar a função. Para que o exemplo abaixo funcione, é necessário vincular um formulário de referência ao bloco. Acesse o tópico tópico Propriedades do Blockly da documentação  da documentação Bloco de programação para  para mais detalhes.

A função abaixo inicia uma transação com o objetivo de inserir dados abaixo inicia uma transação antes de inserir dados na entidade "carro", os dados são obtidos através do bloco dos blocos Obter valor do campo, que receberá os inputs do componente entrada de texto, na view, em seguida, é necessário confirmar e efetivar as mudanças realizadas durante a transação no banco de dados, para isso, utilizamos o bloco Commit da Transação. Caso a operação não ocorra de forma correta commitar a transação. Caso ocorra algum problema, o erro será impresso no console Console do depurador Depurador e a operação será desfeita através do não será concluída, devido ao bloco Rollback da Transação. O bloco try catch foi utilizado para garantir o fluxo de execução.


Figura 2.1 - Função que inicia uma transação de inserção no banco de dados e a confirma no final


Execute o projeto e preencha os dados necessários.


Image Modified

Figura 2.2 - Inserindo dados do carro


O resultado pode ser conferido abaixo. Como não ocorreu nenhum erro durante a transação, os dados foram inseridos de forma correta no banco.



Figura 2.3 - Resultado após a inserção e salvamento das informações no banco de dos dados

Nesta página

Índice