Problem with Delphi 10.1 + FireDAC (AutoPost)

1

I have a simple procedure to save to the database. In it I also made a control cases the required fields are not filled up causing the system to avoid saving wrong data or missing information.

However by mystery or magic the record is saved in the database. I do not know if you have any configuration of _FireDAC_ in the and table or in the connection component. If someone has already gone through this and can help me, thank you.

Code

procedure TfrmManutencaoUsuarios.btnSalvaUnidadeClick(Sender: TObject);
begin
  // verifica os items
  if dbeUsuarioUnidade.Text = '' then
  begin
    Application.MessageBox('Campo Nome do Usuário é Obrigatório!','Aviso', 
        MB_OK+MB_ICONEXCLAMATION);
    dbeUsuarioUnidade.SetFocus;
    exit;
  end;

  if dbcUsuarioUnidade.Text = '' then
  begin
    Application.MessageBox('Nome da Unidade é Obrigatório!','Aviso', 
        MB_OK+MB_ICONEXCLAMATION);
    dbcUsuarioUnidade.SetFocus;
    exit;
  end;
  // Verifica se a Unidade já está acessível para o Usuário
  if DataModuleGeral.tbUsuariosUnidades.Locate('USUARIO_NOME;UNIDADE_NOME',
     VarArrayOf([dbeUsuarioUnidade.Text, dbcUsuarioUnidade.Text]),[]) then
  begin
    Application.MessageBox('Esta Unidade já está Acessível para este 
       usuário!','Aviso', MB_OK+MB_ICONEXCLAMATION);
    dbcUsuarioUnidade.SetFocus;
    exit;
  end else
  begin
    // Salva na Tabela
    DataModuleGeral.tbUsuariosUnidades.Post;
  end;
end;
    
asked by anonymous 20.04.2017 / 22:15

1 answer

0

And if so, why not? I did it in my and it works here for me.

To Enable:

DataModuleGeral.SeuBanco.TxOptions.AutoCommit := True;

To Disable

DataModuleGeral.SeuBanco.TxOptions.AutoCommit := False; 
    
11.07.2017 / 21:43