Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

TQuery

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: TQuery Responder citando

Hola.
Tengo un pequeño problema, quiero insertar,eliminar y editar registros que han sido el resultado de una consulta en un TQuery, pero cuando trato de hace un
DataSource->DataSet->Delete
ó
DataSouce->DataSet->Insert
sale un error que dice que la tabla es de solo lectura, ¿Cómo hago para solucionar el problema?.
Gracias...
Very Happy
Volver arriba
Mensaje    Asunto: Responder citando

Para no tener problemas para borrar registros de un TQuery lo mejor es asegurarse de que se borran directamente del DataSet al que tenemos enlazado el TQuery. Puedes utilizar el evento AfterScroll del TQuery para asegurarte de que en cada desplazamiento de los registros del TQuery te situarás en el registro real localizado en el DataSet original ya que lo que te muestra el TQuery es una simple consulta. Por ejemplo:
En el AfterScroll del TQuery:
Código:

TLocateOptions opciones;
opciones.Clear();
Table1->Locate("NombreCampo","valor_buscado",opciones);

En "NombreCampo" debes poner el nombre del campo de tu DataSet original por el cual se realizará la búsqueda del valor (se aconseja un campo clave y único).
En "valor_buscado" el valor del campo de la consulta TQuery que intentamos localizar en el TTable.
Las opciones en este caso están despejadas.
Una vez hecho todo esto ya puedes borrar directamente el registro marcado en el TQuery pero dirigiendo el método Delete() al DataSet original, en este caso Table1->Delete();
_________________
¡ADELANTE CON ESTE SUPER FORO!
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.