Delphi - borrar registros con un rango de fecha

 
Vista:
sin imagen de perfil
Val: 9
Ha aumentado 1 puesto en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por pablo (5 intervenciones) el 23/10/2018 21:47:30
hola a todos, tengo un pequeño problema
1
2
3
4
5
6
7
8
9
10
begin
query.close;
query.slq.clear;
query.SQL.Add('delete  from tabla where campo BETWEEN :fecha1 AND :fecha2 ');
query.Parameters.ParamByName('fecha1').DataType := ftdate;
query.Parameters.ParamByName('fecha1').Value :=  Trunc(Datetimepicker1.Date);
query.Parameters.ParamByName('fecha2').DataType := ftdate;
query.Parameters.ParamByName('fecha2').Value :=  Trunc(Datetimepicker2.Date);
query.ExecSQL;
end;


el código funciona bien el problema que tengo es cuando elimino los registros que estén en cierta fecha la grilla queda completamente en blanco y no me muestra el resto de los registros en tiempo de ejecución, ya comprobé que el query y la grilla estén activados. Espero que me puedan ayudar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por E.T. (1244 intervenciones) el 23/10/2018 23:44:18
Usas el mismo componente query para tu grid y para borrar?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 9
Ha aumentado 1 puesto en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por pablo (5 intervenciones) el 24/10/2018 16:25:55
si, me olvide de mencionar uso componentes ADO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por E.T. (1244 intervenciones) el 24/10/2018 20:01:25
La solución es de dos formas, puedes usar 2 query uno para tu grid y el otro para borrar (si usas esta opcion cuando borres registros debes hacer un refresh al query de tu grid) o seguir usando un sólo query, pero cuando hagas el proceso de eliminar debes hacer de nuevo la consulta de registros para mostrar de nuevo el grid
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 9
Ha aumentado 1 puesto en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por pablo (5 intervenciones) el 24/10/2018 23:48:44
funciona pero a la hora de eliminar me muestra este mensaje ''el valor clave de esta fila se cambio o elimino en el almacen de datos a continuacion se eliminara la fila local'' mi nuevo codigo

1
2
3
4
5
6
7
8
9
10
11
begin
nuevo_query.close;
nuevo_query.sql.clear;
nuevo_query.SQL.Add('delete  from tabla where campo BETWEEN :fecha1 AND :fecha2 ');
nuevo_query.Parameters.ParamByName('fecha1').DataType := ftdate;
nuevo_query.Parameters.ParamByName('fecha1').Value :=  Trunc(Datetimepicker1.Date);
nuevo_query.Parameters.ParamByName('fecha2').DataType := ftdate;
nuevo_query..Parameters.ParamByName('fecha2').Value :=  Trunc(Datetimepicker2.Date);
nuevo_query..ExecSQL;
query_grilla.refresh;
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por E.T. (1244 intervenciones) el 25/10/2018 00:37:19
intenta con close, open
1
2
3
4
5
6
7
8
9
10
11
12
begin
nuevo_query.close;
nuevo_query.sql.clear;
nuevo_query.SQL.Add('delete  from tabla where campo BETWEEN :fecha1 AND :fecha2 ');
nuevo_query.Parameters.ParamByName('fecha1').DataType := ftdate;
nuevo_query.Parameters.ParamByName('fecha1').Value :=  Trunc(Datetimepicker1.Date);
nuevo_query.Parameters.ParamByName('fecha2').DataType := ftdate;
nuevo_query.Parameters.ParamByName('fecha2').Value :=  Trunc(Datetimepicker2.Date);
nuevo_query.ExecSQL;
query_grilla.close;
query_grilla.open;
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 9
Ha aumentado 1 puesto en Delphi (en relación al último mes)
Gráfica de Delphi

borrar registros con un rango de fecha

Publicado por pablo (5 intervenciones) el 25/10/2018 15:58:05
Ahora si, funciona perfecto gracias por la ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar