Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Borrado parcial de registros (https://www.clubdelphi.com/foros/showthread.php?t=32229)

manu 31-05-2006 16:41:27

Borrado parcial de registros
 
Hola a todos.
Tengo una tabla Acces, de la que obtengo información para imrpimir unas etiquetas.
Para obtener los datos lo hago mediante una consulta

SELECT indicativo,FechaHora,Frecuencia,modo,rst,observaciones FROM ColaQSLs ORDER BY indicativo ASC

Como solo quiero que se impriman paginas completas de etiquetas uso la orden

form2.QuickRep1.PrinterSettings.LastPage:=(AdoQuery1.RecordCount div numero_etiq);

El siguitente paso es borrar todos los registros que se han imprimido y no se borren todos los registros.

¿como podria hacerlo?
Gracias.
Un cordial saludo.

Neftali [Germán.Estévez] 31-05-2006 16:48:04

Puedes ponerte al principio de la tabla (ADOQuery1.First), y ejecutar un delete (ADQuery1.Delete) tantas veces como registros has impreso:
form2.QuickRep1.PrinterSettings.LastPage * numero_etiq
dentro de un bucle for.

Al final te deberían quedar sin borrar los registros que no has impreso:
AdoQuery1.RecordCount MOD numero_etiq


Lepe 31-05-2006 17:39:36

Como pides ordenado por indicativo ASC, tambien puedes en el evento BeforePrint, guardar en una variable el indicativo en curso, se irá actualizando por cada registro impreso y al final tendrás en esa variable el último indicativo impreso.

Código SQL [-]
delete FROM ColaQSLs WHERE indicativo <= :varIndicativo.

Saludos


La franja horaria es GMT +2. Ahora son las 11:03: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