ATUALIZAR FORM

PERCIFILHO 13/10/2011 12:35:52
#386590
Boa tarde, pessoal.
Gostaria de saber se tem como eu fazer uma coisa: Tenho um formulário de cadastro (conforme imagem).
Se esta tela está aberta para na máquina do usuário Paulo e também do usuário Cesar.
Se o Paulo adicionar um registro, como fazer para na máquina do Cesar aparecer uma mensagem para ele atualizar a tela dele, para o registro novo aparecer, sem ele precisar fechar a tela e abrí-la de novo?
Será que a solução é usar um Timer? Se for, alguém tem algum exemplo? E será que com uma tabela onde tenham muitos registros, o sistema pode ficar lento por conta desse Timer?

Até mais.
PERCIFILHO 13/10/2011 15:24:02
#386610
Ninguém?

????
RODRIGOFERRO 13/10/2011 15:53:56
#386613
é porque acontece o seguinte, eu quase nunca vejo uma situação que requer uma situação dessa, eu confesso que nunca fiz e que acredito que pesaria na performance !
eu acredito que são poucos os ramos que precisam de uma funcionalidade dessa, por exemplo ou so tem uma ou duas pessoas para que usem o programa cadastrando ou normalmente somente uma pessoa fica a cargo de editar [Ô]aquele[Ô] cliente..

é como se fosse um processo, eu Rodrigo fiquei de editar o Cliente [Ô]teste[Ô] nao vejo motivos para passar para dois editarem ao mesmo tempo !

Qual a sua situação e real necessidade para implementar essa [Ô]funcionalidade[Ô] ?

Abraço
PERCIFILHO 13/10/2011 16:28:54
#386617
Olá, amigo. Talvez minha explicação não foi das mais claras.
No caso que eu citei, não é que 2 usuários irão editar o mesmo registro. é assim, supondo que o primeiro usuário está com a tela do cadastro aberta, como a imagem que eu enviei. Aí, um segundo usuário inclui um cliente novo na tabela. Para o primeiro usuário, esse novo registro que [Ô]entrou[Ô] na tabela, não vai aparecer. Somente irá aparecer quando ele fechar a tela a abrir novamente. Correto? Pois então, eu pensei que nesse caso, quando o segundo usuário gravou o registro na tabela, aparecesse uma mensagem na tela do primeiro usuário dizendo que existe(m) registro(s) novo(s). Aí, ele clica num botão para atualizar.
é isso.

Até mais.
KERPLUNK 13/10/2011 17:51:25
#386626
O que vc quer fazer, pode ser feito, mas sinceramente eu não vejo nenhuma necessidade. Mesmo assim, uma alternativa seria::

Colocar todo o seu CRUD num webservice/winservice. Ao adicionar/alterar/remover algum registro, gravar em alguma variável, a hora e que cadastro foi mexido. Na aplicação, no form correspondente ao cadastro, coloque um timer que vai ficar consultando uma rotina que retorna a hora da última alteração para cada cadastro. Se a hora não bater, teve alteração, então faça o que quiser.

Isso vai ser bem trabalhoso e oneroso quanto ao desempenho para sua aplicação.
PERCIFILHO 14/10/2011 07:21:44
#386672
Valeu, Kerplunk. A minha grande preocupação é justamente quanto ao desempenho do sistema. Se for para ficar lento, se de repente começar a travar, aí a coisa complica. Vou tentar pensar em outra solução mais eficaz. Mesmo assim muito obrigado pela disponibilidade em me responder.

Até mais.
Tópico encerrado , respostas não são mais permitidas