다음을 통해 공유


ReportDocument 개체 모델

ReportDocument 클래스는 CrystalReportViewer 개체 모델 보다 SDK에 대한 더욱 광범위한 개체 모델을 제공합니다.

ReportDocument 클래스는 CrystalDecisions.CrystalReports.Engine 네임스페이스의 일부입니다. 이 클래스는 보고서를 프로그래밍 방식으로 조작하는 더욱 다양한 도구를 제공하는 Engine 네임스페이스의 클래스 집합에 대한 게이트웨이 역할을 수행합니다.

ReportDocument 개체 모델

앞에서는 CrystalReportViewer 컨트롤에 직접 보고서 경로 문자열을 할당하여 기본 CrystalReportViewer 개체 모델을 사용하는 방법에 대해 설명했습니다. "CrystalReportViewer 개체 모델"을 참조하십시오.

다음 수준의 개체 모델인 ReportDocument 개체 모델을 사용하면, 컨트롤에 할당하기 전에 ReportDocument의 인스턴스 내에서 보고서를 캡슐화할 수 있습니다. 이렇게 하면 ReportDocument에서 제공하는 더욱 복잡하고 강력한 개체 모델에 액세스할 수 있습니다.

Note참고

CrystalReportViewer는 보고서를 로드 및 표시하고 ReportDocument는 보고서를 캡슐화 및 조작하는 방식으로 두 개체 모델이 모두 이 프로세스에 관련되어 있으므로, 두 개체 모델의 역할은 혼동되기 쉽습니다. 따라서 ReportDocument 개체 모델을 사용하여 보고서를 캡슐화한 다음에는 보고서에 대한 모든 조작을 해당 모델로만 제한해야 합니다. CrystalReportViewer의 속성과 메서드를 사용하여 보고서 조작을 시도하면 두 개체 모델이 충돌하여 예기치 않은 동작이 발생합니다.

개체 모델을 추가로 사용하려면 CrystalReportViewer 코드에서 표시 속성을 설정하기만 하는 것으로 제한해야 합니다.

개체 모델 선택 방법에 대한 자세한 내용은 "개체 모델 선택"을 참조하십시오.

ReportDocument 및 ReportClientDocument(RAS)

Crystal Reports 9에서 두 개체 모델은 전혀 다른 별개의 모델이었습니다. Crystal Reports 10 이상에서는 개체 모델 간의 기본적인 구분이 사라졌습니다. ReportDocument 개체 모델은 현재 ReportClientDocument 개체 모델의 기능(및 하위 집합)에 대한 프록시로 작동합니다.

Crystal Reports 2008을 사용하여 ReportDocument.ReportClientDocument 속성을 통해 ReportClientDocument 개체 모델의 제한된 버전에 액세스할 수 있습니다.

ReportDocument 개체 모델 다이어그램

아래 다이어그램은 ReportDocument 개체 모델의 관계를 보여 줍니다.

그림3:ReportDocument 개체 모델

참고 항목