2014-05-19 3 views
0

이름으로 필터링하는 크리스탈 보고서 매개 변수를 추가하려고합니다 (예 : , 날짜와 달리 매개 변수가 이름으로가는 경우 모든 항목을 포함하도록 넓은 범위를 설정할 수 있음) 사용자가 입력 한 이름 만 사용할 수 있으며 아무 것도 입력되지 않으면 모든 공백이 표시됩니다.크리스탈 보고서 매개 변수 설정으로 공백이 모두 0 일 때

수식을 변경하여 이름을 입력하지 않은 경우 공백으로 표시하지 않고 대신 모두 표시합니다. 날짜 선택 및 이름 선택에

나의 현재 공식은 다음과 같습니다 I에 이름이 입력되지 때 모든 =을 표시 할 수 있도록

{transfer.type} in ["date", "Dep", "Pmt"] and 
{transfer.qdate} = {?date} and 
{transfer.method} = 0 and 
(not HasValue({?First Name}) OR {student.student} = {?First Name}) 

난 그냥 이름 부분을 변경하고 싶습니다. 정말 고마워! 당신이 당신이 여기 무엇을하는지는 ... 가져들을 사용 기록 선택 레코드 선택에서 매개 변수를 포함하는 경우

답변

0

.... 아무것도 paramter에 입력되지 않을 때

그래서 다음이 필요합니다 모든 값이 반환되므로 아무 것도 입력하지 않으면 name 매개 변수를 보내지 않는 것이 가장 좋습니다.

if hasvalue({?First Name}) then    // if parameter has value then use in condition 
{transfer.type} in ["date", "Dep", "Pmt"] and 
{transfer.qdate} = {?date} and 
{transfer.method} = 0 and 
{student.student} = {?First Name}) 
else           // if parameter doesn't has value then don't use so that all values are returned 
{transfer.type} in ["date", "Dep", "Pmt"] and 
{transfer.qdate} = {?date} and 
{transfer.method} = 0 
0

내가 일반적으로 "모두"기본값 (대신 빈의)하고 사용자가 변경합니다 :

그래서 수식이 될 것

({?First Name} = "All" OR {student.student} = {?First Name}) 

공백, 널 (null), 빈 문자열은 비슷하게 보이지만 다르게 동작합니다. 보이는 "All"은 사용자와 개발자에게 정확히 무엇을 기대하는지 알려줍니다.

관련 문제