2014-10-17 6 views
0

다양한 필드 수를 가진 데이터 집합이 있습니다. 처음 5 개 필드는 정적이며 나머지는 이름과 총계가 모두 변경됩니다. 이러한 알 수없는 필드를 내 테이블에 추가하는 것을 어떻게 처리합니까? 필자는 필드를 반복하고 6 번째 필드에서 마지막으로 테이블 줄에 열을 삽입하는 코드를 작성하는 방법을 생각했지만 그 방법에 대해서는 알지 못합니다. 가능한지 아니면 가장 좋은 방법인지 궁금합니다. 내 문제를 해결하십시오. 나는 또한 ssrs에 익숙하지 않고 아직 코드를 작성하지 않았습니다. 당신의 아이디어는 높이 평가됩니다.SSRS 2008 R2 : 크리스탈 보고서를 사용하여 학생 결과 스프레드 시트를 디자인하는 방법

미리 감사드립니다.

답변

0

나는 이것을 풀려고 머리를 잃었습니다. 그러한 문제를 겪을 수있는 사람들을 위해, 비록 내가 더 나은, 덜 스트레스가 많은 방법이있을 수 있다고 믿지만, 여기에 나를 위해 일한 것이 있습니다. 그 전에 문제를 설명해 보도록하겠습니다 : dynamic pivot queries을 사용하여 정적 및 동적 열 (예 : 학생 학년 스프레드 시트, 교수/학급, 세션 및 학기에 따라 과정이 다른 보고서)을 만드는 보고서를 만들고 싶습니다. 필자의 주요 쟁점은 데이터베이스의 동적 결과를 미리 디자인 된 Crystal Report로 가져 오는 방법이었습니다. 그래서, 내가 한 일은 다음과 같습니다.

  1. 빈 데이터 세트를 앱에 추가하십시오.
  2. 데이터 세트에 DataTable을 두 개 추가합니다. 빈 DataTable1과 강력한 유형의 DataTable2을 보고서에 포함합니다. 예를 들어 보고서에 10 개의 입력란이 필요한 경우 Datatable2에는 10 개의 열이 있어야합니다. 또한 쉽게 코딩 할 수 있도록 열 이름이 균일해야합니다 (예 : DataColumn1, DataColumn2 ...).
  3. 응용 프로그램에 보고서 컨트롤을 추가하십시오 (제 경우에는 Crystal 보고서를 사용했습니다).
  4. DataTable2의 열을 사용하여 보고서를 디자인하십시오.
  5. 데이터베이스에서 동적 열 (이 경우 코스 코드)을 가져 오는 코드를 작성하고 DataTable1에 입력하십시오.
  6. 위의 5 단계에서 얻은 코스 코드 당 학생의 성적을 얻는 또 다른 코드를 작성하십시오.
  7. 보고서의 동적 텍스트 개체의 text 속성의 이름을 DataTable1에 채워진 동적 열의 이름으로 바꿉니다. 이것은 중첩 된 for...next 루프를 사용하여 수행되었습니다. 이것은 매우 필요합니다. 그렇지 않으면 보고서는 전달 된 데이터를 인식하지 않고 빈 시트를 표시합니다.
  8. 보고서를 표시하십시오.

누구든지 위의 구현에 어려움이 있거나 이에 대한 수정이 필요한 경우 처리 할 수 ​​있습니다.

감사합니다.