Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
pedidos

hola buenas tardes tengo un problema a la hora de hacer un pedido que esta dentro de una tabla como sumo los totales de los productos iguales que me realizan los empleados la tabla esta conformado por los siguientes campos
CLASIFICACION
NOMBRE
CANTIDADSOLICITADA
CAUTORISADA
FECHA

de antemano gracias por su ayuda
Responder Con Cita
  #2  
Antiguo 18-01-2011
Avatar de Aleca
Aleca Aleca is offline
Miembro
 
Registrado: may 2003
Ubicación: Venado Tuerto, Argentina
Posts: 277
Poder: 21
Aleca Va por buen camino
esto lo hacia para sumar los items de remitos.
usando un TQuery

Código SQL [-]
Select SUM(ItemRemito.VALOR_ITEM) as ValorTotal From ItemRemito
Where ItemRemito.ID_REMITO = :ID_REMITO

Saludos
__________________
Aleca
Responder Con Cita
  #3  
Antiguo 20-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
hice lo del codigo SQL.(con otra tabla). pero me marca este error:

Invaled use of keyword.Token:
Line number:1

este es el codigo SQL:

Código SQL [-]
QUERY3.SQL.Clear;
QUERY3.SQL.Add('SELECT ingredientesdiarios.ingredientes, SUM(ingredientesdiarios.Cantidad)as total FROM ingredientsdiarios.db WHERE ingredientesdiarios:='+QuotedStr('1017012011'));
QUERY3.SQL.Add(' AND ingredientesdiarios.Nombre:=Nombre');
QUERY3.Active:=True;
Query3.Open;

y no se que significa ni como corregirlo
Responder Con Cita
  #4  
Antiguo 20-01-2011
Avatar de Aleca
Aleca Aleca is offline
Miembro
 
Registrado: may 2003
Ubicación: Venado Tuerto, Argentina
Posts: 277
Poder: 21
Aleca Va por buen camino
probá sacando ingredientesdiarios.ingredientes deja soló Select SUM()
__________________
Aleca
Responder Con Cita
  #5  
Antiguo 20-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Código Delphi [-]
QUERY3.SQL.Clear;
QUERY3.SQL.Text:= ' SELECT ingredientes, SUM(Cantidad)as total '+
                  ' FROM ingredientesdiarios WHERE CAUTORISADA:= :Num'+
                  ' AND Nombre:= :nom ';
                  ' Goup By ingredientes, Sum(Cantidad)';
QUERY3.Params[0].Value := QuotedStr('1017012011');
QUERY3.Params[1].Value := QuotedStr('Nombre');
QUERY3.Active:=True;
Revisa la clausula where.
Tal vez el group by sea innecesario, no lo se.
Usa parametros.
No es necesaria activar la tabla y luego abrirla, es lo mismo, dos veces.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
aver le voy a volver a reformular la pregunta es que ya me revolvi mire el problema es que tengo una tabla en donde almaceno todos los pedidos que me realizan los empleado de una empresa los productos estan clasificacos ahora el problema es a la hora de sumar los productos iguales por que los que no lo son ya se como les pongo la tabla

clasificacion nombre cantidadsolicitada usuario
material de aseo fab 15 sergio
material de aseo fab 17 grisel
material de cosina sal 3 sergio

me debe salir
material de ase fab 32
material de cosina 3
este codigo utilio pero no me sale

Código Delphi [-]
//QUERY1.SQL.Add('SELECT NOMBRE,CANTIDADSOLICITADA , SUM(Cantidad) astotal FROM AUXILIARINV.db WHERE NOMBRE:=NOMBRE AND CLASIFICACION ='+QuotedStr(COMBOBOX1.Text) );
Responder Con Cita
  #7  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No se que bd usas pero casi todas aceptan DISTINCT.
Si no colocas esto sumara todos los datos del campo cantidad.
Por otro lado no entiendo el uso de:
Código SQL [-]
FROM AUXILIARINV.db
No deberia ser ?:
Código SQL [-]
FROM AUXILIARINV
Ya que el query esta conectado a la bd y tabla no creo que sea necesario esto.
Entonces:
Si quieres DISTINGUIR entre un tipo de dato se usa lo que dije, asi se tendra que definir si es por nombre y otro dato.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #8  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
uso tabla paradox el otro es le nombre de la base de datos distinc se supone que es para buscar nombres diferentes eso utlisiso para sacar los nombres que no se parecen pero yo quiero sumar las cantidades de los productos que se llamen iguales en una tabla ya que cada empleado puede pedirlo para su uso.
Responder Con Cita
  #9  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Intenta esto y dime que error da:
Código Delphi [-]
QUERY1.SQL.Text:= 'SELECT NOMBRE,CANTIDADSOLICITADA , SUM(Cantidad) as total '+
                  'FROM AUXILIARINV WHERE NOMBRE = NOMBRE AND CLASIFICACION = '+QuotedStr(COMBOBOX1.Text);
QUERY1.Open;
Tambien seria bueno que nos digeras que es NOMBRE ?, de donde lo sacas?.
Especificamente aqui:
Código SQL [-]
WHERE NOMBRE:= NOMBRE
Se que NOMBRE (el primero es el nombre del campo), pero el segundo que es?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #10  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
nombre es el campo de mi tabla y quiero que los datos que son iguales que esos campo me sume sus cantidades.

por ejmeplo

clafificacion nombre de producto cantidadsolicitada
material de aseo fab 10
material de cosina sal 1
material de aseo fab 4
material de cosina piemienta 4
material de curacion venda 5
material de aseo fabuloso 1
material de aseo jabon 1

etc

en el combobox selecciono los diferentes tipos de clasificacion que cada uno de ellos tienen productos
si selecciono material de aseo me debe sumar los parecidos y lon que no melos envia en mi tabla pedidos mensuales
debe quedar asi

clasificacion nombre cantidad
material de aseo fab 14
material de aseo fabuloso 1
material de aseo jabon 1

espero me entiendan
Responder Con Cita
  #11  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
NO puedes decirle a un sql (segun se) que te de el dato de un campo sin ni siquiera abrir la tabla.
Osea, no se puede decir:
Código SQL [-]
WHERE NOMBRE = NOMBRE
Ya que NOMBRE (el segundo) no existirá hasta que se abra la tabla, osea, de donde saca el dato?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #12  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
hice lo que me dijo usted y me salio el siguiente error
gruop by is requered when both agrregate nad no agrregate fields are used in resultado set
Responder Con Cita
  #13  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Entonces no estoy equivocado.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #14  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
y como lo soluciono para que me aga la suma de las cantidades de los nombres iguales para realisar mi pedido mensual
Responder Con Cita
  #15  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Como dije:
1- El dato NOMBRE tiene que estar activo de lo contrario no lo reconocera.
2- Hace falta colocar el group By en el sql (como hice en el ejemplo), ya que antepones dos campos antes del campo a sumar y el sql no sabe cual campo quieres calcular.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #16  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
primero como activo el nombre segundo ya puse el group by y me dice que no reconoce el by

quiero que me busque los nosmbres iguales y cuando los busque me los sume y me lo envie a otra tabla que se llama pedido mensual y si no esta igual que tambien me lo envie a la tabla
elcual consta de los siguientes campos y que quedaria llenado de la siguiente manera

clasificacion nombre cantidadtototal
material de aseo fab 14
material de aseo fabuloso 1
material de aseo jabon 1
material de cocina sal 1
material de cocina pimienta 4

me explico ayudenme es mi trabajo final
Responder Con Cita
  #17  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Como comprenderas es muy dificil saber como ayudar sin tener todo a mano, lo que tratamos de hacer es suponer y dar ideas, dificilmente soluciones completas.
Empecemos por un dato: NOMBRE.
Este dato lo necesitamos y que cumpla ciertas condiciones, entonces, colocamos un query adicional y hacemos una consulta que nos traiga ese dato.
Una vez que tengamos ese datos, entonces en la consulata de suma lo indicamos.
Por otro lado:
Group By es caracteristico de sql, no se en donde esta el error?.
Espero que por lo menos te des una idea.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #18  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
Que Necesitas Para Que Me Ayudes Es Que No Se Me Occurren Ideas Para Solucionar El Problema Que Tengo Porfa
Responder Con Cita
  #19  
Antiguo 21-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Si quieres enviame un mensaje privado y te doy mi correo para que me envies el programa completo con la BD y poder ver si lo entiendo.
Ten en cuenta que mañana es viernes y tengo algo de trabajo, pero si puedo te ayudo con gusto.
Tendre que ver que hago ya que nunca he trabajado con paradox, empezare por aprender.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #20  
Antiguo 21-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Poder: 0
sergioperez Va por buen camino
como te envio un mensaje prinado o te mando mi correo mejor
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con Nº de pedidos SQL server ADO. HccSoft Conexión con bases de datos 10 21-01-2010 14:22:17
Pedidos con un mes de antiguedad ¿¿¿cómo??? !!!!!!!! david_uh SQL 5 06-08-2007 05:54:30
Ayuda con sistema de pedidos XBart OOP 2 20-07-2006 00:48:51
Ayuda con consulta de ultimos pedidos Faust SQL 2 10-07-2006 09:51:01
consulta sql (pedidos y cotizaciones) Caro SQL 2 13-06-2006 17:52:47


La franja horaria es GMT +2. Ahora son las 09:26:39.


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
Copyright 1996-2007 Club Delphi