Setar registro para edição através de consulta
13/08/2004
0
tenho um aplicativo de cadastro que terá em breve cerca de 32.000 registros. No form de cadastro, caso alguém queira fazer alguma alteração ou exclusão - e não use o dbnavigator, lógico - eu coloquei um edit e um speedbutton com uma query em que o usuário digita o código desejado e o form exibe o resultado, eis algumas linhas do onclick do speedbutton:
with query1 do begin close; parambyname(´cad´).asinteger := strtoint(edcod.text); open; if recordcount = 0 then showmessage(´Nenhum Registro Selecionado!´); end; dbficha.text := inttostr(query1.fieldbyname(´ficha´).asinteger); dbcadastro.text := inttostr(query1.fieldbyname(´cad_aluno´).asinteger);
Elias Jr
Posts
13/08/2004
Lucas Silva
with query1 do begin close; parambyname(´cad´).asinteger := strtoint(edcod.text); open; if IsEmpty then // Assim Fica bem + rapido; showmessage(´Nenhum Registro Selecionado!´) else Delete; // Isso deleta o registro que está apontado na query end; dbficha.text := inttostr(query1.fieldbyname(´ficha´).asinteger); dbcadastro.text := inttostr(query1.fieldbyname(´cad_aluno´).asinteger);
13/08/2004
Elias Jr
utilizei a sua dica e ela funciona quando quero excluir mas quando tento alterar acontece o mesmo em cada dbedit que eu clico (ou seja, se eu quero alterar o nome, quando clico no edit o nome volta para o do primeiro registro). Vou continuar tentando resolver isso. Mesmo assim obrigado por mostrar o caminho.
13/08/2004
Lucas Silva
if not IsEmpty then Edit;
Depois disto é só atribuir os valores aos campos, e salvar as alterações...
FieldByName(´campo´).asString := Edit1.text; post; // para salvar;
seria isto?
Clique aqui para fazer login e interagir na Comunidade :)