3 tier 환경에서 작업 중 입니다. db 는 ms-sql2000 이구요..
app 서버는 DBExpress 의 컴퍼넌트를 사용하고 있습니다.
ms-sql 의 트리거 작업을 하고 있는데요.....
문제는 트리거내의 exception 처리시
RAISERROR('MASTER에 미존재. 확인하세오',16,-1)
RETURN
이런식으로 리턴을 하면 raiserror 안의 내용이 리턴이 안됩니다.
쿼리 분석기등에서 직접 실행해 보면 메세지가 뜨는데...프로그램 내에서 리턴되는 메세지를 보면 첫줄만 리턴되고 원하는 메세지내용은 날라오지 않네요....
sql server error ...error code 207 ..이렇게 앞부분만 오고 뒷부분은 오지 않네요..
ReconcileError 부분 코딩은 이렇구요...
CDS1ReconcileError(DataSet: TCustomClientDataSet;
E: EReconcileError; UpdateKind: TUpdateKind;
var Action: TReconcileAction);
case UpdateKind of
ukModify: S := '수정';
ukInsert: S := '입력';
ukDelete: S := '삭제';
end;
raise Exception.Create(PChar(Format('%s 오류입니다.'#13#13'%s', [S,E.Message])));
E.Message 쪽이 트리거내의 지정한 메세지가 리턴이 안됩니다.
아무래도 뭔가 셋팅문제인것 같은데요...
app 서버쪽에 셋을을 해줘야 하는지..
app서버는 sqlconnection sqlquery DataSetProvider ..사용중입니다.