COMPARAÇÕES DE DADOS
BOM DIA A TODOS OS COLEGAS DO FORUM...
Bom, tenho a seguinte dúvida:
Num form tenho 6 Editis e um MaskEdit, na seguinte ordem: num_serie, equipamento, marca, modelo, comprado_em, cor e voltagem. Quando eu chamo este form, pelo evento OnActivate eu lanço nestes componentes os respectivos dados existentes na tabela EQUIPAMENTOS.
O que eu quero é fazer com que o Delphi compare os valores contidos em cada componente e compare com os dados que ficaram na tabela e, havendo alguma diferença, sugerir ao usuário que houve uma alteração e perguntar se deseja salvar. Com isso lançar os dados dos componentes deste form, na tabela EQUIPAMENTOS obtendo assim uma edição (alteração).
No momento eu estou fazendo a comparação, componente por componente mas trata-se de um form pequeno, então se eu for trabalhar com um form que tenha uns 20 a 25 edits, o trabalho ficará muito prolixo.
Alguém tem alguma sugestão pra dar??? Desde já agradeço a todos e desejo boas festas e um Ano Novo cheio de planos e projetos...
Fiquem com Deus.
Bom, tenho a seguinte dúvida:
Num form tenho 6 Editis e um MaskEdit, na seguinte ordem: num_serie, equipamento, marca, modelo, comprado_em, cor e voltagem. Quando eu chamo este form, pelo evento OnActivate eu lanço nestes componentes os respectivos dados existentes na tabela EQUIPAMENTOS.
O que eu quero é fazer com que o Delphi compare os valores contidos em cada componente e compare com os dados que ficaram na tabela e, havendo alguma diferença, sugerir ao usuário que houve uma alteração e perguntar se deseja salvar. Com isso lançar os dados dos componentes deste form, na tabela EQUIPAMENTOS obtendo assim uma edição (alteração).
No momento eu estou fazendo a comparação, componente por componente mas trata-se de um form pequeno, então se eu for trabalhar com um form que tenha uns 20 a 25 edits, o trabalho ficará muito prolixo.
Alguém tem alguma sugestão pra dar??? Desde já agradeço a todos e desejo boas festas e um Ano Novo cheio de planos e projetos...
Fiquem com Deus.
Aloisio Santos
Curtidas 0
Respostas
Marcos Oliveira
24/12/2013
Bom dia!
Uma solução fácil seria você usar uma variável booleana, global e inicializada com False, e sempre que o usuário alterar o conteúdo de um campo, você altera a variável para True.
Link todos os seus campos a um mesmo evento "OnChange", e nesse evento passe a variável para True. Ao fechar o form, questione a variável e se ela for True, mostre uma mensagem ao usuário.
Porém, nesse caso, mesmo se o usuário alterar o conteúdo do campo para o mesmo valor que ele já tinha, o sistema irá avisar que houve alterações.
Mas eu acho que isso não é problema.
Att,
Marcos
Uma solução fácil seria você usar uma variável booleana, global e inicializada com False, e sempre que o usuário alterar o conteúdo de um campo, você altera a variável para True.
Link todos os seus campos a um mesmo evento "OnChange", e nesse evento passe a variável para True. Ao fechar o form, questione a variável e se ela for True, mostre uma mensagem ao usuário.
Porém, nesse caso, mesmo se o usuário alterar o conteúdo do campo para o mesmo valor que ele já tinha, o sistema irá avisar que houve alterações.
Mas eu acho que isso não é problema.
Att,
Marcos
GOSTEI 0
Aloisio Santos
24/12/2013
Bom dia!
Uma solução fácil seria você usar uma variável booleana, global e inicializada com False, e sempre que o usuário alterar o conteúdo de um campo, você altera a variável para True.
Link todos os seus campos a um mesmo evento "OnChange", e nesse evento passe a variável para True. Ao fechar o form, questione a variável e se ela for True, mostre uma mensagem ao usuário.
Porém, nesse caso, mesmo se o usuário alterar o conteúdo do campo para o mesmo valor que ele já tinha, o sistema irá avisar que houve alterações.
Mas eu acho que isso não é problema.
Att,
Marcos
Uma solução fácil seria você usar uma variável booleana, global e inicializada com False, e sempre que o usuário alterar o conteúdo de um campo, você altera a variável para True.
Link todos os seus campos a um mesmo evento "OnChange", e nesse evento passe a variável para True. Ao fechar o form, questione a variável e se ela for True, mostre uma mensagem ao usuário.
Porém, nesse caso, mesmo se o usuário alterar o conteúdo do campo para o mesmo valor que ele já tinha, o sistema irá avisar que houve alterações.
Mas eu acho que isso não é problema.
Att,
Marcos
Acredito que sirva. Vou tentar e posto o resultado aqui. Mas de antemão já dá pra saber que não será possível identificar o c campo modificado, né mesmo?
Vou tentar juntar sua dica com mais algumas funções e ver no que vai dar... Obrigado!!!!
Ah, se alguém tiver mais alguma sugestão... pode falar... será muito bem vinda... rsrs
GOSTEI 0