Class SSRSReportExecutor
Inherited Members
Namespace: LemonEdge.Connections.Database.Tasks.Process
Assembly: LemonEdge.Database.Connector.dll
Syntax
[ReportExecutor(EntityID.ReportSSRS)]
public class SSRSReportExecutor : IReportExecutor, IDisposable
Constructors
SSRSReportExecutor(IOptions<SSRSSettings>)
Declaration
public SSRSReportExecutor(IOptions<SSRSSettings> ssrsSettings)
Parameters
Type | Name | Description |
---|---|---|
IOptions<SSRSSettings> | ssrsSettings |
Methods
Dispose()
Declaration
public void Dispose()
Dispose(bool)
Declaration
protected virtual void Dispose(bool disposing)
Parameters
Type | Name | Description |
---|---|---|
bool | disposing |
ExecuteReport(IEntityUpdater, IReadOnlyCache, UserInfo, IReportBase, Dictionary<string, object>, string, Action<string>, ExecuteReportParameter)
Executes the specified report
that inherits IReport and returns the
generated file
Declaration
public Task<(byte[] GeneratedReport, string GeneratedFileFormatExtension)> ExecuteReport(IEntityUpdater updater, IReadOnlyCache cache, UserInfo user, IReportBase ssrsReport, Dictionary<string, object> parameters, string runID, Action<string> logMessage, ExecuteReportParameter taskParameter = null)
Parameters
Type | Name | Description |
---|---|---|
IEntityUpdater | updater | |
IReadOnlyCache | cache | |
UserInfo | user | |
IReportBase | ssrsReport | |
Dictionary<string, object> | parameters | The parameters provided, and evaluated, for executing this report |
string | runID | The unique run identification for this report |
Action<string> | logMessage | Used to log any messages when generating the report |
ExecuteReportParameter | taskParameter | The server task parameters for executing this report. Can be empty if running from a UNIQUE_TASK_ID server task |
Returns
Type | Description |
---|---|
Task<(byte[] GeneratedReport, string FileType)> | The newly generated report |
RequiresNewExecutor(IReportBase)
Returns true if the current instance of this report executor can not generate this report as it is already connected to a report service that is different
This ensures one IReportExecutor can be maintained for per connection, and indicates a new one is required for other connections
Declaration
public bool RequiresNewExecutor(IReportBase ssrsReport)
Parameters
Type | Name | Description |
---|---|---|
IReportBase | ssrsReport |
Returns
Type | Description |
---|---|
bool | True if the current instance of this report executor can not generate this report as it is already connected to a report service that is different |