Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="visitor"></param>
        public void RetrieveData(ReportVisitor visitor)
        {
            reportingContext.TraceLogger.LogInformation("Start Retrieving Data For Report {0}", this.reportType.Name);

            QueryFilter queryFilter = new QueryFilter();

            queryFilter.QueryRange.StartDate = this.reportingContext.FromDateTime;
            queryFilter.QueryRange.EndDate   = this.reportingContext.ToDateTime;
            queryFilter.CustomFilter         = this.reportingContext.DataFilter;

            StreamProgress progress = new StreamProgress(this.progressFilePath, this.streamIdentifier);

            progress = progress.GetProgress();

            DateTime progressTimestamp = progress.TimeStamp;

            if (queryFilter.QueryRange.StartDate < progressTimestamp)
            {
                queryFilter.QueryRange.StartDate = progressTimestamp;
            }

            queryFilter.ExcludeStartItem = progress.ExcludeStartItem;

            int totalCount = RetrieveData(visitor, queryFilter);

            reportingContext.TraceLogger.LogInformation("Retrieve Data Completed. Totally [{0}] of Data Retrieved.", totalCount);
        }