2017-09-05 11 views
1

SQL 조인을 사용하여 여러 테이블에서 데이터를 검색하고 있습니다. 부서별로 레코드를 그룹화합니다. 부서 이름이 null이 아닌 레코드 만 표시하려고합니다. 나는 이것을 통해 JOINS를 제어 할 수 있지만 다른 시나리오에서는 null 부서 기록을 보여줄 필요가 있습니다. 가능한 수식이 있습니까? 나의 현재 공식은 다음과 같습니다Crystal Report 특정 필드가 null이 아닌 레코드를 표시하는 수식입니까?

if {?ParamGrp} = "Department" then 
(
    "Department Name: " &{tblEmployees.DepartmentName} 
) 
else if {?ParamGrp} = "" then 
(
    "" 
) 

답변

1

크리스탈은이 값은 단지 빈 문자열 그대로 null이되지 않고 상황에 대한 공식 ISNULL()에 내장되어 있습니다. 기존 코드에 쉽게 연결할 수 있습니다.

IF ISNULL({tblEmployees.DepartmentName}) OR {?ParamGrp} = "" THEN 
    "" 
ELSE IF {?ParamGrp} = "Department" THEN 
    "Department Name: " & {tblEmployees.DepartmentName} 
+0

어떤 부서와도 관련이없는 레코드가 여전히 표시됩니다. 부서 이름이 null 인 레코드를 표시하고 싶지 않습니다. ParamGrp가 아닙니다. –

+0

그런 다음 스왑 아웃하십시오. 'ISNULL ({? ParamGrp})'를'ISNULL ({tblEmployees.DepartmentName}) '으로 바꾸십시오. – 4444

+0

이미 시도했습니다. 어쩌면 내가 뭔가 잘못하고있는 것 같아. 기본적으로,'paramGrp'는 제 'groupby' 절을 포함합니다. 부서 또는 지국 또는 국적별로 그룹화하고자하는 경우. –