Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   ayuda con ordenar dbgrid (https://www.clubdelphi.com/foros/showthread.php?t=58484)

mariaesde 22-07-2008 06:47:04

ayuda con ordenar dbgrid
 
hola buenas, soy algo nueva en esto de lo foros aparte de en delphi jeje.
mi consulta era sobre ordenar un dbgridd. tengo creada una tabla y mediante sql kiero que me ordene lo que aparece en el dbgrid, lo tngo puesto q x un radiogroup segun sea x nombre o x codigo me lo ordene, xo me dice NO INDEX FOUND FIELD.... o algo asi y no se xq...


AProvexo para preguntar tb xq cuando no usaba sentencias sql elimina registros de uno en uno y aora que las uso no se xq me borra los registros de dos en dos...

MIL GRACIASSSSS

duilioisola 22-07-2008 08:45:03

En el RadioGroup deberías poner un evento OnClick que haga más o menos lo siguiente:

Código Delphi [-]
   Tabla.DisableControls;
   Tabla.Close;
   if (radiogroup.ItemIndex=0) then
      Tabla.SQL.Text := 'SELECT * FROM MI_TABLA ORDER BY NOMBRE';
   if (radiogroup.ItemIndex=1) then
      Tabla.SQL.Text := 'SELECT * FROM MI_TABLA ORDER BY CODIGO';
   Tabla.Open;
   Tabla.EnableControls;

Neftali [Germán.Estévez] 22-07-2008 08:46:48

Hola Maria. bienvenida al ClubDelphi.
Te recomiendo que cuando tengas un rato revises la Guía de estilo de los foros.

En cuanto a la ordenación del Grid, estaría bien que explicaras un poco mejor cómo estás intentando ordenar, qué código estás utilizando y también con qué Base de Datos trabajas.
De todas formas, piensa que si modificas la consulta SQL que usas para obtener los datos, debería funcionar si problemas.

Sin orden:
Código SQL [-]
  SELECT * FROM TABLA1

Si se selecciona el campo nombre:
Código SQL [-]
  SELECT * FROM TABLA1 ORDER BY NOMBRE ASC

Si se selecciona el código:
Código SQL [-]
  SELECT * FROM TABLA1 ORDER BY CODIGO DESC

Cambiando la consulta y volviendo a abrir la Query debería funcionar.

El cuanto a lo del borrado suene raro. Tal vez deberías poner la consulra (SQL) que estás utilizando. :confused::confused:

mariaesde 22-07-2008 09:09:05

copio lo que estoy poniendo vale? es que sql aun no tengo mucha base lo siento si tampoco me se explicar.

procedure TForm2.RadioGroup1Click(Sender: TObject);
begin
query1.DisableControls;
query1.Close;
if (radiogroup1.ItemIndex=0) then
query1.SQL.Text := 'SELECT * FROM bebidas ORDER BY codigobebida';
if (radiogroup1.ItemIndex=1) then
query1.SQL.Text := 'SELECT * FROM bebidas ORDER BY nombrebebida';
query1.Open;
query1.EnableControls;
end;


tengo puesto un componente rediogroup, y en este formulario tngo un query sql xq las bases de datos las tngo en un formulario DM

esto me sigue sin funcionar

X CIERTO lo de eliminar ya me funciona d campo en campo, antes eliminaba x ejemplo el 1 y se borraba el siguiente, osea dos a la vez, no staria aciendo bien algo logicamente

Neftali [Germán.Estévez] 22-07-2008 10:45:24

Cita:

Empezado por mariaesde (Mensaje 302169)
esto me sigue sin funcionar

¿Esto que error te da exactamente?

¿Son tablas Paradox + BDE?

mariaesde 22-07-2008 11:07:09

si uso tablas paradox, no me da error simplemente no me hace nada y no se si sera algo q no estoy enrutando bien o no se

duilioisola 22-07-2008 11:07:44

Se me ocurre que no tengas unido el Grid con el Datasource correcto.

Según yo lo hubieara hecho:
- DM - TDatamodule
--- Query1
--- Datasource1.DataSet = Query1

- Form2 - TForm
--- DBGrid.Datasource = DM.Datasource1

donald shimoda 22-07-2008 12:57:09

Cita:

Empezado por mariaesde (Mensaje 302169)
copio lo que estoy poniendo vale? es que sql aun no tengo mucha base lo siento si tampoco me se explicar.

De todas maneras una vez obtenido el conjunto de datos te recomiendo ordenar en el mismo grid, aunque comprendo que explicar como excede los alcances de este curso.:p:p:p


La franja horaria es GMT +2. Ahora son las 15:39:37.

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