EXTENDED class

EXTENDED class

Postby goosfancito » Mon Sep 05, 2016 3:05 pm

Buenas.

Ya vi varios item en el foro, pero no me funciona.

tengo que extender la clase tdolphin para hacer una modificacion que me dijo Carlos la cual me parecio muy buena,
en mi
Code: Select all  Expand view
function main()
   EXTEND CLASS TDOLPHINQRY WITH METHOD insert_2
   ...
   return(nil)


y luego en un archivo aparte (que incluyo al compilar)
pongo mi definicion de la funcion

Code: Select all  Expand view
FUNCTION insert_2( cTabla, aFV, nOperacion )


pero al momento de llamarlo desde otro archivo que es una deficion de una clase
me tira el siguiente error:
Error description: Error BASE/1004 Class: 'NIL' has no exported method: INSERT_2
Args:
[ 1] = U
[ 2] = C tbpc
[ 3] = A { ... }
[ 4] = N 0


que estoy haciendo mal?

gracias.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Re: EXTENDED class

Postby karinha » Mon Sep 05, 2016 3:22 pm

Code: Select all  Expand view

// The example adds a method to the "root" class of xHarbour: HBObject().
// All new classes inherit from this class. This is used in the example
// for tracing variables depending on their data types in different log
// files.

 #include "HbClass.ch"

 PROCEDURE Main
   LOCAL obj, nValue := 2, dDate := Date()

   EXTEND CLASS HBObject WITH MESSAGE log METHOD LogData

   ENABLE TYPE CLASS ALL

   obj := Test():new( "xHarbour" )

   obj:log( "Objects.log" )

   nValue:log( "Numerics.log" )

   dDate:log( "Dates.log" )
 RETURN

 CLASS Test
   EXPORTED:
   DATA value
   METHOD init(x) INLINE (::value := x, self)
 ENDCLASS

 STATIC FUNCTION LogData( cLogFile )
   LOCAL self := HB_QSelf()
   LOCAL cOldFile

   IF .NOT. Set( _SET_TRACE )
    RETURN self
   ENDIF

   IF Valtype( cLogFile ) == "C"
    cOldFile := Set( _SET_TRACEFILE, cLogFile )
   ENDIF

   Tracelog( self )

   IF cOldFile <> NIL
    Set( _SET_TRACEFILE, cOldFile )
   ENDIF
 RETURN self
 


João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7315
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: EXTENDED class

Postby goosfancito » Mon Sep 05, 2016 3:35 pm

algo estoy haciendo mal.

el codigo que utilizo esta estructurado cmo pones vos, pero a mi no me lo llama al metodo.

voy a probar tu ejemplo.

gracias.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Re: EXTENDED class (SOLUCIONADO)

Postby goosfancito » Mon Sep 05, 2016 9:47 pm

Gracias!

Lo que estaba haciendo gracias a Carlos que me guio desde el principio me funcionó ,
lo que estaba mal era que yo ponia TDOLPHINQRY y debia ser TDOLPHINSRV gracias
a ambos!

Solucionado.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 14 guests