home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 16
/
CD_ASCQ_16_0994.iso
/
news
/
4611
/
fw16d.ins
/
SOURCE
/
CLASSES
/
WORKAREA.PRG
< prev
Wrap
Text File
|
1994-06-11
|
3KB
|
102 lines
#include "Objects.ch"
//----------------------------------------------------------------------------//
CLASS TWorkArea
DATA nArea AS Numeric // No cambiar el orden
DATA lBufferOn AS Logical READONLY // de estas declaraciones
DATA aBuffer AS Array // de datos.
METHOD New( nArea ) CONSTRUCTOR // Buffering ON By default
METHOD FieldGet( nField ) EXTERN TWAFieldGe() // if buffering
METHOD FieldPut( nField, uVal ) EXTERN TWAFieldSe() // access to buffer.
METHOD Load() EXTERN TWALoad()
METHOD Save() EXTERN TWASave()
HIDE METHOD SetArea( nArea )
METHOD SetBuffer( lOnOff ) // if TRUE reloads buffer
METHOD Eof() EXTERN TWAEof()
METHOD Bof() EXTERN TWABof()
METHOD FCount() EXTERN TWAFCount()
METHOD RecNo() EXTERN TWARecNo()
METHOD Deleted() EXTERN TWADeleted()
METHOD LastRec() EXTERN TWALastRec()
METHOD RecCount() EXTERN TWALastRec()
METHOD Lock() EXTERN TWALock()
METHOD RecLock() EXTERN TWARLock()
METHOD GoTop() EXTERN TWAGoTop() // if buffering reloads buffer
METHOD GoBottom() EXTERN TWAGoBotto() // "
METHOD Commit() EXTERN TWACommit()
METHOD Delete() EXTERN TWADelete()
METHOD ReCall() EXTERN TWAReCall()
METHOD DBEval( bBlock, bFor, bWhile, nNext, nRecord, lRest ) ;
EXTERN TWAEval()
METHOD Seek( uExp, lSoft ) EXTERN TWASeek() // if buffering reloads buffer
METHOD Skip( nRecords ) EXTERN TWASkip() // "
METHOD GoTo( nRecNo ) EXTERN TWAGoTo() // "
METHOD Append() EXTERN TWAAppend()
METHOD UnLock() EXTERN TWAUnLock()
METHOD Pack() EXTERN TWAPack()
METHOD Zap() EXTERN TWAZap()
ENDCLASS
//----------------------------------------------------------------------------//
METHOD New( nArea ) CLASS TWorkArea
DEFAULT nArea := Select()
::lBufferOn := .T.
::SetArea( if( nArea == 0, Select(), nArea ) )
return Self
//----------------------------------------------------------------------------//
METHOD SetArea( nArea ) CLASS TWorkArea
static nClassH
local n
DEFAULT nClassH := TWorkArea():ClassH()
::nArea = nArea
nArea := Select()
SELECT ( ::nArea )
for n = 1 to FCount()
TWADictAdd( nClassH, "_" + Field( n ), Field( n ) )
next
::aBuffer := Array( FCount() )
if ::lBufferOn
::Load()
endif
SELECT ( nArea )
return nil
//---------------------------------------------------------------------------//
METHOD SetBuffer( lOnOff )
DEFAULT lOnOff := .f.
::lBufferOn := lOnOff
if ::lBufferOn
::Load()
endif
return nil
//---------------------------------------------------------------------------//