FoxPro/Visual FoxPro - 3 Preguntas "básicas" (al precio de 1) :)

   
Vista:

3 Preguntas "básicas" (al precio de 1) :)

Publicado por Andrea (325 intervenciones) el 10/07/2009 00:01:53
Hola a todos!!

Necesito hacerles algunas preguntas que después de hacer algunos programas me están surgiendo y que, supongo, deben ser básicas

1) Tengo estructurado el control de errores en programas armados con VFP 6 , es decir, con ON ERROR.
Ahora estoy utilizando VFP 9 y quisiera empezar a utilizar la estructura
__TRY / CATCH / ENDTRY
pero no sé como hacerlo para no estropear lo que tengo programado (que anda).

¿TIENEN ALGÚN EJEMPLO sobre el tema? ¿CÓMO SE HACE EL REEMPLAZO?

2) Índices: cuando armo una tabla en el Diseñador de Tablas, siempre le agrego TODOS los índices que yo supongo que voy a usar.
¿ES NECESARIO ESTO o SOLAMENTE BASTARÍA CON ESTABLECER EL ÍNDICE PRINCIPAL O CLAVE (principal, normal , candidato) y LUEGO CREAR LOS OTROS ÍNDICES CUANDO SE NECESITEN?

- Ejemplo: en la tabla CLIENTES.DBF yo dejo como índices CODIGO_CLI, NOMBRE_CLI y tal vez con CODIGO_CLI sea suficiente.

3) Tengo algunos programas en VFP 6 y quisiera compilarlos en VFP 9 ¿Qué cosas tengo que tener en cuenta? ¿Tendría que andar todo "de una"?

Muchas gracias!!!!!!!!!!!!!!!!!!
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
Imágen de perfil de Mauricio

3 Preguntas

Publicado por Mauricio (1368 intervenciones) el 10/07/2009 01:32:38
Para el punto 1:
TRY
IF This.ChartCanvas.Width < 30 OR ;
This.ChartCanvas.Height < 30
RETURN
ENDIF
*---
* Store the current selected table / cursor
LOCAL lnSelect
m.lnSelect = SELECT()
* Initial Settings
LOCAL loChart as FoxCharts OF FoxCharts.Vcx
m.loChart = This
* Restore the original selected alias
SELECT (m.lnSelect)
*---
CATCH TO loException
THROW loException

ENDTRY
*---
RETURN
********************************
Para el punto 2:
Personalmente voy creando los que necesito, luego los que salgan en el proceso.
**********************
Para el punto 3:
Tuve la experiencia de foxpro 2.6 (DOS) y los compile en VFP6 para mi suerte habia creado una imagen del sistema en DOS, a nadie le sugiero que lo haga, es mejor empezar con el codigo del DOS y empezarlo de cero en VFP9
Es sugerencia nada mas
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

Gracias, pero..

Publicado por Andrea (325 intervenciones) el 10/07/2009 12:48:42
Gracias Mauricio por la respuesta pero...

¿Cómo logro reemplazar el viejo "ON ERROR" por el "TRY / ENDTRY"?

Hasta ahora tengo estructurado mi programa así (esquema)

INICIO.PRG (main)
* declaro variables públicas
* ON ERROR DO manejo_error WITH ERRRO( ), MESSAGE( ), PROGRAM( )

* Llamo al resto de la aplicación
* ...
* DO menuppal.mpr
* READ EVENTS
* ...
* ON ERROR

*----------------------------------------

PROCEDURE manejo_error
Parameters nError, cMensaje, cPrograma

DO CASE
__CASE nError=125

__ CASE nError=1884

__ ....
ENDCASE
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 Mauricio

Gracias, pero..

Publicado por Mauricio (1368 intervenciones) el 14/07/2009 01:46:39
Andrea, solicitaste ayuda, con esto puedes probar sin perder tu trabajo, solo haz una copia de un FORM e intenta algo con el TRY, algo te va a costar pero aprenderas mucho, te lo puedo asegurar..... intentalo (TRY)
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