public override IReportor CreateExportReportor()
 {
     lock (this)
     {
         if (reportorExport == null)
         {
             reportorExport = new WordExportReportor();
         }
         return(reportorExport);
     }
 }
 public override IReportor CreatePreviewReportor()
 {
     lock (this)
     {
         if (reportorPreview == null)
         {
             reportorPreview = new WordPrintReportor();
         }
         return(reportorPreview);
     }
 }
        public override IReportor CreateReportor(ReportType type)
        {
            IReportor innterreportor = null;

            switch (type)
            {
            case ReportType.Export:
                innterreportor = CreateExportReportor();
                break;

            case ReportType.Preview:
                innterreportor = CreatePreviewReportor();
                break;

            case ReportType.Print:
                innterreportor = CreatePrintReportor();
                break;
            }
            return(innterreportor);
        }