FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Numerar el detalle Maestro / detalle en secuencia
Que rutina podría utilizar para una pantalla maestro detalle lo que necesito que me haga es lo siguiente.
Los campos son Tabla maestro Código _ encargado Nombre_encargado Tabla detalle Código _ asistente Código _ encargado Nombre _ asistente Lo que necesito es que cuando este en el detalle para insertar un registro me de una secuencia numerica ejemplo Tabla maestro 1 registro Tabla detalle 1-1 2-1 Que cada vez que inserte uno si es de algún detalle que existe me incremente y me presente el valor siguiente 3-1 si es el que sigue Trabajo en Delphi 7 y access 2003 |
#2
|
||||
|
||||
Hola Jose,
no se si te puedo ayudar ya que no trabajo con access, pero me imagino que tambien access tiene un autoinc, que incrementa automaticamente el Nr. de registro y si no lo puedes hacer a mano Código:
var form: Tform; nr : longint; procedure TForm.TableBeforeInsert(DataSet: TDataSet); begin Dataset.Last; Nr := Dataset.FieldByName('Campo').AsInteger + 1; end; procedure TFom.TableNewRecord(DataSet: TDataSet); begin Dataset.FieldByName('campo').AsInteger := Nr; end; |
#3
|
|||
|
|||
Gracias Pero ...
Hola y Gracias LordRF por ayudar me pero esta rutina la tengo la que necesito es una que dependiendo el código que tenga el maestro me va a numerar el detalle en secuencia
Te coloco un ejemplo nueva mente una vez vía lago así en un demo de delphi la versión era delphi 3 Maestro Código maestro 1 Detalle 1 código de detalle 2 código de detalle Y Así varias veces Si inserto otro registro en el maestro seria Maestro Código maestro 2 Y entonces quisiera que el detalle Comenzara el ese nuevo registro 1 código de detalle 2 código de detalle A ver si me explique un poco mejor Gracias ojala puedas ayudar me. |
#4
|
||||
|
||||
Necesitas:
Para el maestro - un campo auto inc Para el detalle: - Un campo LongInteger o del mismo tipo del auto inc - Un autoinc Ahora abres las "relaciones de las tablas" en access, añades ambas tablas y desde la tabla Maestro, arrastra el campo al campo LongInteger, cuando esté encima lo sueltas y Access te preguntará el tipo de integridad referencial que necesitas. Normalmente es uno a muchos con duplicados. Ahora en Delphi, para insertar una línea detalle, siempre deberás hacerlo en este orden: - Primero insertar en la tabla maestra - Ahora enviar un insertar al detalle. Al tiempo de guardar los registros: -Primero guardar el maestro. - Después guardar el detalle. Saludos Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#5
|
||||
|
||||
Hola por ejemplo lo puedes hacer asi:
con un query en la detalle Código:
SELECT * FROM Maestra WHERE ID = :ID Código:
procedure TDBM.DetalleAfterInsert(DataSet: TDataSet); begin Detalle['ID'] := Maestar.FieldValues['ID']; end; un saludo Robert |
#6
|
||||
|
||||
Te sugiero que utilices la propiedad Recno de las tablas/querys. Cuando abres una tabla/query hay un campo que es recno que te dice el nº de registro que se trata.
Para hacerlo. crea un campo calculado en la query Detalle, de tipo integer. En el evento DrawDataCell del grid donde visualizas los datos, pon el siguiente código.
Ten en cuenta que recno es un campo calculado por delphi, que no puedes editarlo, y que dependiendo del campo por el que ordenes la tabla detalle te numerará las lineas. Espero que te sea util. Un saludo
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
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 |
Maestro Detalle | ercrizeporta | Impresión | 4 | 19-08-2006 15:24:56 |
Reporte Maestro/Detalle/Detalle de 4 Tablas | jovehe | Impresión | 2 | 23-03-2005 01:25:02 |
Maestro-Detalle ;Actualizar detalle a partir de un DBgrid | norberto_larios | Conexión con bases de datos | 1 | 11-09-2004 18:17:34 |
Maestro + detalle +detalle | pruz | Impresión | 2 | 31-03-2004 15:59:54 |
|