Implementate col metodo dei record anche la first, last, reread

git-svn-id: svn://10.65.10.50/trunk@5291 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1997-09-26 15:27:10 +00:00
parent 3a358709f1
commit b9a32f04f3

View File

@ -870,12 +870,13 @@ int TBaseisamfile::first(word lockop)
{ {
NOT_OPEN(); NOT_OPEN();
curr().setdirty(); /* curr().setdirty();
_lasterr=cisread(_isamfile, curr(), _isfirst + lockop); _lasterr=cisread(_isamfile, curr(), _isfirst + lockop);
if (_lasterr != NOERR) _lasterr = get_error(_lasterr); if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
_recno = _isamfile->RecNo; _recno = _isamfile->RecNo;
if( curr().has_memo( ) ) if( curr().has_memo( ) )
curr( ).init_memo(_recno); curr( ).init_memo(_recno); */
_lasterr=curr().read(*this, _isfirst, lockop);
return _lasterr; return _lasterr;
} }
@ -884,12 +885,13 @@ int TBaseisamfile::last(word lockop)
{ {
NOT_OPEN(); NOT_OPEN();
curr().setdirty(); /* curr().setdirty();
_lasterr=cisread(_isamfile, curr(), _islast + lockop ); _lasterr=cisread(_isamfile, curr(), _islast + lockop );
if (_lasterr != NOERR) _lasterr = get_error(_lasterr); if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
_recno = _isamfile->RecNo; _recno = _isamfile->RecNo;
if( curr().has_memo( ) ) if( curr().has_memo( ) )
curr( ).init_memo(_recno); curr( ).init_memo(_recno); */
_lasterr=curr().read(*this, _islast, lockop);
return _lasterr; return _lasterr;
} }
@ -951,14 +953,15 @@ int TBaseisamfile::prev(word lockop)
int TBaseisamfile::reread(word lockop) int TBaseisamfile::reread(word lockop)
{ {
NOT_OPEN(); /* NOT_OPEN();
curr().setdirty(); curr().setdirty();
_lasterr=cisread(_isamfile, curr(), _iscurr + lockop); _lasterr=cisread(_isamfile, curr(), _iscurr + lockop);
if (_lasterr != NOERR) _lasterr = get_error(_lasterr); if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
_recno = _isamfile->RecNo; _recno = _isamfile->RecNo;
if( curr().has_memo( ) ) if( curr().has_memo( ) )
curr( ).init_memo(_recno); curr( ).init_memo(_recno);*/
_lasterr=curr().read(*this, _iscurr, lockop);
return _lasterr; return _lasterr;
} }
@ -967,12 +970,13 @@ int TBaseisamfile::reread(TRectype& rec, word lockop)
{ {
NOT_OPEN(); NOT_OPEN();
rec.setdirty(); /* rec.setdirty();
_lasterr=cisread(_isamfile, rec, _iscurr + lockop); _lasterr=cisread(_isamfile, rec, _iscurr + lockop);
if (_lasterr != NOERR) _lasterr = get_error(_lasterr); if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
_recno = _isamfile->RecNo; _recno = _isamfile->RecNo;
if( rec.has_memo( ) ) if( rec.has_memo( ) )
rec.init_memo(_recno); rec.init_memo(_recno); */
_lasterr=rec.read(*this, _iscurr, lockop);
return _lasterr; return _lasterr;
} }