다음을 통해 공유


레코드 선택 수식 문제 해결

선택 수식 문제를 해결하려면 먼저 선택 수식에서 참조되는 모든 필드가 보고서에 배치되는지 확인해야 합니다. 그런 다음 선택 수식을 다시 작성하면서 단계별로 선택 수식을 삭제하고 테스트합니다.

데이터를 생성하지 않는 선택 수정

레코드 선택 수식을 만들 때 머리글과 바닥글 정보는 보고서에 인쇄되지만 본문 정보는 나타나지 않는 경우가 있습니다. 이 경우 문제는 선택 수식이 모든 레코드를 거부한다는 것입니다. 이러한 문제는 일반적으로 선택 수식 작성에 오류가 있기 때문에 발생합니다.

선택 수식에서 문제의 원인이 될 수 있는 것은 다음과 같습니다.

  • 대문자/소문자 불일치
  • 불필요한 공백

대문자/소문자 불일치 수정

레코드 선택 수식은 대/소문자를 구분합니다. 즉 "Bob"는 오직 "Bob"와만 일치합니다. "bob", "BOB", "BoB", "bOB", "boB" 또는 "BOb"와는 일치하지 않습니다. 따라서 {고객.담당자 이름} 필드 값이 "BOB"인 레코드만 포함하도록 선택 수식을 설정할 경우 {고객.담당자 이름} 필드의 모든 항목이 "Bob"와 같이 대/소문자가 섞여 있으면 선택 수식은 일치하는 항목을 찾지 못하므로 보고서의 본문에는 아무 것도 인쇄되지 않습니다.

선택 수식에 UpperCase (str) 또는 LowerCase (str) 함수를 사용하여 필드 데이터를 모두 대문자나 모두 소문자로 변환한 다음 선택을 시작하면 이 문제를 해결할 수 있습니다. 예를 들어, 다음 수식을 사용하는 경우

{customer.CONTACT FIRST NAME} = "BOB"

수식을 다음과 같이 변경합니다.

UpperCase({customer.CONTACT FIRST NAME}) = "BOB"

이 둘째 수식은 {고객.담당자 이름} 필드의 값을 대문자로 변환한 다음 그 필드의 값이 "BOB"와 같은지 확인합니다. 이 수식을 사용하면 모두 대문자로 변환되므로 대/소문자에 관계 없이 "b", "o", "b" 세 문자로 이루어진 모든 인스턴스를 찾습니다.

같은 방식으로 LowerCase 함수를 사용하여 "bob"와 일치하는 항목을 찾을 수 있습니다.

선택 수식을 자세히 살펴보고 찾을 텍스트의 대/소문자가 정확한지 확인합니다. 확실하지 않으면 UpperCase 또는 LowerCase 함수를 사용하여 대/소문자를 일치시킨 후 적절한 값을 찾습니다.

다음 수식도 거의 동일한 기능을 수행합니다.

"BOB" in UpperCase({customer.CONTACT FIRST NAME})

선택 수식에 있는 불필요한 공백

공백도 문자이므로 레코드 선택 수식의 검색 키에 공백을 포함하면 수식은 선택된 필드에서 공백을 포함하여 모든 것이 정확하게 일치하는 것을 찾습니다. 예를 들면 다음과 같습니다.

"Mr . " in {customer.TITLE}

검색 키에서 "r" 문자와 마침표 사이에 여분의 공백이 있으므로 주소 "Mr."의 형태와 일치하는 것은 하나도 찾을 수 없습니다. 마찬가지로 "Ph. D"는 "Ph.D"와 일치하지 않습니다.

선택 수식을 자세히 살펴보고 선택 수식에 있는 공백이 찾으려는 필드의 공백과 일치하는지 확인합니다.