Subject | What's wrong with this SP? |
---|---|
Author | Jorge Andrés Brugger |
Post date | 2006-10-17T18:55Z |
3 Tables:
Productos
- Codigo
Sucursales
- Codigo
Stock
- Codigo_Producto
- Codigo_Deposito
- Stock
This SP:
CREATE PROCEDURE SP_STOCK_SUCURSALES
returns (
linea_stock varchar(200))
as
declare variable codigo_sucursal smallint;
declare variable codigo_producto integer;
declare variable stock integer;
begin
for select codigo from productos into :codigo_producto do
begin
linea_stock = '';
for select codigo from sucursales into :codigo_sucursal do
begin
select stock from stock where codigo_producto = :codigo_producto
and codigo_deposito = :codigo_sucursal into :stock;
linea_stock = rtrim(linea_stock) || coalesce(stock,0) || '|';
end
suspend;
end
end
Returns a resultset like this:
0|0|0|0|
0|0|0|0|
1|1|1|1|
0|0|0|0|
0|0|0|0|
8|8|8|8|
1|1|1|1|
0|0|0|0|
1|1|1|1|
0|0|0|0|
0|0|0|0|
1|1|1|1|
9|9|9|9|
9|9|9|9|
0|0|0|0|
0|0|0|0|
1|1|1|1|
1|1|1|1|
1|1|1|1|
When what I want is a line for each "producto" containing "stock" from
different "sucursales", not same stock for all.
What I'm missing?
Thank you.
--
Jorge Andrés Brugger
Informática
DASU - Obra Social del Personal de la Universidad Nacional de la Patagonia
Comodoro Rivadavia, Chubut, Argentina
Teléfono (0297) 446-4444 int. 103
Correo electrónico: jbrugger@...
Website: www.dasu.com.ar
Productos
- Codigo
Sucursales
- Codigo
Stock
- Codigo_Producto
- Codigo_Deposito
- Stock
This SP:
CREATE PROCEDURE SP_STOCK_SUCURSALES
returns (
linea_stock varchar(200))
as
declare variable codigo_sucursal smallint;
declare variable codigo_producto integer;
declare variable stock integer;
begin
for select codigo from productos into :codigo_producto do
begin
linea_stock = '';
for select codigo from sucursales into :codigo_sucursal do
begin
select stock from stock where codigo_producto = :codigo_producto
and codigo_deposito = :codigo_sucursal into :stock;
linea_stock = rtrim(linea_stock) || coalesce(stock,0) || '|';
end
suspend;
end
end
Returns a resultset like this:
0|0|0|0|
0|0|0|0|
1|1|1|1|
0|0|0|0|
0|0|0|0|
8|8|8|8|
1|1|1|1|
0|0|0|0|
1|1|1|1|
0|0|0|0|
0|0|0|0|
1|1|1|1|
9|9|9|9|
9|9|9|9|
0|0|0|0|
0|0|0|0|
1|1|1|1|
1|1|1|1|
1|1|1|1|
When what I want is a line for each "producto" containing "stock" from
different "sucursales", not same stock for all.
What I'm missing?
Thank you.
--
Jorge Andrés Brugger
Informática
DASU - Obra Social del Personal de la Universidad Nacional de la Patagonia
Comodoro Rivadavia, Chubut, Argentina
Teléfono (0297) 446-4444 int. 103
Correo electrónico: jbrugger@...
Website: www.dasu.com.ar