Lío con actualización de stocks

26/09/2007 - 10:41 por Masta | Informe spam
Hola a todos,

Llevo un par de días recopilando información en este grupo para
intentar solucionar una consulta que me trae de cabeza.. Os lo
expongo, a ver si me podéis ayudar con la query:

Dos tablas clásicas, de LINEAS DE PEDIDO y de STOCKS

LINEAS DE PEDIDO
==IDPedido - IDReferencia - IDTalla - Cantidad

STOCKS
IDReferencia - IDTalla - Cantidad


Necesito que, pasándole a la consulta un IDPedido, reste de la tabla
de STOCKS los productos de ese pedido, pero con la particularidad de
que el identificador de producto, es el conjunto IDReferencia e
IDTalla, es decir, dentro de la descripción de un pedido las
IDReferencia se pueden repetir, pero el conjunto IDReferencia e
IDTalla sólo aparecerán en una línea.

Espero haberme explicado bien.

Muchas gracias por vuestra ayuda.

Preguntas similare

Leer las respuestas

#1 Maxi
26/09/2007 - 16:57 | Informe spam
Masta, porque no nos ayuda a ayudarlo :-) cuando se exponen este tipo de
cosas y no tenemos muchas mas informacion es complicado poderle dar una
buena solucion.
Porque no nos pasa las estructuras de las tablas, ejemplos de datos y como
deberia ser la resultante


Salu2

Microsoft MVP SQL Server
Culminis Speaker
www.sqltotalconsulting.com

"Masta" escribió en el mensaje
news:
Hola a todos,

Llevo un par de días recopilando información en este grupo para
intentar solucionar una consulta que me trae de cabeza.. Os lo
expongo, a ver si me podéis ayudar con la query:

Dos tablas clásicas, de LINEAS DE PEDIDO y de STOCKS

LINEAS DE PEDIDO
==IDPedido - IDReferencia - IDTalla - Cantidad

STOCKS
IDReferencia - IDTalla - Cantidad


Necesito que, pasándole a la consulta un IDPedido, reste de la tabla
de STOCKS los productos de ese pedido, pero con la particularidad de
que el identificador de producto, es el conjunto IDReferencia e
IDTalla, es decir, dentro de la descripción de un pedido las
IDReferencia se pueden repetir, pero el conjunto IDReferencia e
IDTalla sólo aparecerán en una línea.

Espero haberme explicado bien.

Muchas gracias por vuestra ayuda.
Respuesta Responder a este mensaje
#2 Alejandro Mesa
26/09/2007 - 17:40 | Informe spam
MAsta,

Comparto la opinión de Maxi.

declare @IDPedido int

set @IDPedido = 17

update
s
set
s.Cantidad = s.Cantidad - lp.Cantidad
from
[LINEAS DE PEDIDO] as lp
inner join
STOCKS as s
on lp.IDReferencia = s.IDReferencia
and lp.IDTalla = s.IDTalla
and lp.IDPedido = @IDPedido
go


AMB


"Masta" wrote:

Hola a todos,

Llevo un par de días recopilando información en este grupo para
intentar solucionar una consulta que me trae de cabeza.. Os lo
expongo, a ver si me podéis ayudar con la query:

Dos tablas clásicas, de LINEAS DE PEDIDO y de STOCKS

LINEAS DE PEDIDO
==> IDPedido - IDReferencia - IDTalla - Cantidad

STOCKS
> IDReferencia - IDTalla - Cantidad


Necesito que, pasándole a la consulta un IDPedido, reste de la tabla
de STOCKS los productos de ese pedido, pero con la particularidad de
que el identificador de producto, es el conjunto IDReferencia e
IDTalla, es decir, dentro de la descripción de un pedido las
IDReferencia se pueden repetir, pero el conjunto IDReferencia e
IDTalla sólo aparecerán en una línea.

Espero haberme explicado bien.

Muchas gracias por vuestra ayuda.


Respuesta Responder a este mensaje
#3 Carlos M. Calvelo
26/09/2007 - 18:33 | Informe spam
On 26 sep, 17:40, Alejandro Mesa
wrote:
MAsta,

Comparto la opinión de Maxi.

declare @IDPedido int

set @IDPedido = 17

update
s
set
s.Cantidad = s.Cantidad - lp.Cantidad
from
[LINEAS DE PEDIDO] as lp
inner join
STOCKS as s
on lp.IDReferencia = s.IDReferencia
and lp.IDTalla = s.IDTalla
and lp.IDPedido = @IDPedido
go

AMB




Hola Alejando,

A ver si esto lo ejecuta solo una vez para cada
pedido... porque sino la cantidad en stock va a
bajar "demasiado rápido" :)

Saludos,
Carlos
Respuesta Responder a este mensaje
#4 Carlos M. Calvelo
26/09/2007 - 18:34 | Informe spam

Hola Alejando,




Ui! Perdona AlejandRo !!!

Carlos
Respuesta Responder a este mensaje
#5 Alejandro Mesa
26/09/2007 - 18:48 | Informe spam
Carlos,

Hola Carlos,

Asi es, debe tener cuidado con la ejecucion o tener algun control de cuales
pedidos fueron ya descontados de la tabla STOCK.


AMB

"Carlos M. Calvelo" wrote:

On 26 sep, 17:40, Alejandro Mesa
wrote:
> MAsta,
>
> Comparto la opinión de Maxi.
>
> declare @IDPedido int
>
> set @IDPedido = 17
>
> update
> s
> set
> s.Cantidad = s.Cantidad - lp.Cantidad
> from
> [LINEAS DE PEDIDO] as lp
> inner join
> STOCKS as s
> on lp.IDReferencia = s.IDReferencia
> and lp.IDTalla = s.IDTalla
> and lp.IDPedido = @IDPedido
> go
>
> AMB
>

Hola Alejando,

A ver si esto lo ejecuta solo una vez para cada
pedido... porque sino la cantidad en stock va a
bajar "demasiado rápido" :)

Saludos,
Carlos



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida