Progress - Crear tabla temporal y vaciar en un Browse

 
Vista:

Crear tabla temporal y vaciar en un Browse

Publicado por SERGIO (2 intervenciones) el 29/11/2008 02:55:24
Estoy haciendo un punto de venta en, y lo que quiero hacer es que cuando inserto un artpiculo me lo vaya muestre en un browse, así para cada artículo de la venta y que me vaya sumando, para el total, la columna del precio. Al finalizar, que lo que se mostró en el browse se guarde en una tabla ¿cómo le podría hacer?
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
sin imagen de perfil

RE:Crear tabla temporal y vaciar en un Browse

Publicado por Juan Puig (11 intervenciones) el 02/12/2008 18:03:15
Podrías empezar por buscar en la ayuda la parte de browsers hay un ejemplo completo de manejo de browsers.
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:Crear tabla temporal y vaciar en un Browse

Publicado por Rayne Flores (9 intervenciones) el 08/03/2009 04:18:16
/*Lo primero que Debes hacer es una tabla temporal mas o menos asi:*/

Define Temp-Table Venta
Field Articulo as Integer
Field Descrip as Character
Field Costo as decimal
Field Cantidad as Integer
Field Total as Decimal.

/*Te preparas una busqueda de articulos para irlos agregando a la temporal asi:*/

Find First tablaArticulo where tablarticulo.articulo = (miarticulo) no-lock no-error.
Find First Venta where Venta.Articulo = tablaarticulo.articulo no-lock no-error.
if not available Venta then do:
create
venta.
assign
venta.Articulo = tablaarticulo.articulo
venta.Descrip = tablaarticulo.descrip
venta.Costo = tablaarticulo.monto
venta.Cantidad = (micantidad)
venta.Total = tablaarticulo.monto * (micantidad).
{&OPEN-QUERY-{&BROWSE-NAME)).
run nuevaventa.
end.

/*y el open query del browse lo realizas asi:*/
for each venta no-lock:
display
venta.
end.

/*y en el Procedimiento nuevaventa asignas a la tabla los datos de la temporal asi:*/

define variable contador as integer no-undo.

contador = 0.

find last Ventas no-lock no-error.
if available ventas then contador = contador + ventas.numero.
else ventas.numero = 1.

do transaction:
create
ventas.
assign
ventas.Articulo = venta.Articulo
ventas.Descrip = venta.Descrip
ventas.Costo = venta.Costo
ventas.Cantidad = venta.Cantidad
ventas.Total = venta.Total.
release Ventas.
end.

espero te sirva

saludos
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:Crear tabla temporal y vaciar en un Browse

Publicado por Rayne Flores (9 intervenciones) el 08/03/2009 04:13:13
/*Lo primero que Debes hacer es una tabla temporal mas o menos asi:*/

Define Temp-Table Venta
Field Articulo as Integer
Field Descrip as Character
Field Costo as decimal
Field Cantidad as Integer
Field Total as Decimal.

/*Te preparas una busqueda de articulos para irlos agregando a la temporal asi:*/

Find First tablaArticulo where tablarticulo.articulo = (miarticulo) no-lock no-error.
Find First Venta where Venta.Articulo = tablaarticulo.articulo no-lock no-error.
if not available Venta then do:
create
venta.
assign
venta.Articulo = tablaarticulo.articulo
venta.Descrip = tablaarticulo.descrip
venta.Costo = tablaarticulo.monto
venta.Cantidad = (micantidad)
venta.Total = tablaarticulo.monto * (micantidad).
{&OPEN-QUERY-{&BROWSE-NAME)).
run nuevaventa.
end.

/*y el open query del browse lo realizas asi:*/
for each venta no-lock:
display
venta.
end.

/*y en el Procedimiento nuevaventa asignas a la tabla los datos de la temporal asi:*/

define variable contador as integer no-undo.

contador = 0.

find last Ventas no-lock no-error.
if available ventas then contador = contador + ventas.numero.
else ventas.numero = 1.

do transaction:
create
ventas.
assign
ventas.Articulo = venta.Articulo
ventas.Descrip = venta.Descrip
ventas.Costo = venta.Costo
ventas.Cantidad = venta.Cantidad
ventas.Total = venta.Total.
release Ventas.
end.

espero te sirva

saludos
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