Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #9  
Antiguo 18-05-2018
Avatar de mRoman
mRoman mRoman is offline
Miembro
 
Registrado: nov 2003
Posts: 646
Poder: 23
mRoman Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

Ah, correcto... y supongo que ya controlaste que tenga un valor ingresado. Pensé en esa columna por que era la que estaba señalizada en el mensaje de error.
Pero también podría ser cualquier otra que tenga su propiedad Required en True la que esté disparando la excepción y, como señaló orodriguezca, el problema se esté generando en otro lado.

Esa situación podría producirse cuando, por ejemplo, generas los campos en el IBDataSet y luego modificas (quitas) la restricción NOT NULL desde la bd. En ese caso tal vez te funcione volver a gererar las sentencias SQL de los IBDataSets que actuan en la relación.

Realmente es muy difícil tratar de reproducir la situación de error dado lo largo del código y los múltiples elementos que entran en juego.


Saludos
Ya hice las pruebas, hice lo q me sugierieron, revisé con el ShowMessage que el objeto edLecheria, tuviera datos en su propiedad Text y sí, si tiene.

Realice la verificacion de los campos del Maestro y el Detalle, dentro del DataSet respectivo y los campos que pertenecen a la PrimaryKey de la tabla, tenian en su propiedad Required=True, se lo cambie a False y ya no marco error al momento de realizar el Post al dataset del detalle, ahora lo marca en el ApplyUpdates.

Código Delphi [-]
procedure TfrmPBLCaptura.btnGuardarClick(Sender: TObject);
begin
     try
         dsPBLDetalle.DataSource:=nil;
         try
           ModDatos.dbFluida.ApplyUpdates( [dsPBLMaestro, dsPBLDetalle] );
         finally
           dsPBLDetalle.DataSource:=dSoPBLMaestro;
         end;
         ModDatos.trsFluida.CommitRetaining;
     except
       on E: Exception do
       begin
          Application.MessageBox('El o los registros no pueden ser grabados en este momento, probablemente el registro que estas consultando esta siendo editado por otro usuario','Error', mb_ok+mb_IconError);
          ShowMessage(E.Message);
          ModDatos.trsFluida.RollbackRetaining;
       end;
     end;
     mskAnio.SetFocus;
end;

Código:
 'validation error for column LECHER, value "*** null ***"'.
Quiere decir q entonces no se esta almacenando nada cuando se ejecuta este código:
Código Delphi [-]
procedure TfrmPBLCaptura.btnAgregarClick(Sender: TObject);
begin
    btnGuardar.Enabled:=True;
//    AbrirDetalle(Sender);
    RegNuevo:=1;
    dsPBLDetalle.Append;
        dsPBLDetalle.FieldByName('LECHER').AsString:=edLecheria.Text; // Como que aqui no esta haciendo la asignacion....raro!
    dsPBLDetalle.FieldByName('pbl_mes').AsInteger:=cbxMes.ItemIndex+1; //Por lo tanto aqui tampoco
    dsPBLDetalle.FieldByName('pbl_anio').AsString:=mskAnio.Text;
    dsPBLDetalle.FieldByName('id_pbl_tipo').AsInteger:=cbxTipoPBL.KeyValue;
    dsPBLDetalle.FieldByName('id_pbl_causa').AsInteger:=cbxCausasPBL.KeyValue;
    dsPBLDetalle.FieldByName('pbl_det_dias').AsString:=edDias.Text;
    dsPBLDetalle.FieldByName('pbl_det_diferencia').AsString:=edDiferencia.Text;
    dsPBLDetalle.Post;
    AbrirDetalleGrid(Sender);
    cbxTipoPBL.SetFocus;
end;

(Lo marcado con color son los campos de la llave primaria de la tabla DETALLE)

Sinceramente esta es la primera vez que trabajo Maestro-Detalle usando el enlace entre los dataset, mediante la propiedad DataSource.

Ahora por donde va la cosa???...

Gracias por su tiempo !. Saludos
__________________
Miguel Román

Afectuoso saludo desde tierras mexicanas....un aguachile?, con unas "cetaseas" bien "muertas"?, VENTE PUES !!
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Saber si el DBGrid (Detalle) esta Vacio en Relacion Maestro/Detalle Adrian Murua Conexión con bases de datos 2 03-01-2009 13:48:46
Maestro/Detalle (No graba en tabla Maestro) teclilla Tablas planas 12 21-04-2008 20:59:54
Problema tabla Maestro-detalle en la q la pk de t.detalle formad por 2cods de la maes akinom38 Varios 1 09-11-2007 19:27:44
Numerar el detalle Maestro / detalle en secuencia josejose SQL 5 10-02-2007 00:27:38
Maestro-Detalle ;Actualizar detalle a partir de un DBgrid norberto_larios Conexión con bases de datos 1 11-09-2004 18:17:34


La franja horaria es GMT +2. Ahora son las 01:29:07.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi