Percorrer Dbgrid para validar se o campo já foi adicionado??
Bom dia a todos!
Alguém sabe como faço para verificar em um Dbrig se o registro já foi inserido?, tipo assim tenho um dbgrid que vou adicionando os registro, digamos que na primeira linha eu adiciono um codigo de um produto de numero 54 e vou tentar adicionar novamente este código nas linhas abaixo. gostaria de fazer de uma forma que não permitisse eu adicionar novamente o mesmo código.
Aceito Sugestões...
Muito Obrigado a todos!
Jelves
Alguém sabe como faço para verificar em um Dbrig se o registro já foi inserido?, tipo assim tenho um dbgrid que vou adicionando os registro, digamos que na primeira linha eu adiciono um codigo de um produto de numero 54 e vou tentar adicionar novamente este código nas linhas abaixo. gostaria de fazer de uma forma que não permitisse eu adicionar novamente o mesmo código.
Aceito Sugestões...
Muito Obrigado a todos!
Jelves
Jelves
Curtidas 0
Respostas
Rosivaldo
23/07/2003
Declara o campo que você não quer repetição como único.
Qualquer dúvida diz qual o banco q você tá usando que eu te falo como fazer isso (desde que eu saiba, hehehehe)
:)
Qualquer dúvida diz qual o banco q você tá usando que eu te falo como fazer isso (desde que eu saiba, hehehehe)
:)
GOSTEI 0
Jelves
23/07/2003
Rosivaldo, estou usando Interbase com Dbexpress, na criação das minhas tabelas eu criei o campo como unique, é justamente por isso que tenho que tratar este campo todas as vezes que digitar o código do produto tenho que verificar se o mesmo código não foi digitado nas linhas acima do grid.
Obrigado pela força!
Jelves
Obrigado pela força!
Jelves
GOSTEI 0
Rosivaldo
23/07/2003
olha jelves, talvez se você colocasse uma query no after post, ou no before insert, para checar se já existe o produto cadastrado talvez funcione.
GOSTEI 0
Jelves
23/07/2003
Desculpe-me a inexperiência, mais como seria???
GOSTEI 0
Rosivaldo
23/07/2003
Bom, você pode tentar assim, ou então colocar isso como parâmetro. Isso é apenas uma dica, você pode pesquisar outras maneiras ou até mesmo os colegas tenham outras maneiras de fazer!
procedure TForm1.IBTable1AfterPost(DataSet: TDataSet); begin with IBQuery1 do begin SQL.Clear; SQL.Add(´select CodigoProduto from Produtos where CodigoProduto = ´ + IntToStr(IBTable1.FieldByName(´CodigoProduto´).AsInteger)); if not Prepared then Prepare; Open; if RecordCount > 0 then Raise Exception.Create(´Já existe produto com esse código, favor tente novamente´); end; end;
GOSTEI 0