다음을 통해 공유


서버 파일에 바인딩(VS .NET 2003 )

개체 모델

이 보고서 바인딩 시나리오에는 CrystalReportViewer가 사용됩니다("CrystalReportViewer 개체 모델을 통한 보고서 바인딩" 참조).

보고서 위치

보고서는 로컬 파일 디렉터리의 보고서 폴더에 있습니다("샘플 보고서 디렉터리" 참조). 이 위치의 보고서는 보고서 웹 서비스로 제공됩니다.

Crystal Services 개요

이 보고서 바인딩 시나리오는 서버 탐색기의 Crystal Services 서버 노드에서 액세스되는 보고서에 적용됩니다.

Note참고

Crystal Services에 대한 개요를 보려면 "Crystal Services 사용"을 참조하십시오.

이 부분에서는 Visual Studio .NET 2003에서 Crystal Services의 서버 파일 하위 노드를 검토합니다.

[SERVERNAME]

  • Crystal Services
    • 서버 파일

설명

서버 파일 하위 노드는 로컬 파일 디렉터리에서 보고서 웹 서비스로 제공된 보고서에 액세스한 다음 이 보고서를 표시합니다. 해당 보고서는 보고서 웹 서비스 프로토콜을 통해 제공됩니다. Visual Studio .NET 2003에서 서버 파일에 액세스하려면 Crystal Services 아래에 있는 서버 파일 노드를 클릭합니다.

Crystal Services의 비교에 대한 표는 "Crystal Services를 사용하는 CrystalReportViewer 바인딩 시나리오""Crystal Services를 사용하는 ReportDocument 바인딩 시나리오(VS.NET 2002 및 2003)"를 참조하십시오.

Crystal Reports 9와 10에 있는 Crystal Services의 서버 파일 하위 노드는 "RAS(보고서 응용 프로그램 서버)" 서버에 직접 연결되는 다른 Crystal Services 하위 노드로 바뀌어 보고서 웹 서비스 프로토콜을 무시합니다.

장점

  • 보고서에 대한 액세스를 중앙에서 관리할 수 있습니다. 샘플 보고서 디렉터리의 모든 보고서를 한 지점에서 액세스할 수 있으므로("샘플 보고서 디렉터리" 참조), 로컬 하드 드라이브에 효율적인 보고서 리포지토리를 만들 수 있습니다.

단점

  • Crystal Reports 9 및 10에서 관리되지 않는 RAS Crystal Services 노드로 바뀌었습니다. 자세한 내용은 위의 설명 부분을 참조하십시오.
  • 개체 모델이 제한적입니다. 이 바인딩 시나리오는 CrystalReportViewer의 일부인 제한된 개체 모델만 제공합니다. "개체 모델 선택"을 참조하십시오.

서버 파일 구성

서버 파일은 Crystal Reports for Visual Studio 2003에서 Crystal Services 노드로 제공됩니다. Visual Studio 2003에 포함된 버전 위에 Crystal Reports 9 또는 10(정식 버전)이 설치되는 경우 서버 파일 노드가 표시 노드로 제거됩니다.

"Crystal Reports for Visual Studio의 정의"의 각 버전은 SDK에서 서버 파일을 계속 지원합니다. 그러나 해당 버전에서 서버 파일을 사용하려면 코드를 직접 작성해야 합니다.

서버 파일 구성에 대한 자세한 내용은 "Crystal Services에서 서버 파일 구성"을 참조하십시오.

Crystal Services를 설치하려면

Crystal Reports for Visual Studio .Net 2003이 설치되어 있어야 합니다.

Crystal Services는 Visual Studio .NET 2003 설치 시 기본적으로 설치되지 않습니다. 이 절차에서는 Visual Studio .Net 2003 설치 CD를 통해 Crystal Services를 설치합니다.

  1. Microsoft Visual Studio .NET 설치 관리자 CD에서 Crystal Reports를 찾습니다.
  2. Crystal 웹 서비스를 선택합니다.
  3. 업데이트 단추를 클릭합니다.

Crystal Services>서버 파일 노드를 사용하려면

  • Crystal Reports for Visual Studio .NET 2003이 설치되어 있고 제대로 작동해야 합니다.
  • 또는 Crystal Reports 9 이상이 설치되어 있고 제대로 작동해야 합니다.
    Note참고

    Crystal Reports 9 및 10에서는 서버 파일이 바뀌고 Crystal Services 아래 노드로 표시되지 않습니다. 그러나 이 경우에도 서버 파일을 직접 코딩할 수는 있습니다.

Note참고

이 절차는 "프로젝트 설정"을 통해 생성된 프로젝트에서만 사용할 수 있습니다. 프로젝트 설정에는 이 절차에 필요한 코드 구성 및 특정 네임스페이스 참조가 포함되어 있으므로 해당 구성이 없으면 절차를 완료할 수 없습니다. 따라서 이 절차를 시작하기 전에 먼저 "프로젝트 설정"의 단계를 수행해야 합니다.

  1. 보기 메뉴에서 다른 창을 클릭한 다음 서버 탐색기를 클릭합니다.

  2. Crystal Services를 확장한 다음 서버 파일을 확장합니다.

  3. 서버 파일 트리에서 보고서를 선택하여 폼으로 끌어옵니다.

    Note참고

    서버 파일 보고서를 폼에 배치하면 ServerFileReport 클래스의 인스턴스가 이 폼에 있는 디자이너에서 생성한 코드 영역에 추가됩니다.

    System.ComponentModel.Component에서 상속된 ServerFileReport와 같은 클래스를 디자이너에서 생성한 코드 영역에서 인스턴스화하고 구성하는 경우 인스턴스화된 이 클래스의 아이콘이 디자인 뷰의 폼 아래쪽에 나타납니다.

    폼 디자인 뷰의 아래쪽에 serverFileReport1 개체가 나타납니다.

  4. 코드 뷰로 전환하여 Web 또는 Windows Form 디자이너에서 생성한 코드 영역을 엽니다.

    이 영역에서 ServerFileReport 클래스가 인스턴스화되고 구성되었습니다.

  5. 프로젝트 설정에서 만든 ConfigureCrystalReports() 메서드 내에서 ServerFileReport 인스턴스를 CrystalReportViewer 컨트롤의 ReportSource 속성에 할당합니다.

    myCrystalReportViewer.ReportSource = serverFileReport1
    
    crystalReportViewer.ReportSource = serverFileReport1;
    

프로젝트를 빌드하고 실행하여 보고서를 확인합니다.

서버 파일을 직접 코딩하려면

  • Crystal Reports for Visual Studio .NET 2003이 설치되어 있고 제대로 작동해야 합니다.
  • 또는 Crystal Reports 9 이상이 설치되어 있고 제대로 작동해야 합니다.
    Note참고

    Crystal Reports 9 및 10에서는 서버 파일이 바뀌고 Crystal Services 아래 노드로 표시되지 않습니다. 그러나 이 경우에도 서버 파일을 직접 코딩할 수는 있습니다.

Note참고

이 절차는 "프로젝트 설정"을 통해 생성된 프로젝트에서만 사용할 수 있습니다. 프로젝트 설정에는 이 절차에 필요한 코드 구성 및 특정 네임스페이스 참조가 포함되어 있으므로 해당 구성이 없으면 절차를 완료할 수 없습니다. 따라서 이 절차를 시작하기 전에 먼저 "프로젝트 설정"의 단계를 수행해야 합니다.

  1. 프로젝트 설정에서 만든 ConfigureCrystalReports() 메서드 내에서 ServerFileReport의 인스턴스를 선언합니다.

    Dim myServerFileReport As CrystalDecisions.Shared.ServerFileReport = _
    New CrystalDecisions.Shared.ServerFileReport()
    
    CrystalDecisions.Shared.ServerFileReport serverFileReport = new CrystalDecisions.Shared.ServerFileReport();
    
  2. ServerFileReport의 ObjectType 속성을 REPORT로 설정합니다.

    myServerFileReport.ObjectType = CrystalDecisions.[Shared].EnumServerFileType.REPORT
    
    serverFileReport.ObjectType = CrystalDecisions.Shared.EnumServerFileType.REPORT;
    
  3. ServerFileReport의 ReportPath 속성을 보고서 및 해당 하위 디렉터리로 설정합니다. 샘플 보고서에 대한 자세한 내용은 "샘플 보고서 디렉터리"를 참조하십시오.

    myServerFileReport.ReportPath = "\General Business\World Sales Report.rpt"
    
    serverFileReport.ReportPath = "\\General Business\\World Sales Report.rpt";
    
  4. ServerFileReport의 WebServiceURL 속성을 현재 설치된 Crystal Reports 버전에 대한 뷰어의 가상 디렉터리로 설정합니다. "뷰어의 가상 디렉터리"를 참조하십시오.

    Note참고

    이 예제 코드에서는 뷰어의 가상 디렉터리가 Crystal Reports 10용으로 구성되어 있습니다.

    myServerFileReport.WebServiceUrl = "https://localhost/crystalreportviewers10/ServerFileReportService.asmx"
    
    serverFileReport.WebServiceUrl = "https://localhost/crystalreportviewers10/ServerFileReportService.asmx";
    
  5. CrystalReportViewer 컨트롤의 ReportSource 속성을 ServerFileReport 인스턴스로 설정합니다.

    myCrystalReportViewer.ReportSource = myServerFileReport
    
    crystalReportViewer.ReportSource = serverFileReport1;
    

참고 항목