C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[47366] ADO COMMAND 관련 문의(에러 체크방법)
VIYA [redkyung76] 1633 읽음    2006-12-10 21:39
MS-SQL 서버에서 사용을 처음 해 봅니다.

아래와 같이 프로시져를 호출 하는데..
정상적입 값이 입력 되었을 경우 문제가 되질 않는데.
프로시져 수행중 에러가 발생 한다면
대처 할 방법을 모르겠습니다.
오라클에서는 리턴값을 가지고 에러 체크 가능 한데...
아래와 같이 실행 했을 경우 에러 체크를 할 수 있나요?
에러가 나면 프로그램이 정지되는지라...
에러 체크 후 메시지 출력 후 다른 액션을 취할려고 합니다.
고수님들 도움 부탁 드립니다.

            objCmd->CommandType = cmdStoredProc;
            objCmd->CommandText = WideString("sptScheduleSW_Restrict");
            objCmd->ExecuteOptions = TExecuteOptions () << eoExecuteNoRecords;

            OleVariant  Value;
            TParameter  *lpParam;
            int ProReturn, line;

            objCmd->Parameters->CreateParameter("G",         ftString, pdInput,  1, NULL);
            objCmd->Parameters->CreateParameter("GroupID",   ftString, pdInput,  2, NULL);
            objCmd->Parameters->CreateParameter("FactoryID", ftString, pdInput,  1, NULL);
            objCmd->Parameters->CreateParameter("JisiNo",    ftString, pdInput, 14, NULL);
            objCmd->Parameters->CreateParameter("ProcessID", ftString, pdInput,  3, NULL);
            objCmd->Parameters->CreateParameter("MachCode",  ftString, pdInput,  8, NULL);
            objCmd->Parameters->CreateParameter("Line",      ftInteger,  pdInput, 10, NULL);
            objCmd->Parameters->CreateParameter("BobbinWt",  ftInteger,  pdInput, 18, NULL);
            objCmd->Parameters->CreateParameter("PSDate",    ftString, pdInput,  8, NULL);
            objCmd->Parameters->CreateParameter("PSTime",    ftString, pdInput,  4, NULL);
            objCmd->Parameters->CreateParameter("TEXT",      ftString, pdInput,  1, NULL);
            objCmd->Parameters->CreateParameter("RETURN",    ftInteger,pdOutput, 4, NULL);

            objCmd->Parameters->Items[0]->Value = "G";
            objCmd->Parameters->Items[1]->Value = SelectedBlk->GroupID;
            objCmd->Parameters->Items[2]->Value = SelectedBlk->FactoryID;
            objCmd->Parameters->Items[3]->Value = SelectedBlk->JisiNo;
            objCmd->Parameters->Items[4]->Value = SelectedBlk->ProcessID;
            objCmd->Parameters->Items[5]->Value = machcode;
            objCmd->Parameters->Items[6]->Value = line;
            objCmd->Parameters->Items[7]->Value = SelectedBlk->BobbinWt;
            objCmd->Parameters->Items[8]->Value = psdate;
            objCmd->Parameters->Items[9]->Value = pstime;
            objCmd->Parameters->Items[10]->Value = " ";

            objCmd->Execute(); 

            lpParam     = objCmd->Parameters->FindParam("RETURN");
            ProReturn    = Integer(lpParam->Value);

+ -

관련 글 리스트
47366 ADO COMMAND 관련 문의(에러 체크방법) VIYA 1633 2006/12/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.