1

내 데이터 집합 중 하나에서 여러 레코드가 반환되는 시나리오가 있습니다. 이제 보고서에서 그룹화를 구현하여이 데이터 세트의 각 레코드를 다른 페이지에 표시합니다.한 데이터 집합의 필드를 매개 변수로 다른 데이터 집합에 전달하십시오. SSRS 2008 R2

이제 dataset1의 필드를 매개 변수로 사용하여 일부 데이터를로드하는 다른 데이터 세트가 있습니다. 즉, 각 레코드의 매개 변수로 dataset1에서 dataset2까지의 필드를 할당해야합니다.

단일 레코드의 경우 dataset1의 값을 보고서 매개 변수에 할당 한 다음 데이터 세트에 사용할 수 있습니다.

그러나이 경우 매개 변수는 항상 첫 번째 레코드 값을 보유하고 모든 페이지 또는 그룹에 대해이를 전달합니다.

어떻게하면됩니까?

답변

0

나는 당신의 질문을 오해하고 있습니다. 그러나 당신이 찾고있는 것은 LookUp() 함수입니다. 이것은 기본적으로 사용자가 정의한 일부 기본 키와 일치하는 다른 데이터 세트의 데이터를 가져옵니다.

이 함수에는 4 개의 인수가 있습니다. 첫 번째는 "대상"데이터 세트에서 일치 할 데이터입니다 (IE는 현재 매트릭스에 영향을 주며 두 번째는 "소스"데이터 세트 (IE에서 데이터를 가져 오는 데이터)에서 일치시킬 데이터입니다. . 세 번째는 당신이 가져 할 데이터이며, 네 번째는 '소스'데이터 세트의 이름을 예로 그래서

:.

=LookUp(Fields!PrimaryKey.Value, Fields!PrimaryKey.Value, Fields!Data.Value, "DataSet2")

이 될 것이 식의 결과 각 데이터 집합에서 "PrimaryKey"라는 필드의 값과 일치하는 "DataSet2"의 "Data"라는 필드에서 데이터를 가져 오는 보고서

희망적입니다.

+0

Dan 실제로 Dataset2에는 데이터 나 기본 키가 없습니다.그것의 for 루프와 같이 dataset1의 모든 레코드에 대해 dataset2의 데이터를 가져 오려고합니다. – user1061404

1

값이 항상 각 하위 보고서 레코드의 부모 보고서 데이터 집합의 첫 번째 레코드에서 있었던 동일한 문제가있었습니다.

제 경우에는 부모 보고서에서 사용한 숨겨진 매개 변수를 제거하는 것이 좋습니다. 해당 매개 변수에 할당 한 기본값은 쿼리의 결과입니다.

하위 보고서, 선택된 매개 변수의 속성에 들어가서 부모 보고서 매개 변수를 원래 할당 한 값 드롭 다운에서 부모 보고서 데이터 집합 필드의 필드 이름으로 전환하여 값을 전달했습니다. 내 하위 보고서 매개 변수.

희망이 도움이됩니다.

0

귀하의 설명에 따르면 for...next loop을 사용하고 있지만 Dataset1의 첫 번째 항목 만 항상 반환됩니다. 루프가 다음 항목으로 넘어 가기 전에 매개 변수를 지우려고 했습니까? 또 다른 방법은 Dictionary을 만들고 Dataset1에있는 모든 항목을 추가 한 다음 사전을 반복하여 Dataset2에 대한 레코드를 가져오고 루프가 다음 항목으로 이동하기 전에 매개 변수를 지우십시오. 훨씬 더 나은 옵션이 있어야하지만 이것은 내가 지금 가지고있는 것입니다.

감사합니다.

관련 문제