Foros del Web » Programando para Internet » PHP »

[Ayuda]Restar 2 Campos con una Cantidad.

Estas en el tema de [Ayuda]Restar 2 Campos con una Cantidad. en el foro de PHP en Foros del Web. Hola Amigos Tengo una pequeña duda y quisiera otro punto de vista.. Me explico: Su pongamos que tenemos una tabla, con un campo de cantidad ...
  #1 (permalink)  
Antiguo 08/04/2012, 20:43
Avatar de Andrexs  
Fecha de Ingreso: noviembre-2011
Mensajes: 25
Antigüedad: 12 años, 5 meses
Puntos: 1
[Ayuda]Restar 2 Campos con una Cantidad.

Hola Amigos Tengo una pequeña duda y quisiera otro punto de vista..

Me explico:

Su pongamos que tenemos una tabla, con un campo de cantidad el cual posee 3 valores es decir:

Tabla
Artículos
cantidad : 100,200,400

Y Tenemos un valor enviado por el usuario Que sea 350

Como harían para para Restar 350 de 100, 200 y 400 sin tocar el el ultimo sino caminando por el primero hasta restar todo?

Bueno Espero haberme explicado bien.
  #2 (permalink)  
Antiguo 08/04/2012, 20:54
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

buenas tu duda no se entiende lo que necesitas es restar porque no haces la consulta traes tus datos y restas??
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 08/04/2012, 20:55
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

WTF!, a ver como, no se entendió nada!, le quieres restar 350 a cada numero? 100 - 350, 200 - 350, 400 - 350? o a la suma de todo? 100 + 200 + 400 = x - 350?
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #4 (permalink)  
Antiguo 08/04/2012, 21:09
Avatar de Andrexs  
Fecha de Ingreso: noviembre-2011
Mensajes: 25
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

Me explico a fondo.

Tengo una tabla Articulos.

Donde el usuario la primera vez q le llego articulo de tipo clavos, registro 100, la segunda vez, 200 y la tercera vez 300..

Se veria asi

Tabla
DetalleArtículos
Nombre : Clavos,Clavos,Clavos
cantidad : 100,200,300

Obvio soy espefico pero esa tabla tendra muchos materiales.

Aja sigo El usuario en su pantalla vera una suma total de todas. Ahora Cuando el quiera despachar 350 osea que implique restar a los 3 valores quisiera ver otro punto de vista.

hasta ahora yo lo ago asi

yo realizo 1 consulta del primer articulo, verifico que si la cantidad que envio el usuario es mayor que el de la primera consulta hago algo asi.

Código PHP:
if($cantidad>$cantidadMaterial){
//Vuelvo a enviar el articulo y marca para consulta.                                        
    
$salida->SetIdArticulo($articulo);
    
$salida->SetMarcaArticulo($marca);
                                        
    
$consultaArticulo $salida->consultar_articulo();
    for(
$j=0$j<count($consultaArticulo);$j++)
    {
        
$cantidadMaterial    $consultaArticulo[$j][4];
        
$idDetalle            $consultaArticulo[$j][1];
    }
        
$resta=$cantidad-cantidadMaterial    ;
    
$salida->SetCantidad($resta);
    
$salida->setFechaEdicion($suma);
    
$modificar=$salida->Modificar_Equipo();
                                        

Y alli es mas o menos donde pierdo la idea espero me comprendan.
  #5 (permalink)  
Antiguo 08/04/2012, 21:20
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

los campos multi valor no estan recomendados es mejor que se vaya generando mas registros de manera que sean más fáciles de manejar, yo en lo personal registro una sola vez cada articulo y voy aumentando la cantidad de existencia que hay del artículo cuando llega e incluso resto cuando se van, y tengo mi tabla auditora donde se ven cuando y cuantos artículos llegaron, sin embargo con lo que estas indicando si lo manejas de la forma que te dije pudieras hacer algo como esto

Código SQL:
Ver original
  1. SELECT SUM(cantidad) AS cantidadArticulo FROM DetalleArtículos WHERE articulo = 'clavo';
saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #6 (permalink)  
Antiguo 08/04/2012, 21:32
Avatar de Andrexs  
Fecha de Ingreso: noviembre-2011
Mensajes: 25
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

No podria hacerlo por que si son 3 registros de clavos como ejemplo.

Fue por que cada uno llego en una orden distinta. es lo que los hace diferente. pero igual a la hora de sacarlo tomo el primer registro y le resto, ha se acabaron paso al segundo registro y asi sucesivamente

Si pudieses darme tu punto de vista de como hacerlo, seria de mucha ayuda.
  #7 (permalink)  
Antiguo 08/04/2012, 22:24
Avatar de Andrexs  
Fecha de Ingreso: noviembre-2011
Mensajes: 25
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

Lo hice Logre lo que queria recorro los campos y voy restando. o al menos voy encaminado si alguien lo requiere aca esta. Saludos..


Código PHP:
if($cantidad>$cantidadMaterial){    
                    do{        
                            
$salida->SetIdArticulo($articulo);
                            
$salida->SetMarcaArticulo($marca);
                            
                                
$consultaArticulo $salida->consultar_articulo();
                        
// Creo variables con los valores que voy a utilizar retornados de la consulta
                                    
for($j=0$j<count($consultaArticulo);$j++)
                                    {
                                        
$cantidadMaterial    $consultaArticulo[$j][4];                
                                            
                                        
$resta=$cantidad-$cantidadMaterial;                        
                                        
$salida->SetCantidad($cantidadMaterial-$cantidadMaterial);
                                        
$salida->setFechaEdicion($suma);
                                        
$modificar=$salida->Modificar_Material();            
            
// A la nueva consulta le restare, el resto que me quedo de la cantidad enviada(cantidad).
                                        
if ($modificar!='-1') {
                                            
$deshacer true;
                                            }                
                                            else{
                                                
$salida->SetIdDetalle($idDetalle);
                                                
$salida->SetCantidad($cantidadMaterial);
                                                
$registrar=$salida->RegistrarSalidaDetalle();
                                                if (
$registrar!='-1') {
                                                    
$deshacer true;                                                        
                                                }                                        
                                            }
                                            
$cantidad=$resta;
                                    }
                                    
$i++;
                    }while(
$cantidad>$cantidadMaterial); 

Última edición por Andrexs; 08/04/2012 a las 22:42
  #8 (permalink)  
Antiguo 08/04/2012, 23:24
Avatar de rigobcastro  
Fecha de Ingreso: febrero-2012
Ubicación: Lejanías
Mensajes: 69
Antigüedad: 12 años, 2 meses
Puntos: 21
Respuesta: [Ayuda]Restar 2 Campos con una Cantidad.

Cita:
Iniciado por Andrexs Ver Mensaje
No podria hacerlo por que si son 3 registros de clavos como ejemplo.

Fue por que cada uno llego en una orden distinta. es lo que los hace diferente. pero igual a la hora de sacarlo tomo el primer registro y le resto, ha se acabaron paso al segundo registro y asi sucesivamente

Si pudieses darme tu punto de vista de como hacerlo, seria de mucha ayuda.
Crea otra tabla para la cantidad y la unes con esta.

Tabla DetalleArtículos
Id_DetalleArtículos
nombre

Tabla DetalleArticulosCantidad
id_DetalleArticulosCantidad
Id_DetalleArtículos
cantidad

O si no usa Serialize o JSON para los multiregistros, aunque prefiero la opción uno, hacer CRUD sobre eso es mucho más sencillo y mas manejable si son 1 o millones...

Saludos!

Etiquetas: campos, 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 21:35.