public ObjectModelImpl(ObjectModelImpl copy, OnDemandProcessingContext odpContext) { this.m_odpContext = odpContext; this.m_currentFields = new FieldsContext(this); this.m_parameters = copy.m_parameters; this.m_globals = new GlobalsImpl(odpContext); this.m_user = new UserImpl(copy.m_user, odpContext); this.m_dataSets = copy.m_dataSets; this.m_dataSources = copy.m_dataSources; this.m_reportItems = null; this.m_aggregates = null; this.m_lookups = null; }
public ObjectModelImpl(OnDemandProcessingContext odpContext) { this.m_currentFields = null; this.m_parameters = null; this.m_globals = null; this.m_user = null; this.m_reportItems = null; this.m_aggregates = null; this.m_lookups = null; this.m_dataSets = null; this.m_dataSources = null; this.m_odpContext = odpContext; }
public void Initialize(DataSetDefinition dataSetDefinition) { int size = 0; if (dataSetDefinition.DataSetCore != null && dataSetDefinition.DataSetCore.Query != null && dataSetDefinition.DataSetCore.Query.Parameters != null) { size = dataSetDefinition.DataSetCore.Query.Parameters.Count; } this.m_parameters = new ParametersImpl(size); this.InitializeGlobalAndUserCollections(); this.m_currentFields = new FieldsContext(this, dataSetDefinition.DataSetCore); this.m_dataSources = new DataSourcesImpl(0); this.m_dataSets = new DataSetsImpl(0); this.m_variables = new VariablesImpl(false); this.m_aggregates = new AggregatesImpl(false, this.m_odpContext); this.m_reportItems = new ReportItemsImpl(false); this.m_lookups = new LookupsImpl(); }
public void Initialize(AspNetCore.ReportingServices.ReportIntermediateFormat.Report report, AspNetCore.ReportingServices.ReportIntermediateFormat.ReportInstance reportInstance) { int size = 0; if (report.Parameters != null) { size = report.Parameters.Count; } this.m_parameters = new ParametersImpl(size); this.InitializeGlobalAndUserCollections(); this.m_currentFields = new FieldsContext(this); this.m_dataSources = new DataSourcesImpl(report.DataSourceCount); this.m_dataSets = new DataSetsImpl(report.DataSetCount); this.InitOrUpdateDataSetCollection(report, reportInstance, true); this.m_variables = new VariablesImpl(false); this.m_aggregates = new AggregatesImpl(false, this.m_odpContext); this.m_reportItems = new ReportItemsImpl(false); this.m_lookups = new LookupsImpl(); }
public override void Add(string textboxName, object textboxValue) { if (textboxName == null) { throw new RenderingObjectModelException(ProcessingErrorCode.rsInvalidOperation); } if (this.m_processingContext.ReportItemsReferenced) { AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.TextBoxImpl textBoxImpl = (AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.TextBoxImpl)((ReportItems)this.m_processingContext.ReportObjectModel.ReportItemsImpl)[textboxName]; if (textBoxImpl != null) { textBoxImpl.SetResult(new AspNetCore.ReportingServices.RdlExpressions.VariantResult(false, textboxValue)); } ReportSection reportSection = default(ReportSection); AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl aggregatesImpl = default(AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl); if (this.m_reportItemToReportSection.TryGetValue(textboxName, out reportSection) && reportSection.PageAggregatesOverReportItems.TryGetValue(textboxName, out aggregatesImpl)) { foreach (AspNetCore.ReportingServices.ReportIntermediateFormat.DataAggregateObj @object in aggregatesImpl.Objects) { @object.Update(); } } } }
private void PageInit(ReportSection section) { AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.ObjectModelImpl reportObjectModel = this.m_processingContext.ReportObjectModel; AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl aggregatesImpl = reportObjectModel.AggregatesImpl; Global.Tracer.Assert(section.BodyItemsForHeadFoot != null, "Missing cached BodyItemsForHeadFoot collection"); Global.Tracer.Assert(section.PageSectionItemsForHeadFoot != null, "Missing cached PageSectionItemsForHeadFoot collection"); section.BodyItemsForHeadFoot.ResetAll(default(AspNetCore.ReportingServices.RdlExpressions.VariantResult)); section.PageSectionItemsForHeadFoot.ResetAll(); reportObjectModel.GlobalsImpl.SetPageNumbers(base.m_currentPageNumber, base.m_totalPages, base.m_currentOverallPageNumber, base.m_overallTotalPages); reportObjectModel.GlobalsImpl.SetPageName(base.m_pageName); AspNetCore.ReportingServices.ReportIntermediateFormat.Report reportDef = base.m_romReport.ReportDef; AspNetCore.ReportingServices.ReportIntermediateFormat.ReportSection sectionDef = section.SectionDef; AspNetCore.ReportingServices.ReportIntermediateFormat.Page page = sectionDef.Page; section.PageAggregatesOverReportItems = new Dictionary<string, AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl>(); this.m_processingContext.ReportObjectModel.ReportItemsImpl.SpecialMode = true; if (page.PageAggregates != null) { for (int i = 0; i < page.PageAggregates.Count; i++) { AspNetCore.ReportingServices.ReportIntermediateFormat.DataAggregateInfo dataAggregateInfo = page.PageAggregates[i]; aggregatesImpl.Remove(dataAggregateInfo); dataAggregateInfo.ExprHostInitialized = false; AspNetCore.ReportingServices.ReportIntermediateFormat.DataAggregateObj dataAggregateObj = new AspNetCore.ReportingServices.ReportIntermediateFormat.DataAggregateObj(dataAggregateInfo, this.m_processingContext); object[] array = default(object[]); DataFieldStatus dataFieldStatus = default(DataFieldStatus); dataAggregateObj.EvaluateParameters(out array, out dataFieldStatus); string specialModeIndex = reportObjectModel.ReportItemsImpl.GetSpecialModeIndex(); if (specialModeIndex == null) { aggregatesImpl.Add(dataAggregateObj); } else { AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl aggregatesImpl2 = default(AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl); if (!section.PageAggregatesOverReportItems.TryGetValue(specialModeIndex, out aggregatesImpl2)) { aggregatesImpl2 = new AspNetCore.ReportingServices.ReportProcessing.OnDemandReportObjectModel.AggregatesImpl(this.m_processingContext); section.PageAggregatesOverReportItems.Add(specialModeIndex, aggregatesImpl2); } aggregatesImpl2.Add(dataAggregateObj); this.m_reportItemToReportSection[specialModeIndex] = section; } dataAggregateObj.Init(); } } reportObjectModel.ReportItemsImpl.SpecialMode = false; AspNetCore.ReportingServices.ReportIntermediateFormat.PageSection rifObject = null; IReportScopeInstance romInstance = null; if (sectionDef.Page.PageHeader != null) { rifObject = sectionDef.Page.PageHeader; romInstance = section.Page.PageHeader.Instance.ReportScopeInstance; section.Page.PageHeader.SetNewContext(); } if (sectionDef.Page.PageFooter != null) { rifObject = sectionDef.Page.PageFooter; romInstance = section.Page.PageFooter.Instance.ReportScopeInstance; section.Page.PageFooter.SetNewContext(); } if (sectionDef != null) { this.m_processingContext.SetupContext(rifObject, romInstance); } }