Aggiunto controllo sulla scrittura dei memo in ::write, ::delete,
::rewriteat e ::rewrite. Il controllo aggiunto riguarda il test di _lasterr, per evitare CHECK Maialeschi. git-svn-id: svn://10.65.10.50/trunk@2584 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
aeff220d55
commit
1df10c5463
@ -940,7 +940,7 @@ int TBaseisamfile::write(TDate& atdate)
|
||||
if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
|
||||
setkey(oldkey);
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
if( has_memo( ) )
|
||||
if( _lasterr == NOERR && has_memo( ) )
|
||||
{
|
||||
curr( ).memo_info( ).recno( _recno );
|
||||
curr( ).write_memo_info( _isamfile);
|
||||
@ -964,7 +964,7 @@ int TBaseisamfile::write(const TRectype& rec, TDate& atdate)
|
||||
if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
|
||||
setkey(oldkey);
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
if (_lasterr != NOERR )
|
||||
if (_lasterr == NOERR )
|
||||
{
|
||||
if( has_memo( ) )
|
||||
{
|
||||
@ -992,7 +992,7 @@ int TBaseisamfile::rewrite(TDate& atdate)
|
||||
_lasterr = DB_rewrite(_isamfile->fhnd);
|
||||
if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
if( has_memo( ) )
|
||||
if( _lasterr == NOERR && has_memo( ) )
|
||||
{
|
||||
curr( ).memo_info( ).recno( _recno );
|
||||
curr( ).write_memo_info( _isamfile );
|
||||
@ -1017,7 +1017,7 @@ int TBaseisamfile::rewrite(const TRectype& rec, TDate& atdate)
|
||||
_lasterr = DB_rewrite(_isamfile->fhnd);
|
||||
if (_lasterr != NOERR) _lasterr = get_error(_lasterr);
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
if( has_memo( ) )
|
||||
if( _lasterr == NOERR && has_memo( ) )
|
||||
{
|
||||
rec.memo_info( ).recno( _recno );
|
||||
rec.write_memo_info( _isamfile );
|
||||
@ -1040,7 +1040,7 @@ int TBaseisamfile::rewriteat(TRecnotype nrec)
|
||||
} else
|
||||
_lasterr = get_error(_lasterr);
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
if( has_memo( ) )
|
||||
if( _lasterr == NOERR && has_memo( ) )
|
||||
{
|
||||
curr( ).memo_info( ).recno( _recno );
|
||||
curr( ).write_memo_info( _isamfile );
|
||||
@ -1061,7 +1061,7 @@ int TBaseisamfile::rewriteat(const TRectype& rec, TRecnotype nrec)
|
||||
} else
|
||||
_lasterr = get_error(_lasterr);
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
if( has_memo( ) )
|
||||
if( _lasterr == NOERR && has_memo( ) )
|
||||
{
|
||||
rec.memo_info( ).recno( _recno );
|
||||
rec.write_memo_info( _isamfile );
|
||||
@ -1111,7 +1111,7 @@ int TBaseisamfile::remove(TDate& atdate)
|
||||
}
|
||||
}
|
||||
}
|
||||
if(has_memo())
|
||||
if(_lasterr == NOERR && has_memo())
|
||||
curr().memo_info().recno(RECORD_NON_FISICO);
|
||||
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
@ -1141,7 +1141,7 @@ int TBaseisamfile::remove(const TRectype& rec, TDate& atdate)
|
||||
}
|
||||
}
|
||||
|
||||
if(has_memo())
|
||||
if(_lasterr == NOERR && has_memo())
|
||||
curr().memo_info().recno(RECORD_NON_FISICO);
|
||||
|
||||
_recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);
|
||||
|
Loading…
x
Reference in New Issue
Block a user