2014-05-17 7 views

답변

0

([Parameter1] = "" or Field1 contains [Parameter1]) 
and 
([Parameter2] = "" or Field2 contains [Parameter2]) 

감사 Junlasak

0

이전에 같은 일을 할 수있는 방법입니다하지만 난 그래서 여기 간다, 거기에 시간의 몇 손실 :

(명확히하기 위해 SharePoint CAML 쿼리에 사용되는 보고서 매개 변수는 선택적 일 수는 없으므로 AFAIK에서는 "@parameter IS NULL OR OR 열 = @parameter는 "우리는 SQL에서 사용합니다.)

  1. 에서 SharePoint에서 모든 레코드를 검색하는 데이터 집합을 만듭니다.

    • SharePoint가 쿼리에 부과하는 추가 레코드를 검색 할 때는주의해야합니다 (기본값은 SharePoint 2013 이상의 5K 항목). 그것이 어떻게 행동하는지보기 위해 그것을 테스트하지 않았습니다. 이 가능성을 최소화하거나 제거하기 위해 비 선택적 매개 변수를 추가하는 것이 이상적입니다.
  2. 공백을 허용하고 공백 (SSRS의 빈 문자열)이 기본값으로있는 보고서 매개 변수를 만듭니다.

  3. 제 (세부 사항) 행 그룹에 필터를 추가 (행 및 열 그룹 창을 보여 그룹화> 탭보기, 행 그룹> (세부 사항) 컨텍스트 메뉴> 그룹 속성> 필터> 추가) :

      대한
    • "표현" "FX"버튼을 클릭하고 "값"에 대한
      =Iif(Parameters!Client.Value = "", 1, Fields!Client.Value)
    • 뭔가를 추가
      =Iif(Parameters!Client.Value = "", 1, Parameters!Client.Value)
  4. 같은 것을 사용 0

매개 변수가 공백을 허용하고 공백을 기본값으로 가지기 때문에 필터가 표현식과 값이 모두 "1"로 평가되므로 보고서가 처음로드 될 때 모든 항목이 표시됩니다. 사용자가 "클라이언트"매개 변수 텍스트 상자에 값을 제공하면 Expression은 Fields!Client.Value으로 평가되고 값은 Parameters!Client.Value으로 평가되며 항목은 사용자가 제공 한 값에 해당하는 클라이언트로 필터링됩니다. 전체 목록으로 돌아가려면 Client 매개 변수 텍스트 상자의 값을 지우십시오. 이 예제에서는 필터 연산자로 "="을 사용하지만 "Like"와 함께 사용할 수 있습니다. 필요에 따라 값 식에 "*"를 추가하면됩니다.