Xailer: datasets más informativos
Octubre 14th, 2007
Hola,
Al final de estas lineas os dejo un proyecto Xailer donde he modificado el comportamiento de algunos métodos de la clase tdbfDataset para que nos informe de lo que está haciendo en ese momento la clase.
Xailer nos introdujo al mundo xBase la utilización de las clases X y T. Esta forma de jerarquizar las clases permite hacer algo que nos facilita mucho o muchísimo la adaptación a nuestras necesidades o a nuestros gustos las clases estándar de Xailer. En este caso concreto lo que he pretendido es mostrar al usuario, mediante unos bitmaps y unos textos, qué esta haciendo nuestra aplicación cuando se opera con tablas dbfs. La idea del ejemplo es sobreescribir la clase TdbfDataset para añadir antes y después de la llamada real un texto informando de la acción a realizar. Vamos a ver lo que he dicho con un ejemplo concreto:
CLASS TDbfDataSet FROM xDbfDataSet
METHOD Open()
ENDCLASS
METHOD Open( l ) CLASS TDbfDataSet
LOCAL u
TRY
Application:oMainForm:oStatusBar1:aItems[2]:cText := "Abriendo "+::cName
Application:oMainForm:oStatusBar1:aItems[2]:nImage := 2
CATCH
END
u := Super:Open( l )
TRY
Application:oMainForm:oStatusBar1:aItems[2]:cText := "Reposo"
Application:oMainForm:oStatusBar1:aItems[2]:nImage := 1
CATCH
END
RETURN u
Este método hace una llamada al método superior (super). Pero justo antes y justo después muestra información en Application:oMainForm:oStatusBar1:aItems[2]. Esto puede modificarse a gusto de cada uno. De hecho, y para los más puristas del OOP, esta no sería la mejor forma de hacerlo. No. Lo correcto sería añadir una data a la clase con el control que vamos a manipular y en el momento de la creación del objeto tdbfDatase indicar el control. Para el caso del ejemplo lo he simplificado por cuestiones de tiempo y claridad en el ejemplo.
Espero que os guste. Para cualquier cuestión o pregunta… me tenéis a vuestra disposición. Aquí podéis descargar el ejemplo.
Salud!
José Luis Capel
Entrada clasificada en: Técnico
