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