Try
Try
....
Database1.StartTransaction;
.......
스트링크리드에 있는 데이타를 불러와서
DB테이블에 저장
.......
Except
{저장중 에러가 발생하면 에러로그에 저장}
AssignFile(ErrLogfile, LogFileName);
Append(ErrLogfile);
Writeln(ErrLogfile, ErrMsg+ ' 데이타 저장오류 -'+err.message);
// ShowMessage('작업이 중지되었습니다. Data확인요망-'+err.message);
CloseFile(ErrLogfile);
//롤백
Database1.Rollback;
end;
Finally
Database1.Commit;
Query1.close;
end;
이런 식으로 구성이 되어있습니다.
현재는 그리드의 레코드들을 한줄 한줄 가져다가 db에 저장을 할때 중간에 에러가 발생할 경우
거기서 멈추어 버린다는 것입니다.
제가 저녁에 퇴근하면서 프로그램을 실행시켜놓고 갈려고 하는데
중간에 에러가 나면 멈추어버리는 문제로 올릴려는 데이타를 모두 올리지 못하고 있습니다.
혹시 에러가 나면 에러로그를 저장하고 해당 레코드는 건너뛰어 다음 레코드로 진행해서
끝까지 업데이트가 될 수 있는 방법이 있는지요..
여기저기 글들을 검색해 보았는데...딱히 제가 원하는 답을 못찾겠습니다.
그럼 고수님들의 의견을 기다립니다.
|