protected ProcessingContext CreateProcessingContext(ParameterInfoCollection reportParameters, IEnumerable dataSources, DatasourceCredentialsCollection credentials, IChunkFactory chunkFactory, CreateAndRegisterStream createStreamCallback, SubreportCallbackHandler subreportHandler) { RuntimeDataSourceInfoCollection dataSourceInfoColl = null; RuntimeDataSetInfoCollection dataSetInfoColl = null; this.GetAllReportDataSourcesAndSharedDataSets(out dataSourceInfoColl, out dataSetInfoColl); return(this.m_dataRetrieval.CreateProcessingContext(this.m_itemContext, reportParameters, dataSources, dataSourceInfoColl, dataSetInfoColl, this.GetCompiledDataSet, credentials, subreportHandler.OnDemandSubReportCallback, new GetResourceForLocalService(this.Catalog), chunkFactory, this.m_reportRuntimeSetupHandler.ReportRuntimeSetup, createStreamCallback)); }
internal ReportProcessingContext(ICatalogItemContext reportContext, string requestUserName, ParameterInfoCollection parameters, RuntimeDataSourceInfoCollection dataSources, RuntimeDataSetInfoCollection sharedDataSetReferences, ReportProcessing.OnDemandSubReportCallback subReportCallback, IGetResource getResourceFunction, IChunkFactory createChunkFactory, ReportProcessing.ExecutionType interactiveExecution, CultureInfo culture, UserProfileState allowUserProfileState, UserProfileState initialUserProfileState, IProcessingDataExtensionConnection createDataExtensionInstanceFunction, ReportRuntimeSetup reportRuntimeSetup, CreateAndRegisterStream createStreamCallback, bool isHistorySnapshot, IJobContext jobContext, IExtensionFactory extFactory, IDataProtection dataProtection, ISharedDataSet dataSetExecute) : base(reportContext, requestUserName, parameters, subReportCallback, getResourceFunction, createChunkFactory, interactiveExecution, culture, allowUserProfileState, initialUserProfileState, reportRuntimeSetup, createStreamCallback, isHistorySnapshot, jobContext, extFactory, dataProtection) { m_dataSources = dataSources; m_sharedDataSetReferences = sharedDataSetReferences; m_createDataExtensionInstanceFunction = createDataExtensionInstanceFunction; m_dataSetExecute = dataSetExecute; }
private void GetAllReportDataSourcesAndSharedDataSets(out RuntimeDataSourceInfoCollection runtimeDataSources, out RuntimeDataSetInfoCollection runtimeDataSets) { if (!DataRetrieval.SupportsQueries) { runtimeDataSources = new RuntimeDataSourceInfoCollection(); runtimeDataSets = new RuntimeDataSetInfoCollection(); return; } ControlSnapshot snapshot; PublishingResult compiledReport = GetCompiledReport(m_itemContext, rebuild: false, out snapshot); DataSourceInfoCollection existingDataSources = ResolveSharedDataSources(compiledReport.DataSources); DataSetInfoCollection dataSetInfoCollection = ResolveSharedDataSets(compiledReport.SharedDataSets); DataSourceInfoCollection dataSources = CompileDataSetsAndCombineDataSources(dataSetInfoCollection, existingDataSources); CreateAndConfigureReportProcessing().GetAllDataSources(m_itemContext, snapshot, OnGetSubReportDataSources, dataSources, dataSetInfoCollection, checkIfUsable: true, new ServerDataSourceSettings(isSurrogatePresent: true, allowIntegratedSecurity: true), out runtimeDataSources, out runtimeDataSets); }
private void GetAllReportDataSourcesAndSharedDataSets(out RuntimeDataSourceInfoCollection runtimeDataSources, out RuntimeDataSetInfoCollection runtimeDataSets) { if (!this.DataRetrieval.SupportsQueries) { runtimeDataSources = new RuntimeDataSourceInfoCollection(); runtimeDataSets = new RuntimeDataSetInfoCollection(); } else { ControlSnapshot getCompiledDefinitionFactory = default(ControlSnapshot); PublishingResult compiledReport = this.GetCompiledReport(this.m_itemContext, false, out getCompiledDefinitionFactory); DataSourceInfoCollection existingDataSources = this.ResolveSharedDataSources(compiledReport.DataSources); DataSetInfoCollection dataSetInfoCollection = this.ResolveSharedDataSets(compiledReport.SharedDataSets); DataSourceInfoCollection dataSources = this.CompileDataSetsAndCombineDataSources(dataSetInfoCollection, existingDataSources); ReportProcessing reportProcessing = this.CreateAndConfigureReportProcessing(); reportProcessing.GetAllDataSources((ICatalogItemContext)this.m_itemContext, (IChunkFactory)getCompiledDefinitionFactory, (ReportProcessing.OnDemandSubReportDataSourcesCallback) this.OnGetSubReportDataSources, dataSources, dataSetInfoCollection, true, new ServerDataSourceSettings(true, true), out runtimeDataSources, out runtimeDataSets); } }
public DataSourcePromptCollection GetReportDataSourcePrompts(out bool allCredentialsSatisfied) { RuntimeDataSourceInfoCollection runtimeDataSourceInfoCollection = default(RuntimeDataSourceInfoCollection); RuntimeDataSetInfoCollection runtimeDataSetInfoCollection = default(RuntimeDataSetInfoCollection); this.GetAllReportDataSourcesAndSharedDataSets(out runtimeDataSourceInfoCollection, out runtimeDataSetInfoCollection); DatasourceCredentialsCollection datasourceCredentialsCollection = new DatasourceCredentialsCollection(); foreach (DatasourceCredentials credential in this.m_executionSession.Credentials) { DataSourceInfo byOriginalName = runtimeDataSourceInfoCollection.GetByOriginalName(credential.PromptID); if (byOriginalName != null && byOriginalName.CredentialsRetrieval == DataSourceInfo.CredentialsRetrievalOption.Prompt) { datasourceCredentialsCollection.Add(credential); } } runtimeDataSourceInfoCollection.SetCredentials(datasourceCredentialsCollection, DataProtectionLocal.Instance); ServerDataSourceSettings serverDatasourceSettings = new ServerDataSourceSettings(true, true); DataSourcePromptCollection promptRepresentatives = runtimeDataSourceInfoCollection.GetPromptRepresentatives(serverDatasourceSettings); allCredentialsSatisfied = !runtimeDataSourceInfoCollection.NeedPrompt; return(promptRepresentatives); }
public override ProcessingContext CreateProcessingContext(PreviewItemContext itemContext, ParameterInfoCollection parameters, IEnumerable dataSources, RuntimeDataSourceInfoCollection dataSourceInfoColl, RuntimeDataSetInfoCollection dataSetInfoColl, SharedDataSetCompiler sharedDataSetCompiler, DatasourceCredentialsCollection credentials, ReportProcessing.OnDemandSubReportCallback subReportCallback, IGetResource getResourceFunction, IChunkFactory chunkFactory, ReportRuntimeSetup runtimeSetup, AspNetCore.ReportingServices.Interfaces.CreateAndRegisterStream createStreamCallback) { return(new ProcessingContextForDataSets(itemContext, parameters, new DataSourceCollectionWrapper((ReportDataSourceCollection)dataSources), subReportCallback, this.m_subreportDataCallback, getResourceFunction, chunkFactory, runtimeSetup, (AspNetCore.ReportingServices.Interfaces.CreateAndRegisterStream)createStreamCallback)); }
public abstract ProcessingContext CreateProcessingContext(PreviewItemContext itemContext, ParameterInfoCollection parameters, IEnumerable dataSources, RuntimeDataSourceInfoCollection dataSourceInfoColl, RuntimeDataSetInfoCollection dataSetInfoColl, SharedDataSetCompiler sharedDataSetCompiler, DatasourceCredentialsCollection credentials, ReportProcessing.OnDemandSubReportCallback subReportCallback, IGetResource getResourceFunction, IChunkFactory chunkFactory, ReportRuntimeSetup runtimeSetup, CreateAndRegisterStream createStreamCallback);