Search Results for

    Show / Hide Table of Contents

    Class ExpressReportProcessor

    Inheritance
    object
    ExpressReportProcessor
    Implements
    IBaseDataSetProcessor
    IProcessor
    IDisposable
    Inherited Members
    object.GetType()
    object.MemberwiseClone()
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    Namespace: LemonEdge.API.Core.Reporting
    Assembly: LemonEdge.API.dll
    Syntax
    public class ExpressReportProcessor : IBaseDataSetProcessor, IProcessor, IDisposable

    Constructors

    ExpressReportProcessor(IEntityUpdater, IReadOnlyCache, UserInfo)

    Declaration
    public ExpressReportProcessor(IEntityUpdater updater, IReadOnlyCache cache, UserInfo user)
    Parameters
    Type Name Description
    IEntityUpdater updater
    IReadOnlyCache cache
    UserInfo user

    Properties

    Cache

    A local cache for performance

    Declaration
    public IReadOnlyCache Cache { get; }
    Property Value
    Type Description
    IReadOnlyCache

    IgnoreEvents

    Indicates the processor should ignore changes to any items within the processor

    Normally used when the processor responds to an event and wants to prevent any other responses while it finishes processing that change

    Declaration
    public bool IgnoreEvents { get; set; }
    Property Value
    Type Description
    bool

    Loaded

    Flag to indicate if the processor has been fully loaded

    Declaration
    public bool Loaded { get; }
    Property Value
    Type Description
    bool

    Relationships

    Declaration
    public IEnumerable<IReportExpressRelationship> Relationships { get; }
    Property Value
    Type Description
    IEnumerable<IReportExpressRelationship>

    Report

    Declaration
    public IReportExpress Report { get; }
    Property Value
    Type Description
    IReportExpress

    ReportDataSets

    Declaration
    public IEnumerable<IReportExpressDataSet> ReportDataSets { get; }
    Property Value
    Type Description
    IEnumerable<IReportExpressDataSet>

    ReportParameters

    Declaration
    public IEnumerable<ISQLTypeWrapper> ReportParameters { get; }
    Property Value
    Type Description
    IEnumerable<ISQLTypeWrapper>

    Reporter

    A reporter to provide feedback to a log, or client depending on the context the process is running under

    Declaration
    public BusyProgressReporter Reporter { get; set; }
    Property Value
    Type Description
    BusyProgressReporter

    Updater

    A context to ensure the process can query, load and modify all LemonEdge data

    Declaration
    public IEntityUpdater Updater { get; }
    Property Value
    Type Description
    IEntityUpdater

    User

    The current logged in user the process is running under

    Declaration
    public UserInfo User { get; }
    Property Value
    Type Description
    UserInfo

    Methods

    AddDataSet(IReportExpressDataSet)

    Declaration
    public Task AddDataSet(IReportExpressDataSet set)
    Parameters
    Type Name Description
    IReportExpressDataSet set
    Returns
    Type Description
    Task

    AddDataSetParameter(IReportExpressDataSetParameter)

    Declaration
    public void AddDataSetParameter(IReportExpressDataSetParameter param)
    Parameters
    Type Name Description
    IReportExpressDataSetParameter param

    AddRelationship(IReportExpressRelationship)

    Declaration
    public void AddRelationship(IReportExpressRelationship rel)
    Parameters
    Type Name Description
    IReportExpressRelationship rel

    AddRelationshipColumn(IReportExpressRelationshipColumn)

    Declaration
    public void AddRelationshipColumn(IReportExpressRelationshipColumn col)
    Parameters
    Type Name Description
    IReportExpressRelationshipColumn col

    AddReportParameters(ISQLTypeWrapper)

    Declaration
    public void AddReportParameters(ISQLTypeWrapper typeWrapper)
    Parameters
    Type Name Description
    ISQLTypeWrapper typeWrapper

    AddToDataSetToProcess(IBaseEntity, EntityOperation)

    If a modified item belongs in the processor (IsChangedItemPartOfDataSet(IBaseEntity)), this adds the item to the processor if it already isn't a member of it

    Declaration
    public void AddToDataSetToProcess(IBaseEntity item, EntityOperation operationType)
    Parameters
    Type Name Description
    IBaseEntity item

    The item to add to the processor

    EntityOperation operationType

    The type of operation that modified the item. Useful as deleted items can often be treated differently in a processor.

    Dispose()

    Declaration
    public void Dispose()

    Dispose(bool)

    Declaration
    protected virtual void Dispose(bool disposing)
    Parameters
    Type Name Description
    bool disposing

    GetExecutedReportData(Dictionary<string, string>)

    Declaration
    public Task<DataSet> GetExecutedReportData(Dictionary<string, string> parameters)
    Parameters
    Type Name Description
    Dictionary<string, string> parameters
    Returns
    Type Description
    Task<DataSet>

    GetRelationshipColumns(Guid)

    Declaration
    public IEnumerable<IReportExpressRelationshipColumn> GetRelationshipColumns(Guid forRelationshipID)
    Parameters
    Type Name Description
    Guid forRelationshipID
    Returns
    Type Description
    IEnumerable<IReportExpressRelationshipColumn>

    GetReportDataSetParameters(Guid)

    Declaration
    public IEnumerable<IReportExpressDataSetParameter> GetReportDataSetParameters(Guid forDataSetID)
    Parameters
    Type Name Description
    Guid forDataSetID
    Returns
    Type Description
    IEnumerable<IReportExpressDataSetParameter>

    GetReportParameters(Dictionary<string, string>)

    Declaration
    public Dictionary<ISQLTypeWrapper, object> GetReportParameters(Dictionary<string, string> parameters)
    Parameters
    Type Name Description
    Dictionary<string, string> parameters
    Returns
    Type Description
    Dictionary<ISQLTypeWrapper, object>

    GetReportStructure()

    Declaration
    public DataSet GetReportStructure()
    Returns
    Type Description
    DataSet

    IsChangedItemPartOfDataSet(IBaseEntity)

    This function returns true if the specified modified item belongs in this processor.

    Non modified items will just automatically be loaded by the processor anyway, this is more to keep track of items as they are changed and should be added to the processor without having to reload

    Declaration
    public bool IsChangedItemPartOfDataSet(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    The item to check if it belongs in this processor

    Returns
    Type Description
    bool

    True if the specified item belongs in this processor

    Load()

    A thread safe implementation to load all required data for the processor

    Once completed Loaded should return true.

    Declaration
    public Task Load()
    Returns
    Type Description
    Task

    A task indicating the completion of the load operation

    RemoveDataSet(IReportExpressDataSet)

    Declaration
    public void RemoveDataSet(IReportExpressDataSet set)
    Parameters
    Type Name Description
    IReportExpressDataSet set

    RemoveDataSetParameter(IReportExpressDataSetParameter)

    Declaration
    public void RemoveDataSetParameter(IReportExpressDataSetParameter param)
    Parameters
    Type Name Description
    IReportExpressDataSetParameter param

    RemoveRelationship(IReportExpressRelationship)

    Declaration
    public void RemoveRelationship(IReportExpressRelationship rel)
    Parameters
    Type Name Description
    IReportExpressRelationship rel

    RemoveRelationshipColumn(IReportExpressRelationshipColumn)

    Declaration
    public void RemoveRelationshipColumn(IReportExpressRelationshipColumn col)
    Parameters
    Type Name Description
    IReportExpressRelationshipColumn col

    RemoveReportParameter(ISQLTypeWrapper)

    Declaration
    public void RemoveReportParameter(ISQLTypeWrapper typeWrapper)
    Parameters
    Type Name Description
    ISQLTypeWrapper typeWrapper

    Events

    OnReportStructureChanged

    Declaration
    public event EventHandler OnReportStructureChanged
    Event Type
    Type Description
    EventHandler

    Implements

    IBaseDataSetProcessor
    IProcessor
    IDisposable

    Extension Methods

    LinqExtensions.AsArray<T>(T)
    LinqExtensions.ToArrayOfOne<T>(T)
    LinqExtensions.ToListOfOne<T>(T)
    MiscExtensions.SetIfNotEqual<T, TP>(T, Expression<Func<T, TP>>, TP)
    WeakReferenceExtensions.WeakReference(object)
    SQLExtensions.ToSQLValue(object, bool)
    ReflectionExtensions.ClearEventInvocations(object, string)
    StringExtensions.ToCSVFormatString(object, Type)
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.