PDA

Ver la Versión Completa : Problemas para Agrupar


jandres
05-10-2006, 17:31:53
Saludo a todos gracias de antemano por su valiosa ayuda
Voy a detallar un poco en que consiste la ayuda que necesito tengo una pantalla que lee los código de barra y los mete a un dbgrid

Los campos que utilizo son

Codigolectura // Autonumerico
Referencia // Texto
CodigoEAN13 // Texto
Nolectura // Texto de 2 caracteres SI/NO
Codigo // Texto
Size // Texto
Fecha // Fecha

Estoy trabajando Con delphi7 y Access 2003 el manejador de reporte es
Report Builder 7

Lo que quiero es que cuando termine de leer me agrupe en un Quero por el campo código para mandar a imprimir un reporte por grupos, realice un intento y casi lo hace pero si cuando lees con la lectora de código de barra 2 códigos iguales y luego colocas otro y lees nueva mente otro articulo con el mismo código iniciar me crea 3 grupos cuando solo son 2 .

Y como puedo hacer para cambiar le a todo lo que este en el dbgrid el estatus de nolectura a ‘Si’ para así cuando cargue la pantalla nuevamente filtrar la tabla y que no salgan los registros que tengan si en el campo nolectura


Gracias por su ayuda

andressanchez
05-10-2006, 17:38:58
Hola,

Podrias escribir la sentencia sql que estas usando. Para asi poder ver mejor tu problema.

Saludos./

jandres
05-10-2006, 18:26:16
Aqui esta el query que uso en este caso estoy agrupando por codigoEAn13 o a grupar por el codigo.


Select codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
group by codigoEAN13

andressanchez
05-10-2006, 19:25:45
Lo que sucede que el query que estas usando solamente está agrupando por un solo campo. Debes incluir todos los campos de la consulta. Intentalo con este:

Select codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
group by codigolectura,referencia,codigoean13,nolectura,codigo[/SIZE]

Me cuentas cómo te fue.

jandres
05-10-2006, 20:33:39
EL problema es que despues de hacer esto no da error pero no me agrupa por el codigoEAN13

jandres
05-10-2006, 20:44:52
Este es el SQL
Select codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
where nolectura =:SN
group by codigolectura,referencia,codigoean13,nolectura,codigo

No me da error Pero no me funciona qui siera saber como hago para agrupar por el campo codigoEAN13 o por el campo codigo

Paoti
05-10-2006, 20:47:04
para mi que no estas guardadndo bien, se queda en el cache la senencia, haber agrega otro articulo, ejecutas la consulta, y luego vuelve a ageragr otro artiulo y cuentanos que ace con el anterior

egostar
05-10-2006, 20:56:23
Aqui esta el query que uso en este caso estoy agrupando por codigoEAn13 o a grupar por el codigo.


Select codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
group by codigoEAN13


Mas bien creo que lo que necesitas es un Order By, el Group By es utilizado para obtener registros agrupados por una o mas columnas siempre y cuando uses las funciones SUM, COUNT, MIN, MAX.

yo usaria esto


Select DISTINCT codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
ORDER BY codigoEAN13


Saludos

jandres
05-10-2006, 20:57:20
Lo que me esta haciendo es lo siguiente

Cuando digito el código

1460
1460 // Lo Agrupa
1560
1460 // Lo deja independiente


Se supone que el grupo del código 1460 tiene 3 elemento y el de 1560 1 pero me presenta que grupo del código 1460 2 el de 1560 con 1 y otro solo no me esta agrupando los mismos código y necesito que lo haga aun cuando no sean continuos en la digitación.

egostar
05-10-2006, 21:03:31
Lo que me esta haciendo es lo siguiente

Cuando digito el código

1460
1460 // Lo Agrupa
1560
1460 // Lo deja independiente


Se supone que el grupo del código 1460 tiene 3 elemento y el de 1560 1 pero me presenta que grupo del código 1460 2 el de 1560 con 1 y otro solo no me esta agrupando los mismos código y necesito que lo haga aun cuando no sean continuos en la digitación.

Entonces lo que quieres es hacer esto?

1460
1460
1460
1560

Si es asi entonces hazlo así


Select codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
ORDER BY codigoEAN13

o

Select codigolectura,referencia,codigoean13,nolectura,codigo from datoslectura
ORDER BY codigolectura

//Depende del campo que quieras ordenar


Saludos