어떤 Crystal Reports 및 SSRS (SQL Server Reporting Services)를 사용하는 것이 더 좋습니까?
답변
한편으로 Crystal Reports는 비싸고 과장된 당나귀 똥 더미이며 다른 한편으로 SSRS는 실제로 CR 마케팅이 제공하는 모든 약속을 이행하며 무료입니다.
CR에 대한 저의 경멸은 수년 동안 끔찍한 것을 사용해야 할 의무가 있기 때문입니다. Clubbing the Crystal Dodo 또는 Crystal Reports Sucks Donkey Dork (재미 있지는 않지만 오히려 글을 읽고 기술적 인 세부 사항으로 입증 됨)과 같은 참조를 제공 할 수있을 때 CR의 끔찍함을 자세히 설명 할 필요가 없습니다.
비어 있는?! 예. MS SQL Server를 구매할 필요도 없습니다. 고급 서비스와 함께 SQL Express를 설치할 수 있습니다. SQL Server Reporting Services가 포함 된 다운로드 로 제공됩니다 . SQL Express는 지원할 수있는 동시 사용자 수에 제한이 있지만 다음과 같은 관찰이 두드러집니다.
-
SQL Express의 일부로 얻은 SSRS에 대한 라이선스는 SQL Express의 일부로 배포하기 만하면됩니다. 다른 데이터 원본에 대한 연결을 금지하거나 보고서가 SQL Server에서 데이터를 가져 오도록 요구하는 것은 없습니다.
-
위에서 언급 한 SSRS 버전에는 사용자 연결에 대한 본질적인 제한이 없습니다. 모든 제한은 SQL Express 데이터베이스 엔진에 적용됩니다.
-
SSRS는 Oracle, Jet (Access), OLEDB 및 ODBC 용 드라이버를 기본적으로 포함하는 ADO.NET을 사용합니다.
따라서 무료 버전의 SSRS를 MySQL을 포함하는 ADO.NET을 연결할 수있는 모든 백엔드에 연결할 수 있습니다. Rory는 이것이 “지원되지 않는다”고 아래의 주석에서 들었습니다. 그건 사실이야하지만 난 드라이버가 공급되지 않는 상태를 금지는 것을 라이센스에서 아무것도 찾을 수 없습니다 SSExpress에 의해 그들이 확실히 하는 비주얼 스튜디오의 대부분의 버전에서 제공하고 당신이 당신의 설치 키트를 제공 할 수 있습니다. 이것은 명시 적으로 지원되는 구성이 아닐 수 있지만 어떻게해야합니까? 전체 MSSQL 라이선스를 가지고 있더라도 Microsoft가 타사 데이터베이스와 대화하는 데 도움이 될 것으로 기대하는 것은 다소 의문 일 것입니다.
저는 SSRS를 내부 보고서와 많은 유료 고객에게 국 서비스를 제공하는 ASP.NET 응용 프로그램에 포함 된 외부 보고서에 광범위하게 사용합니다. 우리의 경우 백업 저장소는 Microsoft SQL Server 2008의 라이선스 사본이지만 이는보고 솔루션의 기술적 장점에 부수적으로 발생합니다.
Crystal Reports가 지원한다고 주장하지만 작동하지 않거나 5 명 이상의 사용자를 원할 경우 엄청나게 비싼 라이센스가 필요한 기능 목록이 많습니다. SQL을 올바르게 수행하기 위해 CR을 신뢰할 수도 없습니다. SELECT COUNT(*) FROM SOMETABLE WHERE 1=0
0의 결과를 생성해야하지만 1 을 생성합니다 . 내장 된 쿼리 엔진에 결함이 있으며 아마추어들이 무료로 할 수있는 일 (예 : MySQL)을 망쳐 놓은 팀은 코드에서 성능으로 설명 할 수있는 것을 얻을 희망이 없습니다.
그리고 그들은 그렇지 않습니다. 사악한 것은 바닥이없는 버킷처럼 메모리를 누출하며, SQL 프로파일 링 도구를 사용하면 매우 비효율적이라는 것을 알게 될 것입니다 .
주장 된 지원에 관해서는 대화 크기 조정 버그 가 처음 공개 된 후 수십 년 동안 수정되지 않았 음을 개인적으로 증명할 수 있습니다 . 당신이 신용 카드를 꺼내서 요구 된 갈취적인 몸값을 지불한다면 (저도 그런 공포를 지원하기 위해 멋진 돈을 원할 것입니다) 당신은 그의 이름이 데이비드라고 주장하는 사람과 이야기 할 것입니다. 그리고 누가 당신의 질문을 이해하지 못하더라도 대답이 훨씬 적습니다.
SSRS 지원 상황은 상당히 유사하지만 실제로 작동하므로 많이 필요하지 않습니다.
반면 SSRS는 CR이 주장하는 모든 작업을 수행합니다. 버그가없는 것은 아니지만 유쾌하게 적고 한 번 이상 릴리스주기에서 살아남는 경우는 거의 없습니다.
SSRS 디자이너 UI는 Visual Studio IDE 내에서 호스팅됩니다. 전형적인 마이크로 소프트 스타일로 매력적으로 표현되지만, 그 이상으로 기존의 보고서 디자이너로부터 몇 가지 간단하지만 근본적인 이탈을 통합하여 상당히 잘 고려되었습니다. 예를 들어, 표 형식의 데이터를 표시하려면 개별 텍스트 상자를 다루지 않고 표를 정의합니다. 결과적으로 정렬을 시도 할 필요가 없으며 테두리를 배치하는 것은 간단한 스타일 시트 연습입니다.
SSRS는 실제로 CR이 주장하는 모든 작업을 수행하고, 저렴하며, 광범위하고 신뢰할 수있는 기술 문서가 있으며, 확장 (문서화)하도록 설계되었으며 ODBC 드라이버를 얻을 수있는 모든 것에 연결할 수 있습니다. 이것은 생각할 필요가 없습니다.
SSRS의 몇 가지 단점
- 페이지 머리글과 바닥 글의 필드를 바인딩하는 방법은 명확하지 않습니다.
- (내가 아는 한) 페이지 하단을 기준으로 위치를 지정할 수 없습니다. 이것은 특정 유형의 보고서에 대한 진정한 문제이며 해결 방법이 없다고 생각할 수있는 문제입니다.
- 교차 테이블에서 확장 수평 롤업은 지원되지 않습니다.
- 보고서 머리글 및 바닥 글에 대한 직접적인 지원은 없습니다. 페이지 나누기 속성을 적절하게 설정하여 보고서 레이아웃의 위쪽과 아래쪽에 Rectangle 개체를 사용합니다. 또는 하위 보고서를 사용합니다. 이것에 대해 불평하는 사람들은 분명히 열심히 노력하지 않았습니다.
- 겹치는 그룹 간격에 대한 지원 부족 (CR 그룹화 시스템이이를 수행 할 수 있음) UPDATE SSRS 2008 R2는 이제이를 지원합니다. 그룹화 편집 대화 상자에 묻혀 있습니다. “그룹 변수”를 찾고 이것을 읽으십시오 .
실제로 SSRS2005로 그룹을 겹칠 수있는 것 같습니다. 바닥 상대 위치 문제를 해결 한 사람이 있습니까?
답변
저는 Crystal Report를 버전 10까지 사용해 왔으며 항상 ASP.NET 응용 프로그램과 함께 원하는 작업을 성공적으로 수행했습니다. 웹에서의 출력은 WYSIWYG처럼 정말 좋으며 Excel 및 PDF 로의 내보내기도 정확합니다. 인쇄도 놀랍도록 정확합니다.
최근에 저는 SSRS 2005에서 약 1 년 동안 작업 해 왔으며 기본적으로 제공되어야하는 많은 결점을 목격하기 위해 살고 있습니다. SSRS 웹 출력은 브라우저 및 차이 해상도에 따라 크게 다르며 개발자를 쉽게 아프게 만들 수 있습니다. 또한 보고서 뷰어의 스크롤 문제는 IFRAME을 사용하는 HTML을 기반으로하기 때문에 최종 사용자를 매우 일찍 화나게 만들 것입니다. ( 참고 : Crystal 13은 웹 뷰어에서 산발적 인 텍스트 줄 바꿈 및 겹침 문제가있는 IFRAME을 사용합니다.). 수출은 전혀 좋지 않습니다. 이미지를 셀의 왼쪽이나 가운데에 맞출 수 없으며 이미지의 배경색을 지정할 수 없습니다. 전체 보고서 본문을 가운데 정렬 할 수 없습니다. 가능성을 위해, 나는 몇 시간 동안 렌더링 된 HTML을 가지고 놀았고 그것이 작동하도록 정확한 대체물을 찾았지만, 이러한 간단한 수정은 SSRS 개발자에게 알려지지 않았습니다. 아마도 SSRS를 사용하지 않았기 때문일 것입니다.
또한 웹 애플리케이션에서는 매개 변수에 대한 잘못된 UI를 기본적으로 보유해야합니다. 나는 그것을 완전히 제거하고 ASPX 페이지에서 작성하는 비용으로 인해 ObjectDataSource 및 데이터베이스 페이지 매김 기술을 사용하는 대신 DataGrids에서 테이블 형식 보고서를 디자인하려고 생각했습니다. 필요에 따라 매개 변수를 배치 할 수 없습니다. paramters 섹션의 버그는 변경없이 전체 보고서를 게시합니다. 그룹화를 사용한 페이징은 트릭으로 작동하지만 전체 데이터 세트에서 정렬이 실패합니다. 모든 중간 수준에서 고급 수준의 UI 요구 사항에 대해 SSRS는 불가능하다는 것을 알아내는 데 너무 많은 시간이 소요됩니다. SSRS 사용자가 적기 때문에 온라인 커뮤니티에는 간단한 문제에 대한 좋은 해결책이 없습니다. SSRS의 장점은 배포, 기본 제공 알림, 캐싱 및 구성 측면이지만 승리 할 UI가 없다는 점을 잊지 마십시오.
BOTTOMLINE은 SSRS가 Microsoft 지원 팀이 ‘죄송합니다! 한 달 후 ‘. SSRS 2008에는 이러한 문제가 바로 해결되지 않았습니다. 또한 SSRS ’08 로의 이동은 백엔드 플랫폼의 완전한 마이그레이션도 의미합니다. 소프트웨어를 더 많이 사용할수록 시간이 지남에 따라 더 성숙해 짐을 염두에두면, SSRS가 곧 버그를 스스로 수정하는 데 드는 비용을 축적하기 때문에 Crystal은 어쨌든 훨씬 더 나은 선택입니다.
답변
3 개의 DLL 파일을 포함하여 Reporting Services를 사용하여 앱을 배포 할 수 있습니다. 그것은 엄청난 이점입니다. (참고-GAC에서 3 개의 DLL 파일 중 하나를 가져와야합니다.)
Crystal Reports를 사용하면 응용 프로그램을 실행할 각 컴퓨터 (웹 사이트 또는 클라이언트 앱)에 런타임을 설치해야합니다.
Reporting Services에는 대부분의 사람들이 필요로하는 모든 기능이 있으며 배포가 훨씬 쉽습니다. 꼭 필요한 경우가 아니면 절대로 Crystal Reports를 사용하지 않습니다.
답변
이 스레드가 다시 열렸으므로 2 센트를 추가하겠습니다. 버전 7 일과 8 일 동안 크리스탈을 약 3 년 동안 사용해야했습니다. 나는 매 순간을 싫어했다. 나는 최신 버전을 조금 보았지만 여전히 마음에 들지 않습니다.
나는 이것을 너무 싫어해서 이렇게 말하는 것이 고통 스럽다. 내 경험상 Crystal은 복잡한 보고서에 SSRS보다 더 적합하다. 동료와 저는 SSRS에서 작업하기 위해 적당히 복잡한 보고서 레이아웃을 얻기 위해 필사적으로 노력했지만 포기했습니다. 제품에 대한 저의 인상은-제 생각에, 당신을 염두에 두십시오-그것이 황금 시간대에 아직 준비되지 않았다는 것입니다.
크리스탈은 당신의 삶을 미워하고 다른 직업을 찾게 만들지 만, 그것이 널리 퍼져있는 이유가 있습니다.
답변
내 경험상 Reporting Services가 훨씬 더 좋습니다. 더 나은 환경이지만 가장 좋은 연결 (데이터 소스)은 보고서와 분리되어 공유 할 수 있습니다. 따라서 환경 간의 배포가 훨씬 간단 해집니다.
답변
두 가지를 모두 사용했으며 이미 말한 내용에 몇 가지 요점을 추가하겠습니다.
-
간단한 작업을 위해 기본적으로 SSRS를 권장합니다. 크리스탈은 약간 부풀어 오르고 기발합니다.
-
Crystal은 MS Word 형식 (.doc)으로 쉽게 내보낼 수 있습니다. 고객은 내 경험에서 이것을 자주 원합니다.
-
서식이 중요한 경우 Crystal이 더 좋을 수 있습니다. 예를 들어 SSRS 보고서는 단일 텍스트 상자에 둘 이상의 텍스트 유형을 포함 할 수 없습니다. 즉, 보고서 상단에 기울임 꼴과 일반 텍스트가 모두 포함 된 주석을 가질 수 없습니다. Crystal은 다음을 수행 할 수 있습니다.
참고 : 이 보고서에는 해당 날짜를 포함 하여 시작 날짜부터 종료 날짜 까지 의 데이터가 포함 됩니다.
SRSS는 할 수 없습니다 (여러 개의 겹치는 텍스트 상자없이). 한 번은 20 페이지짜리 문서를 받았는데, 그 안에 수십 개 정도의 그래프와 표에 대한 데이터가 포함 된 보고서로 변환되었습니다. SSRS에서 시작했지만 Crystal에서는 보고서의 하드 코딩 된 부분을 단어에서 곧바로 복사하여 붙여 넣을 수 있다는 사실을 깨달았고, 색이있는 제목과 모든 것을 사용하여 작업 시간을 절약했습니다. 따라서 Crystal은 여러면에서 더 나은 “디자이너”를 가지고 있습니다.
업데이트 :
현재 SRSS에서이 두 가지 문제가 모두 수정되었습니다. 누구든지 이것에 대해 더 언급하고 싶습니까?
답변
나는 그가 설명하는 이유로 @Carlton과 부분적으로 동의합니다 . 또한보고 서비스가 더 성숙한 제품이라고 생각합니다 (Crystal Reports가 더 오래 사용되었지만). 테스트 및 배포 모델은 매우 강력하며 보고서 사용을 추적하는 기본 제공 기능이 매우 유용합니다.
또한 Reporting Services에서 보고서를 디자인하는 것이 훨씬 더 쉽다는 것을 알았습니다. Microsoft는 좋은 IDE를 구축하는 방법을 배웠지 만 Crystal IDE는 항상 사후 생각처럼 보였습니다 (예전에는 산후보다 낫지 만) .
편집 : 추가 생각 Windows 상점에서 SSRS는 OS 및 SQL Server와의 모든 종류의 달콤한 통합을 제공한다고 생각합니다. SSRS에서 기본 제공 코드를 상당히 쉽게 재사용하기 위해 SQL 어셈블리를 사용할 수 있으며 Active Directory 보안 모델과의 통합을 통해 보고서를 매우 쉽게 보호 할 수 있습니다.