Clipper/FiveWin - Ejecución de comandos

 
Vista:

Ejecución de comandos

Publicado por Nimitsu (1 intervención) el 07/08/2003 01:21:15
Buen dia/tarde/noche:
Necesito ejecutar un comando contenido en una variable. Por ejemplo:

cComando := ' ? "saludos" '

&cComando // errorcito de compilacion....

Existe otro mecanismo que me permita ejecutar un comando o funcion contenido en una variable? Espero que se entienda.
Muchisimas gracias a todos.
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: 4
Ha mantenido su posición en Clipper/FiveWin (en relación al último mes)
Gráfica de Clipper/FiveWin

RE:Ejecución de comandos

Publicado por Yamil Bracho (94 intervenciones) el 07/08/2003 15:31:27
el ? es preprocesado a la funcion QOut asi que debes escribir tu macro como
cComando = "Qout(" + Chr(34) + "Saludos" + Chr(34) + ")"
&(cComando)

La otra manera de ejecutar codigo contenido en un string y es el que te recomiendo es usar un code block

cb = { || Qout( "Saludos") }
Eval(cb)

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:Ejecución de comandos

Publicado por Nimitsu (1 intervención) el 07/08/2003 16:00:17
Gracias Yamil por tu respuesta:
El comando ? lo puse como ejemplo...pero puede ser cualquier otro comando que ingreses por ejemplo en un GET... READ y que puede o no ser para trabajar con un .DBF. Es decir si quiero usar LOCATE seria preprocesado como dblocate y asi con todos los comandos, ok.
Mi intención era saber si existe otras forma diferente a las que me cuentas en tu respuesta. En fox es posible guardar un comando como cadena y ejecutarlo como &cComando.
De nuevo gracias por tu interes.

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:Ejecución de comandos

Publicado por jose revoredo (31 intervenciones) el 08/08/2003 03:04:44
Te sugiero amiga que uses CodeBlocks de una vez.. eso es programar en Clipper 5.x y son muy potentes. las & de clipper provienen de las versiones summer 87 y son muy limitadas.. claro sirven para algunas cosillas .. pero un codeblock hace lo mismo que ellas y es mas potente , puedes tener grandes porciones de codigo que se ejecuten en un codeblock. revisa el EVAL() el DBEVAL() y las asociadas a estas.. te asombraras de su potencia. Con un DBEVAL puedes hacer un mini programa en una linea.. por ejemplo.

while Data->(!eof())
<instrucciones ..>
Data->(DBskip())
end

la sustituyes por DBEVAL({|| <instrucciones>})

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