Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Agregar Nuevos Registros DBGRID (https://www.clubdelphi.com/foros/showthread.php?t=85369)

mantraxer21 08-03-2014 22:47:01

Agregar Nuevos Registros DBGRID
 
Amigos,

Estoy en un formulario (buscar) que al momento de desplegar él resultado esperado selecciono la Fila y con un Boton envio registros a otro Formulario (padre) que dentro de un DBGrid coloco ese dato encontrado (buscar), mi pregunta es cómo poder agregar más de 1 a la grilla del padre, pues cada vez que busco un registro y lo quiero vincular con el resultado de la busqueda, esto me reemplaza siempre por el ultimo registro...

Resumen:

Quiero que al momento de apretar el boton "agregar" el registro encontrado sea agregado a la grilla del formulario padre SIN reemplazar por el anterior... siempre agregando 1+.

ecfisa 08-03-2014 23:00:24

Cita:

Empezado por mantraxer21 (Mensaje 473497)
...
Resumen:

Quiero que al momento de apretar el boton "agregar" el registro encontrado sea agregado a la grilla del formulario padre SIN reemplazar por el anterior... siempre agregando 1+.

Hola mantraxer21.

Para agregar un registro al TDataSet asociado al TDBGrid del formulario padre:
Código Delphi [-]
procedure TFormPadre.btnAgregarClick(Sender: TObject);
begin
  with DBGridFormPadre.DataSource.DataSet do
  begin
    Append; // Agregar registro

    // acciones (si las hay)

    Post;     // Guardar registro
  end;
end;

Saludos :)

mantraxer21 09-03-2014 07:00:43

ecfisa, muchas gracias.

El tema es que en la grilla Padre, estoy recibiendo muy bien sólo 2 de los 3 registros.

IDMaterial (No recibido)
Numero_dias_prestamo (recibido ok)
Fecha_fevolucion (recibido ok)

Al momento de hacer click en el botón "aceptar" del Formulario "Buscar" ( para enviar los datos a la Grilla del Formulario Padre), me muestra este siguiente error.

Código Delphi [-]
IDDetallePrestamo Must have a value

El Campo IDDetallePrestamo corresponde a la PK de la Tabla Detalle_Prestamo, en la BD es de tipo Obligatorio, Autoincrementable y PK.

Muestro código completo al momento de hacer click en el botón "Aceptar".

Código Delphi [-]
procedure TFormBuscaLibro.btnAceptar(Sender: TObject);
begin
with FormPadre.GrillaPrestamos.DataSource.DataSet do   begin
  FormPadre.dDetallePrestamo.Open;
  FormPadre.dDetallePrestamoIDDETALLEPRESTAMO.Value:= StrToInt(label7.Caption); // aca me muestra el ID según el Generador
  FormPadre.dDetallePrestamoDIAS_PRESTAMO.Value:= StrToInt(dias.Text);
  FormPadre.dDetallePrestamoFECHA_DEVOLUCION.Value:= devolucion.Date;
  FormPadre.dDetallePrestamo.Append;
  FormPadre.dDetallePrestamo.Post;
  close;
end;

end;

ecfisa 09-03-2014 23:14:56

Cita:

Empezado por mantraxer21 (Mensaje 473503)
...
Al momento de hacer click en el botón "aceptar" del Formulario "Buscar" ( para enviar los datos a la Grilla del Formulario Padre), me muestra este siguiente error.

Código Delphi [-]
IDDetallePrestamo Must have a value
...

Hola mantraxer21.

Hace doble click sobre el componente que estes usando, ya en el editor de campos persistentes (FieldEditor), hace click sobre el campo "IDDetallePrestamo" y desde el ObjectInspector pone su propiedad Required en False.

Saludos :)


La franja horaria es GMT +2. Ahora son las 07:54:30.

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