FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Macros en campo de DBF
Posts: 155
Joined: Fri Oct 21, 2005 06:35 PM
Macros en campo de DBF
Posted: Sun Mar 05, 2006 10:06 PM

Hola

Como puedo reemplazar en FWH esto que me funcionaba tan bien en Clipper:

Var:=Venta*Porcenta&S

Donde Venta es un campo y Porcenta pueden ser los campos Porcenta1, Porcenta2, etc.

Desde ya, muchas gracias

Saludos
Jorge Jaurena

Posts: 840
Joined: Thu Oct 13, 2005 07:05 PM
Macros en campo de DBF
Posted: Sun Mar 05, 2006 11:32 PM

Muy facil, con un bloque de codigo:

Var := "{|| Ventas * Porcenta"+S+"}"

Y luego para obtener el resultado, evaluas la macro del bloque

nResutlado := EVAL(&var)

Saludos

R.F.
Posts: 155
Joined: Fri Oct 21, 2005 06:35 PM
Macros en campo de DBF
Posted: Mon Mar 06, 2006 01:55 PM
RF wrote:Muy facil, con un bloque de codigo:

Var := "{|| Ventas * Porcenta"+S+"}"

Y luego para obtener el resultado, evaluas la macro del bloque

nResutlado := EVAL(&var)


Rene, tu respuesta me resulto efectiva, pero que pasa si quiero hacer esto:

Private S

FOR Q=1 TO 10
S:=ALLTRIM(STR(Q))
oDbfOrd:Blank()
oDbfOrd:=oDbfRem:PRODU&S
oDbfOrd:Append()
oDbfOrd:Save()
oDbfOrd:Unlock()
NEXT


Muchas gracias
Jorge Jaurena
Posts: 840
Joined: Thu Oct 13, 2005 07:05 PM
Macros en campo de DBF
Posted: Mon Mar 06, 2006 05:26 PM
Igual.... los bloques de codigo son poderosos!!!!!

 
FOR Q=1 TO 10
   S:=ALLTRIM(STR(Q))
   oDbfOrd:Blank()
   cBlock := "{|| oDbfRem:Produ"+S+"}"
   oDbfOrd:Producto:= EVAL(&cBlock)
   oDbfOrd:Append()
   oDbfOrd:Save()
   oDbfOrd:Unlock()
NEXT
Saludos

R.F.
Posts: 155
Joined: Fri Oct 21, 2005 06:35 PM
Macros en campo de DBF
Posted: Mon Mar 06, 2006 06:51 PM
RF wrote:Igual.... los bloques de codigo son poderosos!!!!!

 
FOR Q=1 TO 10
   S:=ALLTRIM(STR(Q))
   oDbfOrd:Blank()
   cBlock := "{|| oDbfRem:Produ"+S+"}"
   oDbfOrd:Producto:= EVAL(&cBlock)
   oDbfOrd:Append()
   oDbfOrd:Save()
   oDbfOrd:Unlock()
NEXT


Pero claro, como no lo vi, el EVAL te devuelve todo tipo de dato.

Muchas gracias

Continue the discussion