Ver Mensaje Individual
  #1  
Antiguo 24-01-2006
alfil123 alfil123 is offline
Miembro
 
Registrado: nov 2005
Posts: 116
Reputación: 19
alfil123 Va por buen camino
problemas en un insercion de un nuevo registros

Hola amigos, no puedo insertar un nuevo registro

Código Delphi [-]
procedure TMantenimiento_Docente.ToolButton2Click(Sender: TObject);
begin
  inherited;
  if (LabeledEdit2.text='') or (LabeledEdit3.text='')
    or (LabeledEdit4.text='') or (LabeledEdit5.text='')
      or (LabeledEdit6.text='') or (LabeledEdit7.text='')
        or (LabeledEdit8.text='')or (LabeledEdit9.text='')
  then
  begin
    showmessage('le falta completar los campos');
    exit;
  end;
  ADOQuery1.Close;
  ADOQuery1.sql.Clear;
  ADOQuery1.SQL.Add('select *');
  ADOQuery1.SQL.Add('from Docente');
  //ADOQuery1.SQL.Add('where id_Docente="'+ le_id01.text +'"');
  ADOQuery1.open;
  ADOQuery1.Append;
  // ADOQuery1.FieldByName('id_Docente').asstring:= LabeledEdit1.text;
  //ADOQuery1.FieldByName('Nombres').value:= LabeledEdit2.text;
  ADOQuery1.fieldbyname('ap').value:= LabeledEdit3.text;
  ADOQuery1.fieldbyname('am').value:= LabeledEdit4.text;
  ADOQuery1.fieldbyname('Dni').value:= LabeledEdit5.text;
  ADOQuery1.fieldbyname('direccion').value:= LabeledEdit6.text;
  ADOQuery1.fieldbyname('telefono').value:= LabeledEdit7.text;
  ADOQuery1.fieldbyname('Especialidad').value:= LabeledEdit8.text;
  ADOQuery1.fieldbyname('Area').value:= LabeledEdit9.text;
  ADOQuery1.post;
  ADOQuery1.close;
  LabeledEdit2.text:='';
  LabeledEdit3.text:='';
  LabeledEdit4.text:='';
  LabeledEdit5.text:='';
  LabeledEdit6.text:='';
  LabeledEdit7.text:='';
  LabeledEdit8.text:='';
  LabeledEdit9.text:='';
  showmessage('sea agregado un nuevo docente ');
end;

la linea en la que se produce el error en " ADOQuery1.post; "pero cuando no activo el evento DataChange, se puede introdusir sin ningun problema, este es el procedimiento del data change

Código Delphi [-]
procedure TMantenimiento_Docente.DataSource1DataChange(Sender:
  TObject; Field: TField);
begin
  inherited;
  if NOT ADOQuery1.EOF then
  Begin
    // Recuperamos los valores del registro actual en los campos respectivos
    le_id01.Text:=ADOQuery1.FieldByName('id_docente').Value;
    LabeledEdit2.Text:=ADOQuery1.FieldByName('Nombres').Value;
    LabeledEdit3.Text:=ADOQuery1.FieldByName('Ap').Value;
    LabeledEdit4.Text := ADOQuery1.FieldByName('AM').Value;
    LabeledEdit5.Text := ADOQuery1.FieldByName('DNI').Value;
    LabeledEdit6.Text := ADOQuery1.FieldByName('Direccion').Value;
    LabeledEdit7.Text := ADOQuery1.FieldByName('Telefono').Value;
    LabeledEdit8.Text := ADOQuery1.FieldByName('Especialidad').Value;
    LabeledEdit9.Text := ADOQuery1.FieldByName('Area').Value;
    // bbModificar.Enabled := true;
    //bbEliminar.Enabled := true;
  End
  else
  begin
    // Recuperamos los valores del registro actual en los campos respectivos
    le_id01.Clear;
    LabeledEdit2.Clear;
    LabeledEdit3.Clear;
    LabeledEdit4.Clear;
    LabeledEdit5.Clear;
    LabeledEdit6.Clear;
    LabeledEdit7.Clear;
    LabeledEdit8.Clear;
    ToolButton2.Enabled:=true;
    SpeedButton8.Enabled:=false;
  end;
end;

porfavor ayudenme ya me estan por estrangular aqui.

Última edición por dec fecha: 24-01-2006 a las 20:30:30.
Responder Con Cita