2010-01-21 3 views
1

SSRS 보고서에 레코드 당 여러 행을 확장하는 데 충분한 텍스트가있는 설명 필드가 있습니다. ASP.Net ReportViewer 컨트롤에서 잘 렌더링되지만 서식을 내보낼 때 다를 수 있습니다. Word로 내보내기가 환상적입니다. 그러나 Excel 및 PDF로 내 보내면 각 레코드의 행 높이가 기본값 이상으로 증가하지 않으므로 텍스트가 잘립니다. Excel에서는 개별 또는 다중 행 높이를 입력하여 더블 클릭하여 수정할 수 있지만, 원하지 않는 추가 단계입니다.ASP.Net SSRS ReportViewer로 렌더링 후 Excel에서 행 높이 변경

ReportViewer에서 "내 보낸"이벤트가 없으므로 어떻게 수정하여 Excel에서 올바르게 내보낼 수 있습니까? 렌더링시 ReportViewer 내부에서이를 수행하는 방법이 있습니까? 아니면 Excel 파일을 만든 다음 VBA 코드를 변경하여 Excel 파일을 변경해야할까요? 어떤 아이디어?

답변

1

불행히도 내장 된 reportViewer 렌더러에는 많은 조정 작업이 없습니다. DeviceInfo 문자열을 통해 렌더러의 출력 중 일부를 조정할 수 있지만 수행하려는 작업에는 아무런 변화가 없습니다. (Information on DeviceInfo)

구입할 수있는 타사 렌더러가 있으므로 더 많은 제어 기능을 제공 할 수 있습니다. 나는 결코 자유로운 것을 보지 못했다.

자신 만의 렌더러를 쓰기 시작할 수는 있지만,이 상황에 과도 함 (이 작업을 수행하는 데 오랜 시간이 걸릴 수 있음)이므로 지나치게 권장하지는 않습니다.

그 외에도 COM을 통해 Excel 파일을 열고 파일을 변경하는 코드를 작성할 수 있습니다. 내보내기가 완료된 후 바로 코드를 작성하여 능률화 할 수 있습니다. 또는 언급 한 것처럼 Excel 용 VBA 매크로를 작성할 수도 있습니다.

+0

문제에 대해 작동합니다. :(Infragistics & Telerik 라이센스가있어보고 도구 중 하나를 사용할 수 있다고 생각하지만 ReportBuilder와 같은 도구를 사용하여 SSRS를 사용할 수있게하는 아이디어를 좋아합니다. 큰 사람이 거래 차단기를 만든 경우 아마도 Telerik route로 갈 것입니다. 원래 SSRS 자체에서 보고서 서식을 지정하는 방식으로 문제가 발생했다는 생각이 들었습니다.하지만 아마도 그렇지 않습니다. 응답 해 주셔서 감사합니다! –

3

보고서 관리자를 사용하는 경우 사용자가 내보내기 버튼을 클릭하면 알 수 없습니다. 그러나 보고서를 생성하기 위해 웹 인터페이스를 제공하는 경우 프로세스를 제어 할 수 있습니다. web services을 사용하여 SSRS에서 보고서를 가져올 수 있습니다. 그런 다음 SoftArtisans OfficeWriter와 같은 서버 쪽 Excel 조작 도구를 사용하여 코드의 스프레드 시트를 open and post-process 수 있으며이를 사용자에게 스트리밍 할 수 있습니다.

면책 조항 : 나는-사실은 후 - 그들이 시작하는 내보내기 버튼을 쳤을 때 내가 모르는 무언가를 코딩 SoftArtisans