어떤 TField가 '필드 값이 필요합니다.'라는 메시지와 함께 EDBClient를 발생시키고 있는지 알아낼 수 있는 방법이 있습니까?

StackOverflow https://stackoverflow.com/questions/1009034

문제

여러 필드가 있는 하나의 TClientDataSet이 있는데 이 예외가 발생합니다. 하나의 필드 값을 설정하는 것을 잊어버렸지만 질문은 어떤 필드입니까?

어떤 필드에서 이 예외가 발생하는지 빠르게 알아낼 수 있는 방법이 있나요?

편집하다

문제를 해결했습니다. TClientDataSet을 서버에는 필수 필드가 있지만 클라이언트에는 이 필드가 없는 잘못된 공급자에 연결하고 있었습니다.

하지만 여전히 내 질문이 무효화되지는 않습니다. 문제를 파악하는 데 많은 시간을 허비했습니다. 어느 서버 측 필수 필드에서 이 오류가 발생하는지 알 수 있는 방법이 있다면 내 실수가 무엇인지 매우 빨리 깨닫게 될 것입니다.

편집 2

관련 QC:

#5557 - "설계대로"로 해결되었습니다.

#54380 - 열려 있는

도움이 되었습니까?

해결책

디버거가 예외를 알리면 호출 스택을 살펴보세요.필드 목록을 반복하는 루틴으로 이동하고 해당 지점에서 루프 제어 변수를 검사하여 예외가 발생하기 전에 프로그램이 필드 목록을 얼마나 통과했는지 알아보세요.

루프 제어 변수가 정확하지 않으면 해당 루틴에 중단점을 설정하고 프로그램을 다시 실행하십시오.예외가 다시 발생할 때까지 단계적으로 진행하세요.

또 다른 옵션은 모든 필드를 살펴보고 값이 부족한 필드를 직접 확인하는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top