buenas tardes: tengo un problema que es que todavia no se como puedo insertar registros en el campo de la clve foranea. les adjunto las pantallas para mas o menos vean como estoy trabando y puedan decirme donde esta mi error.
el codigo para el boton ok es el siguiente:
Código Delphi
[-]procedure TFNcontacto.btokClick(Sender: TObject);
var
id: integer;
c: tbookmark;
begin
c:= dmcontactos.QContactos.GetBookmark;
dmcontactos.QContactos.DisableControls;
try
dmcontactos.QContactos.Last;
if not dmcontactos.QContactos.Bof then
begin
id:= dmcontactos.QContactos.Fields[0].AsInteger + 1;
dmcontactos.QContactos.Close;
dmcontactos.QContactos.Open;
dmcontactos.QContactos.Insert;
dmcontactos.QContactos.FieldByName('idcontacto').AsInteger:= id;
dmcontactos.QContactosnombre.AsString:= edit1.Text;
dmcontactos.QContactosapellido.AsString:= edit2.Text;
dmcontactos.QContactosdireccion.AsString:= edit4.Text;
dmcontactos.QContactostelefono.AsString:= edit3.Text;
dmcontactos.QContactosdescripcion.AsString:= combobox1.Text;
dmcontactos.QContactos.Post;
end
else
begin
dmcontactos.QContactos.First;
id:= dmcontactos.QContactos.Fields[0].AsInteger + 1;
dmcontactos.QContactos.Close;
dmcontactos.QContactos.Open;
dmcontactos.QContactos.Insert;
dmcontactos.QContactos.FieldByName('idcontacto').AsInteger:= id;
dmcontactos.QContactosnombre.AsString:= edit1.Text;
dmcontactos.QContactosapellido.AsString:= edit2.Text;
dmcontactos.QContactosdireccion.AsString:= edit4.Text;
dmcontactos.QContactostelefono.AsString:= edit3.Text;
dmcontactos.QContactosdescripcion.AsString:= combobox1.Text;
dmcontactos.QContactos.Post;
secundario.refrescarcontactos(id);
end;
FINALLY
dmcontactos.QContactos.EnableControls;
dmcontactos.QContactos.FreeBookmark(c);
end;
fncontacto.Close;
secundario.DBContactos.SetFocus;
end;
el problema ocurre al momento de insertar lo que seleccione de la lista del tdbcombobox. en la lista tengo las descripciones de la otra tabla de categorias (id_categoria y descripcion) el mensaje me dice: familiares "is not a integer value"
espero puedan ayudarme.
saludos.
Gonzalo.