Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-11-2005
gilberto_1126 gilberto_1126 is offline
Miembro
 
Registrado: jun 2004
Posts: 74
Poder: 14
gilberto_1126 Va por buen camino
Question Ordenar una MySQLQuery al dar clic en columna de RXDBGrid

Estoy bien desesperadoooooooooooooooooooooooooooo.

Aqui esta el detalle
Tengo una consulta en MySQL la que muestro en un RXDBGrid. Lo que quiero hacer es lo que he visto mucho en este foro, de ordenar de acuerdo a que se le da un clic en una columna. Investigando aqui encontre la forma de mostrar el triangulito de ordenamiento, pero lo que si no puedo es ordenar la consulta.
Como les mostre en un hilo anterior al momento de dar un clic en el titulo pongo lo siguiente:

ModuloDatos1.MySQLQReporte.MacroByName('ORDER').AsString:='ORDER BY' + RXDBGrid1.Columns.Items[Acol].FieldName + '' + 'desc' ;
ModuloDatos1.MySQLQReporte.Open;

Aqui me marca el error que les digo de que no se encuentra el parametro ORDER

pero tambien ya lo hice de la sig manera:

ModuloDatos1.MySQLQReporte.IndexFieldNames:=RXDBGrid1.Columns.Items[Acol].FieldName;

y nada

ya me desespere completamente

Espero y me puedan ayudar ya que este programa ya lo tengo que entregar

Por su atencion muchas gracias
Responder Con Cita
  #2  
Antiguo 09-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Registrado
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 17
vtdeleon Va por buen camino
Saludos

Podrias mostrarnos la sentencia que usas en el Query
Responder Con Cita
  #3  
Antiguo 09-11-2005
gilberto_1126 gilberto_1126 is offline
Miembro
 
Registrado: jun 2004
Posts: 74
Poder: 14
gilberto_1126 Va por buen camino
aqui esta la sentencia

Código SQL [-]
SELECT M.Clave, M.Establo, MAX(M.Fecha) AS Fecha, M.Tot_vacas, M.Ordena, 
 
M.Secas, M.Crianza, M.Vacas_PDysecas, M.Crianza_pd, M.Parking,M.v1Lact, 
 
M.V2lact, V3lact, M.Del, M.Dab, M.Dpe, M.Din, M.Dpiv, M.Dpic, M.fert, M.Prod, 
 
M.Prod305, M.ProdMin, M.Prodmax, M.T_ord,M.Dps, M.V_ord, M.V_noord
FROM Manejo AS M

GROUP BY M.Clave, M.Establo

ORDER BY M.Clave

Última edición por vtdeleon fecha: 09-11-2005 a las 01:41:31. Razón: Etiqueta SQL(se ve la diferencia???)
Responder Con Cita
  #4  
Antiguo 09-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Registrado
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 17
vtdeleon Va por buen camino
Saludos

No conozco ese componente, entonces lo que te diré estara basado en otro.
Creo que MacroByName funciona como ParamByName (espero no equivocarme). Si es asi, no veo el parametro declarado en la sentencia.
Nunca he usado un Param para ordenar una sentencia pues el componente hace el arreglo correspondiente dependiendo si es AsString(' '), AsInteger, AsVariant.

Prueba con un campo qeu esté en la tu tabla antes de usar el nombre de la columna.
Código Delphi [-]
ModuloDatos1.MySQLQReporte.MacroByName('ORDER').AsVariant:='ORDER BY campoorden desc' ;
ModuloDatos1.MySQLQReporte.Open;
Suerte
Responder Con Cita
  #5  
Antiguo 09-11-2005
gilberto_1126 gilberto_1126 is offline
Miembro
 
Registrado: jun 2004
Posts: 74
Poder: 14
gilberto_1126 Va por buen camino
ya la probe

Ya lo checque con .ASVARIANT y no me lo reconoce.

No necesariamente tiene que ser asicomo yo lo estoy haciendo. Ando buscando otra posibilidad (si es que la hay) para poder orednarla. Si saben de otra manera por favor me la podrian mostrar?????

Gracias por su tiempo
Responder Con Cita
  #6  
Antiguo 09-11-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.123
Poder: 10
roman Tiene un aura espectacularroman Tiene un aura espectacular
¿Y serías tan amable de indicarnos qué componentes usas? Porque eso de MacroByName...

// Saludos
Responder Con Cita
  #7  
Antiguo 09-11-2005
gilberto_1126 gilberto_1126 is offline
Miembro
 
Registrado: jun 2004
Posts: 74
Poder: 14
gilberto_1126 Va por buen camino
MySQL

Es toy trabajando en una base de datos en MySQL y el componente que estoy utilizando es un MySQLQuery.
Trabajo en Delphi 7.0
Responder Con Cita
  #8  
Antiguo 09-11-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.123
Poder: 10
roman Tiene un aura espectacularroman Tiene un aura espectacular
Realmente se me hace desconocida tal componente. Me da la impresión de que estás usando una componente TMyQuery de las componentes MyDac. En todo caso, ¿ya revisaste el archivo de ayuda? Ahí te explica el uso de MacroByName.

// Saludos
Responder Con Cita
  #9  
Antiguo 09-11-2005
gilberto_1126 gilberto_1126 is offline
Miembro
 
Registrado: jun 2004
Posts: 74
Poder: 14
gilberto_1126 Va por buen camino
ya lo vi

Si de hecho ya lo busque en la ayuda de delphi y si viene y me explica como funciona y todo lo demas.

De hecho viene un ejemplo de como funcionan las MacroByName y las fucniones las puse como vienen ahi pero nada.

Como le dije, no necesriamente lo tengo que hacer asi. si alguien me puede decir como orednar una consulta en MySQL ordenando por cualquier campo.

Bueno me despido
Graciasd por su tiempo valioso que les he robado
Responder Con Cita
  #10  
Antiguo 09-11-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.123
Poder: 10
roman Tiene un aura espectacularroman Tiene un aura espectacular
Deberías esforzarte un poco más al plantear tus dudas. Aún no confirmas si se trata de las componentes MyDac. Y, como te dije antes, si son éstas las componentes que usas, en la ayuda de ellas- que no la de Delphi -el ejemplo no tienen nada que ver con lo que tú pones. Para empezar, en tu sentencia SQL no hay nada que sustituir, que sería el propósito de MacroByName, y además.

// Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 19:56:12.


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