2009-12-15 1 views
0

나는 윈폼 응용 프로그램에 대한 지역 보고서에서 다음 식을 사용하고 있지만, 필드 값이 null 때 나는 "# 오류"를 나타납니다보고서 표현 도움

=IIf(Fields!MyField.Value = "", "NULL", Left(Fields!MyField.Value, Len(Fields!MyField.Value) - 2)) 

이 난을 제거하기 위해이 일을하고있다 뒤에 오는 쉼표와 값의 공간. IIf() 작품, Left() 작품, Len() 작품 ...하지만 내가 표현의 "- 2"부분을 추가 할 때 아닙니다.

null 값 (또는 ZLS)은 표현식의 후반부가 평가되기 전에 빼내기 때문에 문제가 아닌 것으로 간주합니다.

어떤 아이디어가 원인 일 수 있습니까? 도움을 주시면 대단히 감사하겠습니다!

답변

0

빈 문자열을 검색하고 null 값을 할당하는 경우 사용자의 인라인처럼 보입니다. null 값 (실제로는 길이가 1 인 문자열)은이 코드를 손상시킵니다. 이 사용

시도 :

=IIf(IsNull(Fields!MyField.Value), "NULL", 
(IIf (Len(Fields!MyField.Value) < 2, "SHORT", 
Left(Fields!MyField.Value, Len(Fields!MyField.Value) - 2))) 

나는 읽기 쉽도록 줄 바꿈을 추가했습니다. 분명히 "SHORT"대신에 어떤 문자열을 사용할 수 있습니다. 이렇게하면 Len(Fields!MyField.Value) - 2이 음수로 평가되는 것을 방지 할 수 있습니다. 문제가 원인 일 수 있습니다.