public int PerformSort(string paginationMode, string sortId, SortOptions sortDirection, bool clearSort, out string uniqueName) { SetProcessingCulture(); ControlSnapshot snapshot = m_executionSession.Snapshot; try { m_executionSession.Snapshot = new ControlSnapshot(); snapshot.PrepareExecutionSnapshot(m_executionSession.Snapshot, null); using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { m_itemContext.RSRequestParameters.PaginationModeValue = paginationMode; ReportProcessing reportProcessing = CreateAndConfigureReportProcessing(); ProcessingContext pc = CreateProcessingContext(@object.StreamCallback); Microsoft.ReportingServices.ReportProcessing.RenderingContext rc = CreateRenderingContext(); int page; OnDemandProcessingResult onDemandProcessingResult = reportProcessing.ProcessUserSortEvent(sortId, sortDirection, clearSort, pc, rc, snapshot, out uniqueName, out page); if (onDemandProcessingResult != null && onDemandProcessingResult.SnapshotChanged) { m_executionSession.SaveProcessingResult(onDemandProcessingResult); } else { m_executionSession.Snapshot = snapshot; } return(page); } } catch { m_executionSession.Snapshot = snapshot; throw; } }
public int PerformSearch(int startPage, int endPage, string searchText) { using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { ProcessingContext processingContext = CreateProcessingContext(@object.StreamCallback); OnDemandProcessingResult result; return(CreateAndConfigureReportProcessing().ProcessFindStringEvent(startPage, endPage, searchText, m_executionSession.EventInfo, processingContext, out result)); } }
private void ProcessAndStoreReportParameters(ParameterInfoCollection newParameters) { GetCompiledReport(m_itemContext, rebuild: false, out ControlSnapshot snapshot); using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { ProcessingContext pc = CreateProcessingContext(newParameters, null, m_executionSession.Credentials, snapshot, @object.StreamCallback, CreateSubreportCallbackHandler()); CreateAndConfigureReportProcessing().ProcessReportParameters(DateTime.Now, pc, isSnapshot: false, out bool _); m_executionSession.ExecutionInfo.ReportParameters = newParameters; } }
public int PerformDocumentMapNavigation(string documentMapId) { if (documentMapId == null) { return(0); } using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { ProcessingContext processingContext = CreateProcessingContext(@object.StreamCallback); OnDemandProcessingResult result; return(CreateAndConfigureReportProcessing().ProcessDocumentMapNavigationEvent(documentMapId, m_executionSession.EventInfo, processingContext, out result)); } }
public string PerformDrillthrough(string drillthroughId, out NameValueCollection resultParameters) { resultParameters = null; if (drillthroughId == null) { return(null); } using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { ProcessingContext processingContext = CreateProcessingContext(@object.StreamCallback); OnDemandProcessingResult result; return(CreateAndConfigureReportProcessing().ProcessDrillthroughEvent(drillthroughId, m_executionSession.EventInfo, processingContext, out resultParameters, out result)); } }
public int PerformBookmarkNavigation(string bookmarkId, out string uniqueName) { uniqueName = null; if (bookmarkId == null) { return(0); } using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { ProcessingContext processingContext = CreateProcessingContext(@object.StreamCallback); OnDemandProcessingResult result; return(CreateAndConfigureReportProcessing().ProcessBookmarkNavigationEvent(bookmarkId, m_executionSession.EventInfo, processingContext, out uniqueName, out result)); } }
public IDocumentMap GetDocumentMap() { if (!m_executionSession.ExecutionInfo.HasDocMap) { return(null); } using (ProcessingStreamHandler @object = new ProcessingStreamHandler()) { ProcessingContext processingContext = CreateProcessingContext(@object.StreamCallback); OnDemandProcessingResult result; IDocumentMap documentMap = CreateAndConfigureReportProcessing().GetDocumentMap(m_executionSession.EventInfo, processingContext, out result); m_executionSession.SaveProcessingResult(result); return(documentMap); } }