JuanchoDev
Programmer
I´m trying to modify a register on a data base(access) and always get this error...any help ´ll be really appreciated.
procedure TForm3.Modificar1Click(Sender: TObject);
var cons1, cons2, cons3:string;
begin
if edit2.Text = edit9.Text then
begin
adoquery2.Close;
adoquery2.SQL.Text:='select id from colaboradores where usuario=';
adoquery2.Parameters.ParamByName('p').Value:=edit1.Text;
adoquery2.Open;
adoquery3.Close;
//cons1:='select colaboradores.id, colaboradores.usuario, colaboradores.password, colaboradores.nombre, colaboradores.apellido, colaboradores.direccion, colaboradores.telefono, colaboradores.email, colaboradores.web, colaboradores.rol, colaboradores.fecha ';
//cons2:='from colaboradores, roles ';
//cons3:='where colaboradores.rol=roles.id and colaboradores.id=';
adoquery3.SQL.Add('select colaboradores.id, colaboradores.usuario, colaboradores.password, colaboradores.nombre, colaboradores.apellido, colaboradores.direccion, colaboradores.telefono, colaboradores.email, colaboradores.web, colaboradores.rol, colaboradores.fecha ');
adoquery3.SQL.Add('from colaboradores, roles ');
adoquery3.SQL.Add('where colaboradores.rol=roles.id and colaboradores.id=') ;
adoquery3.SQl.Text:=adoquery3.Parameters.ParseSQL(adoquery3.SQL.Text,true);
//adoquery3.SQL.Text:=cons1+cons2+cons3;
//adoquery3.Parameters.ParseSQL(adoquery3.SQL.Text,true);
adoquery3.Parameters.ParamByName('p').Value:=adoquery2.Fields[0].AsInteger;
adoquery3.Open;
adoquery3.Edit;
adoquery3.Fields[1].AsString:=edit1.Text;
adoquery3.Fields[2].AsString:=edit2.Text;
adoquery3.Fields[3].AsString:=edit3.Text;
adoquery3.Fields[4].AsString:=edit4.Text;
adoquery3.Fields[5].AsString:=edit5.Text;
adoquery3.Fields[6].AsString:=edit6.Text;
adoquery3.Fields[7].AsString:=edit7.Text;
adoquery3.Fields[8].AsString:=edit8.Text;
//averiguo el rol
adoquery4.Close;
adoquery4.SQL.Text:='select id from roles where rol=';
adoquery4.Parameters.ParamByName('p').Value:=combobox1.Text ;
adoquery4.Open;
adoquery3.Fields[9].AsInteger:=adoquery4.Fields[10].AsInteger;
adoquery3.Fields[10].AsString:=edit10.Text;
adoquery3.Post;
showmessage('Registro modificado exitosamente!');
adoquery3.Close;
end
else
showmessage('Las Contraseñas no fueron confirmadas correctamente, deben ser iguales');
end;
procedure TForm3.Modificar1Click(Sender: TObject);
var cons1, cons2, cons3:string;
begin
if edit2.Text = edit9.Text then
begin
adoquery2.Close;
adoquery2.SQL.Text:='select id from colaboradores where usuario=';
adoquery2.Parameters.ParamByName('p').Value:=edit1.Text;
adoquery2.Open;
adoquery3.Close;
//cons1:='select colaboradores.id, colaboradores.usuario, colaboradores.password, colaboradores.nombre, colaboradores.apellido, colaboradores.direccion, colaboradores.telefono, colaboradores.email, colaboradores.web, colaboradores.rol, colaboradores.fecha ';
//cons2:='from colaboradores, roles ';
//cons3:='where colaboradores.rol=roles.id and colaboradores.id=';
adoquery3.SQL.Add('select colaboradores.id, colaboradores.usuario, colaboradores.password, colaboradores.nombre, colaboradores.apellido, colaboradores.direccion, colaboradores.telefono, colaboradores.email, colaboradores.web, colaboradores.rol, colaboradores.fecha ');
adoquery3.SQL.Add('from colaboradores, roles ');
adoquery3.SQL.Add('where colaboradores.rol=roles.id and colaboradores.id=') ;
adoquery3.SQl.Text:=adoquery3.Parameters.ParseSQL(adoquery3.SQL.Text,true);
//adoquery3.SQL.Text:=cons1+cons2+cons3;
//adoquery3.Parameters.ParseSQL(adoquery3.SQL.Text,true);
adoquery3.Parameters.ParamByName('p').Value:=adoquery2.Fields[0].AsInteger;
adoquery3.Open;
adoquery3.Edit;
adoquery3.Fields[1].AsString:=edit1.Text;
adoquery3.Fields[2].AsString:=edit2.Text;
adoquery3.Fields[3].AsString:=edit3.Text;
adoquery3.Fields[4].AsString:=edit4.Text;
adoquery3.Fields[5].AsString:=edit5.Text;
adoquery3.Fields[6].AsString:=edit6.Text;
adoquery3.Fields[7].AsString:=edit7.Text;
adoquery3.Fields[8].AsString:=edit8.Text;
//averiguo el rol
adoquery4.Close;
adoquery4.SQL.Text:='select id from roles where rol=';
adoquery4.Parameters.ParamByName('p').Value:=combobox1.Text ;
adoquery4.Open;
adoquery3.Fields[9].AsInteger:=adoquery4.Fields[10].AsInteger;
adoquery3.Fields[10].AsString:=edit10.Text;
adoquery3.Post;
showmessage('Registro modificado exitosamente!');
adoquery3.Close;
end
else
showmessage('Las Contraseñas no fueron confirmadas correctamente, deben ser iguales');
end;