Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/09/2010, 17:13
Avatar de SirDuque
SirDuque
 
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Implementando ley FIFO creando codigo en PHP para manipular MySQL

Bueno chicos, estoy haciendo un sistema de gestion, y lo que me pidieron especificamente es lo siguiente:

compraron 3 Azucar a $1,50.- y la venden a $2,20.-
Despues:
compraron 5 Azucar a $1,70.- y la venden a $2,40.-

ellos lo que quieren es sacar la ganancia total.
parece re facil pero no lo es tanto

digamos que vendieron 2 azucar a 2,20.- y despues 6 a 2,40.- ¿como es esto? bueno actualizaron el stock antes de que se acabaran las azucares, y por lo tanto una de ella igualo el precio de venta, de las nuevas.

calculo:

2 Azucar a $2,20.- = ganancia $1,40 [2x($2,20-$1,50)].
6 Azucar a $2,40.- = ganancia $4,40 {($2,40-$1,50)+[5x($2,40-$1,70)]}
GANACIA TOTA= $5,80

Bueno lo que hice fue esto:

ID_ARTICULO // autoincremente MySQL
AR_CODIGO // Codigo designado en el codigo de barras del producto
FIFO // Ley First In First OUT ( 0, 1 , 2 , 3 , 4 ,5 ,6 etc.
AR_COSTO // Costo del producto
AR_DESCRI // descripicion del producto ("Azucar")
AR_PRECIO // Precio venta.
AR_STOCK // stock disponible

COMPRA TRES:
101 123 1 1,50 azucar 2,20 3

VENDE DOS:
101 123 1 1,50 azucar 2,20 1

COMPRA CINCO:
102 123 2 1,70 azucar 2,40 5
101 123 1 1,50 azucar 2,40 1

Utilizo el campo FIFO para saber el orden cual tiene que acabarce primero.
Mi problema viene cuando compran "6", ya que agarra 5 de 1,7 (costo) y una de 1,5 (costo).

Que pasa cada venta, deposita el producto en otra tabla:

ID_VENTA
VEN_ARTICULO
VEN_CODIGO
VEN_DESCRI
VEN_COSTO
VEN_PRECIO
VEN_CANTIDAD

y tendria un patron haci:

10001 101 123 azucar 1,5 2,2 2
10002 101 123 azucar 1,5 2,4 1
10003 102 123 azucar 1,7 2,4 5

AHORA VIENE MI SOLICITUD DE AYUDA:

teniendo esto:

102 123 2 1,70 azucar 2,40 5
101 123 1 1,50 azucar 2,40 1

¿como compro 6 y dejo la tablas de venta haci?

10002 101 123 azucar 1,5 2,4 1
10003 102 123 azucar 1,7 2,4 5

Gracias por llegar hasta ak abajo
y la verdad recurro ak por que no sabria como buscar algo similar.