PDA

View Full Version : Properties in einer subclass



GhostShotIV
7-Apr-2011, 09:47 AM
Hallo,

ich habe eine Subklasse von der cCrystal Klasse gemacht.
Darin sind eine Procedure und eine Funktion die nur ausgeführt werden sollen, wenn MSSQL eingesetzt wird.
Dies wird beim Start des Programms eingegeben bzw. gesetzt.

Ich könnte aber auch den zur Zeit geladenen Treiber abfragen. (fällt mir beim Schreiben gerade ein)

Property string psIsSQL "MSSQL"

Wenn MSSQL , dann wird MSSQL eingesetzt

Eine Möglichkeit wäre die Property psIsSQL im pkg cKusCrystal.pkg zu registrieren.

Kann man das machen?

Die cKusCrystal Klasse wird aber auch für die Anwendungen benutzt, die mit der VDF Datenbank (embedded) arbeiten.
Also müsste ich aus der Procedure OnInitializeReport an der Stelle //XXXX if ... procedure_return.
Hat jemand ein Tip für mich, wie man dies am geschicktesten löst?



//************************************************** *************************
//*
//* Class: ckusTimerCrystal
//* Package Name: ckusTimerCrystal.pkg
//*
//************************************************** *************************

Use cCrystal.pkg

Class ckusCrystal is a cCrystal

// Construct_Object: Object constructor.
Procedure Construct_object
Forward Send Construct_Object

// Define new Properties: Property {Type} {pxName} {initial_value}

// Create child objects

// Set property values:

End_Procedure

// Create and augment procedure and functions
Procedure OnInitializeReport Handle hoReport
Handle[] hoTables //für Anmeldung
Handle hoDatabaseTable hoDatabase //für Anmeldung
Integer iTableItem iTableCount //für Anmeldung
Boolean bOK
//XXXX if ... procedure_return <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Get DatabaseObject of hoReport to hoDatabase
If (hoDatabase) Begin
Get TableObjects of hoDatabase to hoTables
Move (SizeOfArray(hoTables)) to iTableCount
For iTableItem from 0 to (iTableCount -1)
Move hoTables[iTableItem] to hoDatabaseTable
If (hoDatabaseTable) Begin
// set the same password for all the tables in the ADO datasource
Get SetPassword hoDatabaseTable "pwd" to bOK
End
Loop
End
End_Procedure // OnInitializeReport
....
End_Class // ckusCrystal


Post vom 9.12.2010 aus dem alten DataFlex-Community.de Forum