Article View: chile.comp.programacion
Article #1005Re: MySQL y actualizacion dependiente de un campo
From: gato2006chile
Date: Thu, 03 May 2007 03:25
Date: Thu, 03 May 2007 03:25
68 lines
3892 bytes
3892 bytes
Gracias por haber respondido, exactamente eso es. Con lo anterior que postearon, me di cuenta de ese detalle. Basta almacenar el costo de venta al momento de la misma en las unidades vendidas. Me enrede por querer mantener solo un grupo de venta por insumo. En resumen lo dejo de la siguiente manera: Si los costos son iguales(insumos y vendidos) se altera solo la cantidad, si difieren se agrega un nuevo insumo vendido al precio actual. Por suerte no tendre que modificar mucho c�digo. Jos� Miguel Santib��ez escribi�: > En el cap�tulo anterior (news:f1avpb$3kv$1@news.nivel5.cl), > gato2006chile <gato2006chileSINESTO@gmail.com> dijo: > >> En esencia es un problema de Insumo e insumosVendidos. >> Cada insumo tiene un costo que puede variar y un insumo vendido tiene >> un registro que incluye el numero de unidades vendidas y el costo >> total de dichas unidades. >> >> Si se tienen por ejemplo 5 unidades vendidas y se aumentan a 7 basta >> solo multiplicar 2 * costoactual y agregarselo al costo de insumo >> vendido. >> >> El problema esta cuando se tiene 5 unidades y se reduce a 3. >> Si la actualizaci�n es de inmediato no habr�a problema, pero que >> sucede si se produce despu�s de una actualizaci�n del precio de un >> producto, existir�an inconsistencias de precios, por lo cual se usa el >> costo por unidad igual a el "valor pagado/unidades vendidas" al >> momento de la actualizaci�n. >> >> En mysql si actualizo en este orden >> >> Unidades=Nuevo valor >> CostoTotal=(Costo total previo/Unidades previas)*(Nuevo valor de >> unidades)) >> >> Unidades previas toma el nuevo valor, siendo que debiera tener el >> valor previo. >> >> Si actualizo CostoTotal y despues Unidades, el valor por unidad es el >> correcto. >> >> Mi problema es como lo haria si fueran dos o mas valores de los cuales >> dependen un conjunto de campos. > > Hmmm.. ley�ndolo, creo que la normalizaci�n no es tan mala idea... > > En ese caso, habr�a bastado tener: costo_unitario al momento de la venta y > cantidad... Si cambia la cantidad da lo mismo... si cambia el costo > unitario posteriormente, tambi�n... > Y si se quiere sacar un total vendido: select sum(costo_unitario*cantidad) > resuelve todo el problema... > > O incluso, para una desnormalizaci�n consistente, creas un tercer campo: > costo_total que se actualiza con un "update tabla set costo_total = > costo_unitario*cantidad"... > > O, en el peor de los casos y siguiendo la idea anterior, creas un nuevo > campo: costo_unitario y lo calculas con "update tabla set costo_unitario = > costo_total / cantidad" y eso te va a solucionar todos los problemas > posteriores... >
Technical Details
Message-ID:
<f1b6ls$696$1@news.nivel5.cl>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!fu-berlin.de!news.nivel5.cl!not-for-mailReferences:
<f1asdt$2gt$1@news.nivel5.cl> <Xns9924D79D2904Bjmsnews@200.27.221.71> <f1avpb$3kv$1@news.nivel5.cl> <Xns9924DF618EBAjmsnews@200.27.221.71>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,849d401a7cebc7b1 X-Google-Attributes: gid1593cb,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!fu-berlin.de!news.nivel5.cl!not-for-mail From: gato2006chile <gato2006chileSINESTO@gmail.com> Newsgroups: chile.comp.programacion Subject: Re: MySQL y actualizacion dependiente de un campo Date: Wed, 02 May 2007 23:25:36 -0400 Organization: Varios Lines: 68 Message-ID: <f1b6ls$696$1@news.nivel5.cl> References: <f1asdt$2gt$1@news.nivel5.cl> <Xns9924D79D2904Bjmsnews@200.27.221.71> <f1avpb$3kv$1@news.nivel5.cl> <Xns9924DF618EBAjmsnews@200.27.221.71> NNTP-Posting-Host: pc-152-68-44-190.cm.vtr.net Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Trace: news.nivel5.cl 1178148348 6438 190.44.68.152 (2 May 2007 23:25:48 GMT) X-Complaints-To: news@news.nivel5.cl NNTP-Posting-Date: Wed, 2 May 2007 23:25:48 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.7.10) Gecko/20060419 Thunderbird/1.5.0.10 Mnenhy/0.7.5.0 In-Reply-To: <Xns9924DF618EBAjmsnews@200.27.221.71>