Power Builder - PROC ALM ACTUALIZA STOCK

   
Vista:

PROC ALM ACTUALIZA STOCK

Publicado por CARLOS VELAZCO (10 intervenciones) el 20/04/2009 05:32:50
HOLA PROGRAMADORES ESPERO ME PUEDAN AYUDAR TENGO ESTE PROBLEMA

ESTOY HACIENDO UN MANTENIMIENTO DE FACTURA EL CUAL TIENE LAS SIGTES TABLAS
TBARTICULO
TBDETALLE
TBPEDIDO
TBTEMPORAL

TENGO UN FORMULARIO CON 3 CAJAS DE TEXTO UN DE CODIGO DE PEDIDO,COD DE CLIENTE Y CODIGO DE VENDEDOR Y UN DATAWINOWS EL CUAL TIENE LOS CAMPOS
IDART(CODIGO DE ARICULO),DESCRIPCION,PRECIO,CANTIDAD Y TOTAL

GUARDO LOS CAMPOS TANTO AL DETALLE COMO AL PEDIDO MEDIANTE UN PROCEDIMIENTO ALMACENADO QUE A LA VEZ ME ACTUALIZA EL STOCK

create PROCEDURE GRABA_PEDIDO
@xnum varchar(5),
@xcli varchar(3),
@xven varchar(3),
@codart varchar(3),
@cantidad int
as
begin

insert into tbpedido values(@xnum,getdate(),@xcli,@xven)
insert into tbdetalle select @xnum,idart,precio,cantidad from tbtemporal
delete from tbtemporal
update tbarticulo set stock=stock-@cantidad where idart=@codart

end

/********************************

Y LO LLAMO DE ESTA MANERA EN EL FORMULARIO EN EL BOTON GUARDAR

string codarti
int cant

codarti=dw_1.getitemstring(dw_1.getrow(),'idart')
cant=dw_1.getitemnumber(dw_1.getrow(),'cantidad')
int i

for i=1 to dw_1.rowcount()
DECLARE spgraba PROCEDURE FOR GRABA_PEDIDO
@xnum = :sle_1.text,
@xcli = :sle_5.text,
@xven = :sle_6.text,
@codart = :codarti,
@cantidad = :cant ;

execute spgraba;
next

MI PROBLEMA ES QUE SOLO ME ACTUALIZA EL ULTIMO REGISTRO DE VENTA SI ELIJO UN DETALLE DIGAMOS UN ARTICULO A COMPRAR NOP HAY PROBLEMA, PERO SI ELIJO DOS O MAS ARTICULOS SOLO ME ACTUALIZA EL ULTIMO REGISTRO ESPERO ME PUEDAN AYUDAR GRACIAS PERO NO CON COMENTARIOS SINO CON CODIGO GRACIASSSSSSSSSSSSSSS DE ANTEMANO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PROC ALM ACTUALIZA STOCK

Publicado por RCG (5 intervenciones) el 29/04/2009 06:09:32
Mi recomendacion ... crea un DW con base a la SP ... o ... cuelga el procedimiento al DW ... esto lo logras a traves del painter de DW .. menu Rows, Stored Procedure Update
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PROC ALM ACTUALIZA STOCK

Publicado por Francisco Tanori (2 intervenciones) el 03/05/2009 02:08:44
Tu problema esta en que solo tomas un codigo del articulo, fuera del for

string codarti
int cant

int i

for i=1 to dw_1.rowcount()

/* Tomar articulo y cantidad por cada fila del DW para enviarlos al SP */

codarti=dw_1.getitemstring(i,'idart')
cant=dw_1.getitemnumber(i,'cantidad')

DECLARE spgraba PROCEDURE FOR GRABA_PEDIDO
@xnum = :sle_1.text,
@xcli = :sle_5.text,
@xven = :sle_6.text,
@codart = :codarti,
@cantidad = :cant ;

execute spgraba;
next

Saludos.

Pd. Por Educacion no se Escribe todo en Mayusculas (ya que significa gritar)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PROC ALM ACTUALIZA STOCK

Publicado por carlos (3 intervenciones) el 06/10/2010 03:33:35
POR FAVOR AYUDAME AMI CORREO ENVIAME

COMO HACER UN STOCK

Y UN BAKUP EN POWER BUILDER SIII

POWER BUILDER CON SQLSERVER
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar