Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Consulta SQL (https://www.clubdelphi.com/foros/showthread.php?t=60009)

farrop 17-09-2008 01:24:38

Consulta SQL
 
Hola a todos!
Quisiera pedir ayuda para hacer una consulta, la cual no se me ocurre como hacerla.
Primeramente presento los campos.
Vencimientos
Artículo _ Cantidad _ FechaVencimiento
10 _____ 5 ___________ 01/09/2008
10 _____ 5 ___________ 01/10/2008
11 _____ 5 ___________ 01/10/2008
10 _____ 5 ___________ 01/11/2008
11 _____ 5 ___________ 01/11/2008
Esos serian, significa que compre 5 artículos del código 10 que vencen el 01/09/2008, y asi sucesivamente.
Por otra parte esta la tabla artículos
Artículo _ Descripción _ Stock
10 _____ Coca Cola _____ 7
11 _____ Sprite ________ 3
Ahí lo que quiero sacar es un reporte q me digan cuantos artículos tengo con qué fecha de vencimiento. El Resultado me debería dar lo siguiente:
Articulo _ Descripción _ Cantidad _ FechaVencimiento
10 ______ Coca Cola ____ 2 ________ 01/10/2008
10 ______ Coca Cola ____ 5 ________ 01/11/2008
11 ______ Sprite _______ 3 ________ 01/11/2008
Bueno, espero haberme explicado correctamente, como dato importante, estoy utiliz<ando PostgreSQL 8.3.
Saludos y Gracias por la ayuda que ofrecen aqui.

AzidRain 17-09-2008 01:55:52

Eso no sirve....
Por la simple y sencilla razón de que:

La tabla de artículos, que sería el stock, no tiene forma de saber cuantos de sus X artículos vencen tal o cual fecha. Simple y sencillamente porque al momento de hacer la venta no tenemos forma de saber el vencimiento preciso del artículo que estamos vendiendo ya que este no viene codificado en ningún lado. Solamente sabemos que se vendioo tal o cual artículo pero nada sabemos de su caducidad.

En grandes empresas (Wal-Mart me consta) este caso de las caducidades se sigue llevando hasta hoy de manera manual dada esta limitante, con los consiguientes problemas derivados así que dile a tus clientes/jefes que no se proyecten pidiendo cosas que con lo que hay actualmente no es posible hacer.

coso 17-09-2008 14:11:59

tal como dice azidrain, no se puede saber cuantos articulos te quedan de tal o cual compra con cierta fecha de vencimiento. Esto se acostumbra a tratar por lotes, indicando en el momento de la venta de que lote se esta vendiendo. Ahora bien, veo q tratas de bebidas : en los almacenes distribuidores de bebidas se acostumbra a poner los palets mas antiguos para vender primero, por lo que puedes suponer que los vendidos siempre son los que tienen la fecha de vencimiento mas cercana. Deberias asegurarte, si es el caso.
Otra cosa, si no estas teniendo en cuenta las ventas (pues no las nombras) la consulta seria algo asi

Código SQL [-]
select articulo, (select descripcion from articulos where articulo = vencimientos.articulo) as descripcion, cantidad, fecha from vencimientos order by articulo

lo unico que hace en este caso es buscar la descripcion correspondiente desde la tabla articulos. Seguramente con un 'join' conseguirias un resultado parecido. Si lo que quieres es que la cantidad te refleje el stock real, deberas tratar por lotes tal como se dice arriba.

farrop 19-09-2008 22:23:14

Estoy muy de acuerdo q de NO sirve, pero al menos da para tener un estimativo...
Se q no resulta, pero aun asi me gustaria saber como seri ala sentencia SQL, si me poddrian ayudar.
Saludos

coso 19-09-2008 22:38:56

si no tienes en cuenta las ventas...arriba tienes una consulta. en ella puedes modificar la cantidad haciendo resta de la existente con alguna de una supuesta tabla 'ventas'.


La franja horaria es GMT +2. Ahora son las 12:33:20.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi