AdoDbServer Class

<< Click to Display Table of Contents >>

Navigation:  The Vo2Ado RDD > RDD Support Library >

AdoDbServer Class

Previous pageReturn to chapter overviewNext page

The sample AdoDbServer class shows how you can use a server class as Tabe callback class.

The class has both Callback methods and methods/accesses/assigns to get/set the advanced workarea properties

 

CLASS AdoDbServer INHERIT DbServer

   PROTECT sColumnList         AS USUAL

   PROTECT nCursorType         AS USUAL

   PROTECT nLockType    AS USUAL

   PROTECT nMaxRecords        AS USUAL

   PROTECT sOrderBy                AS USUAL

   PROTECT sStatement        AS USUAL

   PROTECT sCOlumn                AS USUAL

   PROTECT sWhere                        AS USUAL

 

METHOD ClearRecordset()                         CLASS AdoDbServer

   RETURN SELF:Info(DBI_CLEARRECORDSET)

 

METHOD ColumnList(sTable, sDefault)                         CLASS AdoDbServer

   RETURN iif(IsString(sColumnList), sCOlumnList, sDefault)

 

ACCESS ColumnList CLASS AdoDbServer

 RETURN sColumnList

 

ASSIGN ColumnList(sNew) CLASS AdoDbServer

 sColumnList := sNew

 RETURN sNew

 

ACCESS Connection()                             CLASS AdoDbServer

   RETURN SELF:Info(DBI_CONNECTIONOBJECT)

 

ACCESS ConnectionString()                       CLASS AdoDbServer

   RETURN SELF:Info(DBI_CONNECTIONSTRING)

 

METHOD CursorType(sTable, nDefault)                         CLASS AdoDbServer

   RETURN iif(IsNumeric(nCursorType), nCursorType, nDefault)

 

ACCESS CursorType CLASS AdoDbServer

 RETURN nCursorType

 

ASSIGN CursorType(nNew) CLASS AdoDbServer

 nCursorType := nNew

 RETURN nNew

 

ACCESS HasTransaction()                         CLASS AdoDbServer

   RETURN SELF:Info(DBI_HASTRANS)

 

METHOD Init(oFile, lShareMode, lROMode, xDriver, aRdd) CLASS AdoDbServer

 IF IsString(oFile)

         AdoDbSetTableCallBack(oFile, SELF)

 ELSEIF IsInstanceOfUsual(oFile, #FileSpec)

         AdoDbSetTableCallBack(oFile:FileName, SELF)

 ELSE

         // What else ?

 ENDIF

 SUPER:Init(oFile, lShareMode, lROMode, xDriver, aRdd)

 

 

METHOD LockType(sTable, nDefault)                           CLASS AdoDbServer

   RETURN iif(IsNumeric(nLockType), nLockType, nDefault)

 

ACCESS LockType CLASS AdoDbServer

 RETURN nLockType

 

ASSIGN LockType(nNew) CLASS AdoDbServer

 nLockType := nNew

 RETURN nNew

 

METHOD MaxRecords(sTable, nDefault)                         CLASS AdoDbServer

   RETURN iif(IsNumeric(nMaxRecords), nMaxRecords, nDefault)

 

ACCESS MaxRecords CLASS AdoDbServer

 RETURN nMaxRecords

 

ASSIGN MaxRecords(nNew) CLASS AdoDbServer

 nMaxRecords := nNew

 RETURN nNew

 

METHOD OrderByClause(sTable, sDefault)                      CLASS AdoDbServer

   RETURN iif(IsString(sOrderBy), sOrderBy, sDefault)

 

ACCESS OrderByClause CLASS AdoDbServer

 RETURN sOrderBy

 

ASSIGN OrderByClause(sNew) CLASS AdoDbServer

 sOrderBy := sNew

 RETURN sNew

 

METHOD PreExecute(sTable, sDefault)                         CLASS AdoDbServer

   RETURN sDefault

 

METHOD RecnoColumn(sTable, sDefault)                        CLASS AdoDbServer

   RETURN iif(IsString(sColumn), sColumn, sDefault)

 

ACCESS RecnoColumn CLASS AdoDbServer

 RETURN sColumn

 

ASSIGN RecnoColumn(sNew) CLASS AdoDbServer

 sColumn := sNew

 RETURN sNew

 

ACCESS RecordSet()                                   CLASS AdoDbServer

   RETURN SELF:Info(DBI_RECORDSET)

 

METHOD SaveConnection(cFileName )               CLASS AdoDbServer

   RETURN SELF:Info(DBI_SAVECONNECTION, cFileName)

 

METHOD SaveProvider(cFileName )               CLASS AdoDbServer

   RETURN SELF:Info(DBI_SAVEPROVIDER, cFileName)

 

METHOD SaveTableDef(cFileName)                  CLASS AdoDbServer

   RETURN SELF:Info(DBI_SAVETABLEDEF, cFileName)

 

METHOD Seek(uSearchExpr, lSoftSeek, lLast) CLASS AdoDbServer

 LOCAL lOk AS LOGIC

 lOk := SUPER:Seek(uSearchExpr, lSoftSeek, lLast)

 SELF:Notify(NOTIFYFILECHANGE)

 RETURN lOk

 

ACCESS ServerFilter()                           CLASS AdoDbServer

   RETURN SELF:Info(DBI_SERVERFILTER)

 

ASSIGN ServerFilter(cFilter )                   CLASS AdoDbServer

   RETURN SELF:Info(DBI_SERVERFILTER, cFilter)

 

ACCESS SQLString()                              CLASS AdoDbServer

   RETURN SELF:Info(DBI_SQLSTRING)

 

METHOD TransactionBegin()                       CLASS AdoDbServer

   RETURN SELF:Info(DBI_BEGINTRANS,NIL)

 

METHOD TransactionCommit()                      CLASS AdoDbServer

   RETURN SELF:Info(DBI_COMMITTRANS,NIL)

 

METHOD TransactionRollBack()                    CLASS AdoDbServer

   RETURN SELF:Info(DBI_ROLLBACKTRANS,NIL)

 

METHOD WarningMessage(sTable, sMessage)                   CLASS AdoDbServer

   RETURN sMessage

 

METHOD WhereClause(sTable, sDefault)                           CLASS AdoDbServer

   RETURN iif(IsString(sWhere), sWhere, sDefault)

 

ACCESS WhereClause CLASS AdoDbServer

 RETURN sWhere

 

ASSIGN WhereClause(sNew) CLASS AdoDbServer

 sWhere := sNew

 RETURN sNew