Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] sumarizar mismos articulos de una consulta

Estas en el tema de sumarizar mismos articulos de una consulta en el foro de PHP en Foros del Web. Que tal, tengo un problemita al cual le eh dado vueltas y vueltas pero ya es hora de buscarle solucion, miren lo que tengo es ...
  #1 (permalink)  
Antiguo 16/04/2013, 10:57
 
Fecha de Ingreso: abril-2013
Ubicación: Monterrey
Mensajes: 39
Antigüedad: 11 años, 1 mes
Puntos: 1
Pregunta sumarizar mismos articulos de una consulta

Que tal, tengo un problemita al cual le eh dado vueltas y vueltas pero ya es hora de buscarle solucion, miren lo que tengo es lo siguiente:

Mi sistema es un comprador inteligente al cual en un Filtro los compradores vacian los pedidos, cada partida se almacen en base de datos, en una tabla llamada PARTIDAS, ahora bien, cuando terminan de vaciar todos los pedidos (de un TXT), necesito que el sistema sumarice las partidas que sean iguales, es decir, mas explicito, que sume las partidas que tengan el mismo codigo de barras: ej:

Los usuarios cargan esto:

1. 780091 - articulo 1 - 2 pzas
2. 780092 - articulo 2 - 1 pza
3. 780091 - articulo 1 - 3pzas

y quiero que en pantalla les muestre lo siguiente:

1. 780091 - articulo 1 - 5 pzas
2. 780092 - articulo 2 - 1 pza

es decir, elimine las dos partidas y cree una nueva pero sumando las dos cantidades del mismo articulo.

Espero me haya eexplicado de forma correcta.

Saludos y gracias de antemano !!
__________________
---------
George GmEs
  #2 (permalink)  
Antiguo 16/04/2013, 11:01
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: sumarizar mismos articulos de una consulta

haz una consulta que que saque el codigo y el nombre del articulo, luego en una subconsulta saca la suma se las piezas..
  #3 (permalink)  
Antiguo 16/04/2013, 11:22
 
Fecha de Ingreso: abril-2013
Ubicación: Monterrey
Mensajes: 39
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: sumarizar mismos articulos de una consulta

pero necesito eliminar las partidas sobrantes, es decir, el usuario va a subir talvez 3 archivos txt, donde probablemente vengas articulos repetidos, y al llegar al filtro, deben sumarse y si son 5 partidas de 1 mismo articulo, deben eliminarse las 4 y quedar 1 con el total, o bien eliminarse las 5 y crear una nueva partida pero con la sumatoria.

Estoy algo atorado, pero intentare con un codigo y les muestro mas tarde para ver si me pueden ayudar !!
__________________
---------
George GmEs
  #4 (permalink)  
Antiguo 16/04/2013, 13:40
 
Fecha de Ingreso: abril-2013
Ubicación: Monterrey
Mensajes: 39
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: sumarizar mismos articulos de una consulta

Miren logre esto, no se si voy bien o hay alguna otra forma de realizarlo ??

<?php
require_once("includes/conn.php");


$consulta = mysql_query("SELECT * FROM partidas WHERE numpedido = '1' ORDER BY codigob") or die (mysql_error());
while($arreglo = mysql_fetch_array($consulta)){


if($compara==0){
$compara = $arreglo[codigob];//toma el primer codigob
}
if($compara==$arreglo[codigob]){
$cantidad = $cantidad + $arreglo[cantidad];//si compara y el articulo son iguales suma sus cantidades
}
else{
echo "en total de ".$compara." son: ".$cantidad."<br />";
$compara = $arreglo[codigob];//si son diferentes compara toma el siguiente codigob
$cantidad = $arreglo[cantidad];//y su cantidad
}


}
echo "en total de ".$compara." son: ".$cantidad."<br />";


?>


Saludos !!
__________________
---------
George GmEs
  #5 (permalink)  
Antiguo 16/04/2013, 14:52
 
Fecha de Ingreso: abril-2013
Ubicación: Monterrey
Mensajes: 39
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: sumarizar mismos articulos de una consulta

Lo logre !! les dejo el codigo por si les sirve o si hay alguna mejora que le pudan hacer, gracias !!

Código PHP:
<?php
    
require_once("includes/conn.php");
    
    
$compara 0;
    
$consulta mysql_query("SELECT * FROM partidas WHERE numpedido = '1' ORDER BY codigob") or die (mysql_error());
    while(
$arreglo mysql_fetch_array($consulta)){

            
                        if(
$compara==0){
                                
$compara $arreglo[codigob];//toma el primer codigob
                                       
}
                if(
$compara==$arreglo[codigob]){
                        
$cantidad $cantidad $arreglo[cantidad];//si compara y el articulo son iguales suma sus cantidades
                        
$codigob $arreglo[codigob];
                        
$descripcion $arreglo[descripcion];
                        
$mayorista $arreglo[mayorista];
                        
$costo $arreglo[costo];                        
                                               }
                                    else{
                                        
                                            
$insertar mysql_query("INSERT INTO partidas(codigob,descripcion,cantidad,mayorista,costo,pendiente,numpedido) VALUES('$codigob','$descripcion','$cantidad','$mayorista','$costo','$cantidad','1')") or die (mysql_error());                                    
                                            
$compara $arreglo[codigob];//si son diferentes compara toma el siguiente codigob
                                            
$cantidad $arreglo[cantidad];//y su cantidad
                                            
                                            
$codigob $arreglo[codigob];
                                            
$descripcion $arreglo[descripcion];
                                            
$mayorista $arreglo[mayorista];
                                            
$costo $arreglo[costo];
                                            
                                        }
                                       

        
$borro mysql_query("DELETE FROM partidas WHERE clave = '$arreglo[clave]'") or die (mysql_error());
                                                  }
                                                  

$insertar mysql_query("INSERT INTO partidas(codigob,descripcion,cantidad,mayorista,costo,pendiente,numpedido) VALUES('$codigob','$descripcion','$cantidad','$mayorista','$costo','$cantidad','1')") or die (mysql_error());

?>
__________________
---------
George GmEs
  #6 (permalink)  
Antiguo 16/04/2013, 14:55
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: sumarizar mismos articulos de una consulta

Si hubieras usado GROUP BY y SUM de mysql en vez de todo ese código, hubiera sido mejor.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 16/04/2013, 15:13
 
Fecha de Ingreso: abril-2013
Ubicación: Monterrey
Mensajes: 39
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: sumarizar mismos articulos de una consulta

No sabia que existia , voy a investigar como usarlo y comento mas tarde el codigo !! Gracias por el dato ...
__________________
---------
George GmEs

Etiquetas: articulos, tabla, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:10.