Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Can a class see what it's instantiated as?
Message
 
À
09/10/2015 08:49:52
Information générale
Forum:
Visual FoxPro
Catégorie:
Classes - VCX
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows XP SP2
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Desktop
Divers
Thread ID:
01625748
Message ID:
01625751
Vues:
84
>I have a moment of brain shortage, right now I can't see the forest for all the trees. Is it possible from within an object to know what is the name it's instantiated as? Given this code
>
>
>loCountries = NewObject('SqlTable','SQL.vcx')
>
>In this case I want the class SqlTable to understand that it's instantiated as loCountries. I am building a rather complicated generic class to work with SQL tables. My idea is that if I call the object for instance loCountries, my class can be smart enough to know that I want it to connect to the SQL table called Countries.

You can use AINSTANCE, but not in Init, you should call dedicated method.
after the Init of the class.
CLEAR
test = CREATEOBJECT([TestMe])
test.CheckInstance()

DEFINE CLASS TestMe AS Custom



  PROCEDURE Init
****        this.CheckInstance()
  ENDPROC 
  
  PROCEDURE CheckInstance
      AINSTANCE(aVars,[TestMe])
      DISPLAY MEMORY  LIKE aVars
  ENDPROC 
  
  
ENDDEFINE
Against Stupidity the Gods themselves Contend in Vain - Johann Christoph Friedrich von Schiller
The only thing normal about database guys is their tables.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform