• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 4064
2007.11.05 (02:10:33)
* 고객시스템명 : A/S 시스템
* TOInB 버전 : 5.x
* 서버 Platform : Window
* 문의 유형(질문/요청/참조) : SO 에러시 에러 정보 DB 저장 및 DB 트렌젝션 문의
* 내용

1. SO 에서의 에러정보 DB 저장

작성된 SO 에서 에러발생시 에러정보(TBL_ERROR_CODE, TBL_ERROR_MSG, 기타..) 를 DB 에 저장하려 합니다.
이를 위해 에러정보 테이블과 해당 테이블에 값을 저장할 공용 SO (SO 'ErrorWrite') 를 만들었습니다.

- 대상 SO에서 TB_on_error() 에 다음과 같은 형태로 기술

    (1) 파일 로그 기록
       TBL_Prn(tb_stderr, "TBL_ERROR_CODE[%d] : %s",  TBL_ERROR_CODE, TBL_ERROR_MSG);
                        
    (2) 데이터 테이블 생성(ErrInfo)

    (3) SO 'ErrorWrite' 의 input1 포멧에 맞게 TBL_SetFormat() 함수 사용

    (4) 데이터 테이블 에 값 셋팅 ( TBL_PutColumnString(), TBL_PutColumnString()... 사용)

    (5) Row 삽입 ( TBL_InsertRow() )

    (6) 해당 SO 'ErrorWrite' 호출 ( TBL_ExecLocalObject() 사용 )

    (7) 데이터 테이블 삭제 ( 'ErrInfo' , TBL_DeleteDatatable() 사용 )

- 상기와 같이 기술하여 대상 SO 를 컴파일 후 에러를 발생시키면 정상적으로 에러정보 기록 SO 를 호출합니다.

   다만, 대상 SO 에서 에러가 발생한 관계로 TBL_ExecLocalObject()를 사용하여 호출한 에러정보 기록 SO 또한 트렌젝션에서 롤백 처리가 되어  정상적으로 DB 에 저장이 되지 않습니다.

- 해결 방안
  
   에러정보 기록 SO ('ErrorWrite') 에서 SO 시작전 롤백 함수( TBL_Rollback() ) 를 수행하여 피호출 SO 에서 발생한 DB트랜젝션을 롤백한 후  에러정보를 DB 에 저장하고 커밋 함수 ( TBL_Commit() ) 를 실행하고자 합니다.

- 고려사항 (문의사항)

   a. 위 로직대로 처리할 경우 혹 제대로 DB 트랜젝션 관리가 안 된다거나 동시에 다른 SO에서 발생된 에러(롤백되어야 할 데이터)까지 커밋될 가능성은 없는지요.
   b. 위 로직이 혹시 토인비의 트렌젝션 관리 기준에 위배되거나 하진 않는지요.
   c. 과연 위의 로직이 의도한 바대로 제대로 동작할 지요.



2. 트렌젝션 문의

  하나의 SO 에서 수행된 모든 PL-SQL 문과 select_sql, insert_sql, update_sql 등은 하나의 트렌젝션으로서 관리가 되는지 궁금합니다.
  또한 위 1번 문의사항과 같이 로컬 혹은 원격지의 호출된 SO 까지 하나의 DB트렌젝션 으로서 관리되고 있는 것인지 또한 의문사항입니다.
  
  SO 내 event 함수 내 SQL 실행 문 또는 PL-SQL 수행시 ROLLBACK; 또는 COMMIT; 이라고 명시적으로 주시 않아도 토인비에서 자동적으로 이러한 DB 트랜젝션이 롤백과 커밋을 일으키는 것인 지 또한 궁금합니다.


* 관련된 메뉴얼을 찾아 이러한 부분을 충족할 수 있겠지만 검색 공력이 작아 찾지 못하고 이렇게 문의드립니다.
   부디 좋은 답변 부탁드리겠습니다.
번호 제목 닉네임 조회 등록일
497 Tr 파라미터 전달 방법 문의 [1]
엄엄
9488 2016-03-17
496 SAP 연계 메뉴얼 요청 [1]
조성제
10217 2016-01-29
495 출력 시 오류 문의 드립니다. [3]
DA인포메이션
9376 2015-12-14
494 서버 IP변경으로 라이센스 재발급 방법 [1]
루시퍼
7891 2015-11-03
493 Dynamic Report Builder 레포트 관련 문의 [1]
snowaka
7692 2015-08-27
492 Clob처리 관련 답변 부탁드립니다 [1]
메탈키드
7509 2015-07-29
491 토인비웹리포팅 바코드와 PCL5 [1]
고척동제이
8185 2015-07-20
490 toinb 세션 time out 문의 [1]
변주선
8160 2015-07-15
489 토인비5.0 다국어 지원 [1]
김택근
7603 2015-05-21
488 Toinb 문제점 확인요청(천진삼성SDI) [1]
tsdi
7764 2015-05-04
487 서버 디스크 변경시 Toinb 싱행에러 문의 [1]
tsdi
7430 2015-05-04
486 SOB관련 문의 입니다. [1]
9417 2015-02-06
485 IE 11 호환성 문의 [1]
조성제
7785 2015-01-08
484 java 업데이트시 서버에 미치는 영향 [1]
도영곤
8032 2014-09-16
483 SE_LOG variable 함수 관련 문의 드립니다. [1]
임상혁aaa
7519 2014-06-26
482 RunExcelSheet 구현 [1]
김강중
7575 2014-03-27
481 BLOB 처리방법 문의? 파일 [1]
후니7
8926 2014-01-03
480 토인비 변수 비교시 에러 발생(수정) [1]
서원규
7539 2013-03-26
479 토인비 변수 비교시 에러 발생 [1]
서원규
7566 2013-03-26
478 TOInB EVENT REMOTE_ADDR 변수 관련 문의 [1]
서원규
7712 2013-03-22
Tag List
XE Login