Thanks James! It could serve as a template for new projectsJames Bott wrote:Hua,
Here is a more complete New() method. You can use this as a starting point for each class (one class for each database). The file is opened (with automatic retrys) and then the primary key index is set. So with just this one line of code you open the database, open the indexes, and set the order.
oCustomers:= TCustomers():New()
Sample New() method:
Note that at the start of your application you need to do this (assuming you are using CDX's):Code: Select all
CLASS TCustomers from TDatabase Method New() ENDCLASS Method New( lShared ) Class TCustomers Default lShared:= .T. ::Super:New(,"customers",,lShared) If ::Use() ::SetOrder("CUSTNO") // Primary key ::Gotop() Endif Return self
This causes all the indexes to be automatically opened whenever you open a DBF.Code: Select all
REQUEST DBFCDX rddsetdefault( "DBFCDX" ) SET EXCLUSIVE OFF SET(_SET_AUTOPEN, .T. )
Migrating TDatabase to FWH19.03's from FWH11.08
Re: Migrating TDatabase to FWH19.03's from FWH11.08 (Resolved)
FWH 11.08/FWH 19.03
xHarbour 1.2.1 (Rev 6406) + BCC
Harbour 3.1 (Rev 17062) + BCC
Harbour 3.2.0dev (r1904111533) + BCC
xHarbour 1.2.1 (Rev 6406) + BCC
Harbour 3.1 (Rev 17062) + BCC
Harbour 3.2.0dev (r1904111533) + BCC