ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

State [dsInsert, dsEdit]

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
Rogazzi
Novato
Novato


Registrado: Quarta-Feira, 10 de Março de 2004
Mensagens: 50

MensagemEnviada: Sáb Out 12, 2019 4:42 pm    Assunto: State [dsInsert, dsEdit] Responder com Citação

Olá Amigos!

Estou com um problema e garimpando na net sempre achei a mesma solução, porém no meu sistema não funciona.

Estou tentando ver o estado da tabela na hora da gravação dos dados para aparecer a mensagem de item gravado com sucesso ou item alterado com sucesso.

Segue o meu código (que não está funcionado)

if intConfirmaGravar = IDYES then
begin
DMSistema.QConfigEmail.Post;

if DMSistema.QConfigEmail.State = dsInsert then
begin
Application.MessageBox(Pchar('Conta ' +
DMSistema.QConfigEmailNomeConta.AsString + ' Cadastrada com Sucesso!'),
PChar(strNomeSistema + ' - Aviso'), Mb_Ok + Mb_IconInformation);
end;

if DMSistema.QConfigEmail.State = dsEdit then
begin
Application.MessageBox(Pchar('Conta ' +
DMSistema.QConfigEmailNomeConta.AsString + ' alterada com sucesso!'),
PChar(strNomeSistema + ' - Aviso'), Mb_Ok + Mb_IconInformation);
end;
btnCancelarClick(FormCadContaEmail);
end
else
begin
btnCancelarClick(FormCadContaEmail);
end;

Estou usando o FireDac com TFDQuery e também já coloquei Data.DB na uses.

Como dito acima, sem sucesso.

Abraço
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Sáb Out 12, 2019 5:05 pm    Assunto: Responder com Citação

Boa tarde,

Acho que você teria que verificar a propriedade State antes da execução do método Post, pois o State será alterado em caso de sucesso na execução desse método.
Segue uma sugestão de código para testes:

Código:
var
  strOperacao: string;
  // ...
begin
  // ...
  if intConfirmaGravar = IDYES then
  begin
    if DMSistema.QConfigEmail.State = dsInsert then
      strOperacao := 'Cadastrada'
    else
      strOperacao := 'Alterada';
    DMSistema.QConfigEmail.Post;
    Application.MessageBox
      (Pchar('Conta ' + DMSistema.QConfigEmailNomeConta.AsString + ' ' +
             strOperacao + ' com Sucesso!'),
       Pchar(strNomeSistema + ' - Aviso'),
       Mb_Ok + Mb_IconInformation);


Espero que ajude

_________________
Assinatura: https://www.imoveisemexposicao.com.br/imoveis-alugar-guarulhos!pimentas-comercial_ou_industrial-galpão
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Rogazzi
Novato
Novato


Registrado: Quarta-Feira, 10 de Março de 2004
Mensagens: 50

MensagemEnviada: Sáb Out 12, 2019 5:14 pm    Assunto: Resolvido!! Responder com Citação

Valeu a ajuda imex, era isso mesmo.
Deu certo.
Muito obrigado!!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB