Ir al contenido principal

Métodos y datas que no existen

¿Que pasa cuando tratamos de usar un método o una data que no tenemos declarada dentro una clase?

Seguramente, la aplicación nos mostrará un hermoso mensaje de error y con él, la finalización nada elegante de nuestro desarrollo.

Esto me sucedía de una forma frecuente cuando usaba la clase ToleAuto y algún componente que soporte OLE, como puede ser (Excel, Word, Access, etc, etc).

Les voy a mostrar la manera en que resolví este fastidioso problema.

Vamos a hacerlo con un ejemplo usando la clase Texcel.

FUNCTION Test()
oExcel := TExcelScript():New()
oExcel:Visualizar(.T.)
RETURN( Nil )


Este sencillo ejemplo no tiene ningún problema.

Ahora vamos a forzar un error.

FUNCTION Test()
oExcel := TExcelScript():New()
oExcel:Visualiza(.T.)
RETURN( Nil )


¿Ya lo notaron? , ¿Ya ubicaron el error?

¡¡¡ Efectivamente ¡!!! El método visualiza(.T.) no existe y obtendríamos un mensaje de error como este:

-- Error description: Error BASE/1004 Message not found: TEXCELSCRIPT:VISUALIZA

Para resolver esto, vamos a usar el manejador de errores.

Lo primero que debemos de hacer es la declaración dentro de nuestra clase.

CLASS TexcelScript
METHOD ….
METHOD ….
METHOD ….
METHOD ….

ERROR HANDLER ERROR()
ENDCLASS

Y segundo, programar nuestro método Error (), que quedaría de esta forma.

METHOD ERROR () CLASS TExcelScript
MsgInfo( "La propiedad "+__GetMessage() +" no existe " , "Aviso al usuario")
RETURN


Por supuesto que ustedes pueden agregar más sentencias a ese método, por lo pronto para mi es suficiente.

Comentarios

Entradas más populares de este blog

¿ Problemas para descomprimir archivos ?

 Hoy en día hay muchas opciones para comprimir información, existen algoritmos que permiten comprimir distintos tipos de archivos. Los formatos Zip y Rar son comunmente utilizados en Windows, los formatos Tar, Gzip, Bzip2 son utilizados en Linux y Unix. ¿ Qué hacer cuándo se presenta la necesidad de descomprimir un archivo en alguno de los formatos mencionados y no tienes instalado el software necesario en tu equipo ? Te recomiendo visitar  Cloudconvert , es un sitio en dónde podrás convertir archivos de un formato de compresión a otro sin necesidad de instalar software, la convesión es realizada en línea. La versión libre te permite realizar hasta 25 convesiones por día.

Fragmentos

"Hoy desperté, te busqué, me hizo falta estar contigo..." "Con un nudo en la garganta y el alma hecha pedazos, ..." , "quién me iba a decír cuando fuí feliz que tendría un fin, que así son las cosas..." , "dulce sentimiento, de nada me arrepiento , que vivan los momentos en tu boca y en tu cuerpo..." , "en cada caricia amanecía un nuevo sol, más nunca es para siempre, no no no no , no fue para siempre..." , "no me escucha el corazón, no te deja de sentir, sé que no se rendirá, no entiende que no eres para mí...", "puedo morirme mañana, puede secarse mi alma, pero nunca te olvidaré..." , "sólo tengo tiempo, en mi soledad para recordar, sólo me quedan fuerzas para soñar..." "y hoy dibujaré suavemente un verso en mi voz, para dártelo..." "Noooo, no voy a verte más, no pensaré en tí..." , "Yo no sé si tú, no sé si yo, seguiremos siendo como hoy..." "Yo simplemente...

Optimización Dinámica - Método húngaro

 "El modelo de asignación es un caso especial del modelo de transporte, donde los trabajadores representan los orígenes y los trabajos representan los destinos. La oferta en cada origen es igual a 1. El hecho de que la oferta y la demanda sean iguales a 1 conduce al desarrollo de un algoritmo de solución simple llamado método húngaro." Investigación de Operaciones Novena Edición Hamdy A. Taha Modelo de Asignación Pag, 201