Chat Interno - Delphi

Delphi

28/11/2015

Boa tarde, eu queria fazer uma espécie de chat interno no meu sistema, mas não instantâneo, tipo MSN, e sim como se fosse um email, um usuário manda a mensagem, e quando o outro usuário que recebeu a mensagem loga, recebe esta mensagem.

Queria fazer tudo por tabela, a tabela salvando a mensagem, e na programação verificando com usuário receberá esta mensagem, fazendo assim tudo por Query(SQL). Sem nenhum componente como aqueles de Cliente-Servidor e etc... É possível fazer desta forma?
Erick

Erick

Curtidas 0

Mais Respostas

William

William

28/11/2015

Não é uma das melhores arquiteturas, mas é possível sim.

Basicamente quando os usuários logarem deve ser executada uma query pesquisando se existe mensagem não lida para o "nick name" daquele usuário.

Se existir aí você decidi onde vai exibir, se vai ser com DBGrid, Memo ou etc ..

Ainda pode ser adicionado um Timer para verificar de tempos e tempos se existe mensagem para o usuário logado.
GOSTEI 0
Willer Silva

Willer Silva

28/11/2015

Olá, Boa Noite!

Como resolver o seguinte problema no meu código, onde o mesmo é para ser localizado os clientes cadastrados. Segue abaixo o código.
Me ajudem para a resolução desse problema.

procedure TFclientes.dbLocalizarChange(Sender: TObject);
begin
with DMpesq.cdsPesqCliente do
begin
close;
commandtext := 'Select * from nome where nome like ' + QuotedStr(dbLocalizar.Text + '%');
open;
end;
end;


Erro: raised exception class tdbxerror with message 'table unknown - line 1, column 20
GOSTEI 0
William

William

28/11/2015


Erro: raised exception class tdbxerror with message ''table unknown - line 1, column 20


A mensagem indica que o nome da tabela que está sendo usado na cláusula FROM do SELECT é desconhecido!
GOSTEI 0
Erick

Erick

28/11/2015

William (Devwilliam), primeiramente, obrigado pela resposta!
Cara, eu estruturei o sistema, está funcionando certinho, estou fazendo testes agora, só que na hora de encaminhar, eu tinha que clicar no dbgrid, selecionado quais usuarios eu gostaria de encaminhar a mensagem, porém, para não ser clicado duas vezes, e buggar o sistema, gostaria que quando clicasse na linha do dbgrid (selected rows =true) , a linha sumisse ou desabilitasse... Voce teria uma solução pra isso? Obrigado
GOSTEI 0
POSTAR