FoxPro/Visual FoxPro - COMO RESTAR DE UN REGISTRO VFP 9

 
Vista:
Imágen de perfil de freddy

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por freddy (10 intervenciones) el 16/12/2015 20:07:29
HOLA DE ANTEMANO GRACIAS POR SU AYUDA A CONTINUACION LES EXPRESO MI PROBLEMA :


ESTOY REALIZANDO UN PROYECTO EN VFP9 SOBRE UN STOCK DE FARMACIA Y QUISIERA SABER COMO SE RESTA DE UN REGISTRO EJEMPLO:

TENGO EN STOCK 25CAPSULAS (ESTAS ESTAN REGISTRADAS EN LA TABLA) LLAMADA VENT

ME VIENEN A COMPRAR 10

QUISIERA SABER COMO REALIZAR ESA RESTA AL MOMENTO DE VENDER EN LA TABLA ME QUEDARIA 15 Y ESOS 15 Q QUEDEN EN LA TABLA POR FAVOR AYUDA

GRACIAS POR TODO
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
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por Fidel José (657 intervenciones) el 16/12/2015 21:18:06
Seleccionar Tabla (SELECT VENT)
Ir al Registro correspondiente ( LOCATE / SEEK() / INDEXSEEK() / GO nREgistro / etc)

* Supongo aquí que el campo se llama "Stock"
REPLACE CampoStock WITH Stock - lnCantidadVendida
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
Imágen de perfil de freddy

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por freddy (10 intervenciones) el 16/12/2015 23:30:49
pero tendria q tomar el registro y restarlo aparte
osea
select vent
public vt
vt=stock
rt=(thisform.text1.text-vt)
replace stock with rt
espero darme a enterder
si no es asi
por favor ayudenme con un ejemplo
gracias por su tiempo y ayuda
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
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por Fidel José (657 intervenciones) el 17/12/2015 16:43:03
Freddy, normalmente vas a estar vendiendo o comprando, o tramitando una devolución, de varios artículos.
Estos varios artículos los recoges en un cursor, que es lo que vas mostrando en un control Grid.
Mirá este ejemplo hecho con cursores (simplifico todo lo que corresponde a precio, impuestos, totales, etc. para concentrarme únicamente en stock.)
En la práctica, los cursores curVentas y curCompras son la base para actualizar tablas de detalles de ventas y compras.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
* Creo un cursor con productos (id, Descripción y una cantidad inicial)
CREATE CURSOR curProductos("idProducto" I ,"Descrip" c(40),;
		"Compra" n(12,2),;
		"Venta" n(12,2),;
		"Stock" n(12,2))
 
FOR i=1 TO 10
	INSERT INTO curProductos(Descrip,idproducto,stock) ;
		VALUES ("PRODUCTO"+TRANSFORM(i), (i+i^2) , 0 )
NEXT
SELECT curProductos
INDEX on idProducto TAG idProduc
* Miro el cursor de productos
SELECT curProductos
GO top
BROWSE
 
 
* Simulo una operación de Compras
CREATE CURSOR curCompras ("IdProducto" I , "Cantidad" n(12,2))
 
RAND(-1)
FOR i=1 TO 10
	INSERT INTO curCompras (idproducto,cantidad) VALUES (i+i^2, CEILING(RAND()*100 ) )
NEXT
 
* Actualizo Stock por Compras
SELECT curCompras
SCAN
	IF INDEXSEEK(idProducto,.t.,"curProductos","idProduc")
		SELECT curProductos
		REPLACE stock WITH stock + curCompras.Cantidad,;
			compra WITH compra + curCompras.Cantidad
	ENDIF
ENDSCAN
 
* Miro el cursor de productos
SELECT curProductos
GO top
BROWSE
 
 
 
* Simulo una operación de Ventas
CREATE CURSOR curVentas ("IdProducto" I , "Cantidad" n(12,2))
 
RAND(-1)
FOR i=1 TO 10
	INSERT INTO curVentas (idproducto,cantidad) VALUES ((i+i^2),CEILING(RAND()*10) )
NEXT
* Actualizo Stock por Ventas
SELECT curVentas
SCAN
	IF INDEXSEEK(idProducto,.t.,"curProductos","idProduc")
		SELECT curProductos
		REPLACE stock WITH stock - curVentas.Cantidad,;
			venta WITH venta + curVentas.Cantidad
	ENDIF
ENDSCAN
 
 
* Miro el cursor de productos
SELECT curProductos
GO top
BROWSE
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
sin imagen de perfil

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por wences (35 intervenciones) el 17/12/2015 09:25:28
En el momento de registrar la venta lees el stock , por si hubiese otra venta mientras generas esa (no se si en tu caso se puede dar) , y una vez leido el stock haces la operación y la guardas ...

SELECT tabla
set order to clave
SEEK producto
IF .NOT. EOF()
replace stock with stock-vendido
ENDIF
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
sin imagen de perfil
Val: 21
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por yimmy (11 intervenciones) el 25/02/2019 03:55:19
hola amigo wences mira lo que pasa es que tengo 3 tablas
la primera es de ingreso de productos
la segunda es de factura de productos
y la ultima es de venta de productos

en el form de venta esta con la tabla llamada facturadeproductos entonces cuando voy hacer la venta traigo todos los datos de ingreso de productos claro con sus cantidades pero lo quiero hacer es que cuando hago la venta quiero saber la resta de las cantidades si yo ingrese 20 y vendi 1 como y donde puedo hacer para saber lo que queda
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
Imágen de perfil de William
Val: 33
Ha aumentado su posición en 2 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

COMO RESTAR DE UN REGISTRO VFP 9

Publicado por William (17 intervenciones) el 26/02/2019 02:24:09
Tienes que tener una tabla de ARTICULOS en el cual debe tener una columna en el cual guardes el stock conforme vayas vendiendo le restes y si compres lo sumes, caso contrario tendrias que estar sumando tus compras y restando tus ventas cada vez que desees saber el stock de un ARTICULO.
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