Search Results for

    Show / Hide Table of Contents

    Class SingleItemWithChildTransactionsController<T>

    A standard base view that displays all the header transactions that have their ParentItemID set to the instance of this single item type T

    Inheritance
    System.Object
    ModelViewController
    BaseGridController
    BaseGridControllerAny<ITransaction>
    BaseGridController<ITransaction>
    BaseGridRelatedCollectionController<T, ITransaction>
    SingleItemWithChildTransactionsController<T>
    Implements
    IBaseGridController
    ICollectionExportable
    INewGridItemImplementor<ITransaction>
    ICopyGridItemImplementor<ITransaction>
    IGrid
    IDeleteGridItemImplementor<ITransaction>
    ILockableController
    IModelViewController
    Inherited Members
    BaseGridRelatedCollectionController<T, ITransaction>.SingleItem
    BaseGridRelatedCollectionController<T, ITransaction>.AllowIDFilter
    BaseGridRelatedCollectionController<T, ITransaction>.AlterQuery(QueryableExecuter<ITransaction>)
    BaseGridRelatedCollectionController<T, ITransaction>.AddRelationshipJoin(QueryableExecuter<ITransaction>)
    BaseGridRelatedCollectionController<T, ITransaction>.UpdateNewItem(ITransaction)
    BaseGridRelatedCollectionController<T, ITransaction>.CollectionRelationshipColumnName
    BaseGridRelatedCollectionController<T, ITransaction>.PopulateNewFromLookupColumnName
    BaseGridController<ITransaction>.GetInternalDescriptor()
    BaseGridController<ITransaction>.GetCurrentQuery()
    BaseGridController<ITransaction>.GetQueryForExcelResults()
    BaseGridController<ITransaction>.AllowIDFilter
    BaseGridController<ITransaction>.GetCreationQuery()
    BaseGridController<ITransaction>.NewItemHelper
    BaseGridController<ITransaction>.CopyItemHelper
    BaseGridController<ITransaction>.AllowNewCommand
    BaseGridController<ITransaction>.AllowDeleteCommand
    BaseGridController<ITransaction>.GetOpenGridCommand()
    BaseGridController<ITransaction>.GetCopyGridCommand()
    BaseGridController<ITransaction>.OnOpenRowItem(ITransaction)
    BaseGridController<ITransaction>.OpenInSameContext
    BaseGridControllerAny<ITransaction>.GetGridController(IBaseGrid<ITransaction>)
    BaseGridControllerAny<ITransaction>.CollectionType
    BaseGridControllerAny<ITransaction>.Descriptor
    BaseGridControllerAny<ITransaction>.CanEditRowItem(ITransaction)
    BaseGridControllerAny<ITransaction>.TrackItemChanges
    BaseGridControllerAny<ITransaction>.OnTrackedItemChanged(Object, String)
    BaseGridControllerAny<ITransaction>.RowPreviewColumns
    BaseGridControllerAny<ITransaction>.BulkUpdateMulltipleSelectedItemsOnEdit
    BaseGridControllerAny<ITransaction>.GridView
    BaseGridControllerAny<ITransaction>.GetGridSourceItems(IEnumerable<ITransaction>)
    BaseGridControllerAny<ITransaction>.AlterLoadedItems(IEnumerable<ITransaction>)
    BaseGridControllerAny<ITransaction>.Clear()
    BaseGridControllerAny<ITransaction>.CloseController()
    BaseGridControllerAny<ITransaction>.CurrentGridItems
    BaseGridControllerAny<ITransaction>.CurrentItems
    BaseGridControllerAny<ITransaction>.InitDisplay()
    BaseGridControllerAny<ITransaction>.ResetColumnsAndGroups(Boolean)
    BaseGridControllerAny<ITransaction>.LoadAdditionalColumns()
    BaseGridControllerAny<ITransaction>.Columns()
    BaseGridControllerAny<ITransaction>.AddCol(Int16, ControlDisplayInfoLight, EntityDescriptor)
    BaseGridControllerAny<ITransaction>.PivotColumns(Int16)
    BaseGridControllerAny<ITransaction>.AddStandardColumns
    BaseGridControllerAny<ITransaction>.StandardColumnsUniqueGroupKey
    BaseGridControllerAny<ITransaction>.SelectedItemForSubViews
    BaseGridControllerAny<ITransaction>.ApplyGridSettingsToFilter(QueryableExecuter)
    BaseGridControllerAny<ITransaction>.ApplyPaging(QueryableExecuter)
    BaseGridControllerAny<ITransaction>.SetTotalCount(Int32)
    BaseGridControllerAny<ITransaction>.DefaultRowCount
    BaseGridControllerAny<ITransaction>.PagerRequired
    BaseGridControllerAny<ITransaction>.CurrentPageIndex
    BaseGridControllerAny<ITransaction>.TotalCount
    BaseGridControllerAny<ITransaction>.TotalPageCount
    BaseGridControllerAny<ITransaction>.Sortings
    BaseGridControllerAny<ITransaction>.Filters
    BaseGridControllerAny<ITransaction>.SetPageIndex(Int32)
    BaseGridControllerAny<ITransaction>.Redisplay()
    BaseGridControllerAny<ITransaction>.TrackResults(IEnumerable<ITransaction>)
    BaseGridControllerAny<ITransaction>.UpdateColumnFromName(String)
    BaseGridControllerAny<ITransaction>.GetExportableColumnInfo(IEnumerable<ColumnDescriptor>)
    BaseGridControllerAny<ITransaction>.TogglerZeroColumn
    BaseGridControllerAny<ITransaction>.IsZeroColumnColumnVisible(String)
    BaseGridControllerAny<ITransaction>.ToggleZeroColumns()
    BaseGridControllerAny<ITransaction>.UpdateAllZeroColumns()
    BaseGridControllerAny<ITransaction>.UpdateTransferColumnStatus()
    BaseGridControllerAny<ITransaction>.TransferColToggler
    BaseGridControllerAny<ITransaction>.CanCreateNew
    BaseGridControllerAny<ITransaction>.GetStandardExtraColumns(String)
    BaseGridControllerAny<ITransaction>.IDeleteGridItemImplementor<ITransaction>.Grid
    BaseGridControllerAny<ITransaction>.ExcelExportCommand
    BaseGridControllerAny<ITransaction>.GetPublicToggleCommand()
    BaseGridControllerAny<ITransaction>.GetNewGridCommand()
    BaseGridControllerAny<ITransaction>.GetDeleteCommand()
    BaseGridControllerAny<ITransaction>.GetUpCommand()
    BaseGridControllerAny<ITransaction>.GetDownCommand()
    BaseGridControllerAny<ITransaction>.AllowColumnSelection
    BaseGridControllerAny<ITransaction>.AllowPublicToggleCommand
    BaseGridControllerAny<ITransaction>.AllowSearchCommand
    BaseGridControllerAny<ITransaction>.AllowMultipleSelect
    BaseGridControllerAny<ITransaction>.AllowExcelExport
    BaseGridControllerAny<ITransaction>.AllowSequencing
    BaseGridControllerAny<ITransaction>.OpenFromRelatedColumnName
    BaseGridControllerAny<ITransaction>.PopulateNewFromLookupColumnName
    BaseGridControllerAny<ITransaction>.GetLookupIDsForNewItems(Func<IBaseEntity, Task>)
    BaseGridControllerAny<ITransaction>.PreventDuplicateLookupIDs
    BaseGridControllerAny<ITransaction>.AddItem(ITransaction)
    BaseGridController.ComboItemsClear
    BaseGridController.ColumnGroups()
    BaseGridController.DefaultColumnGroupIndexes
    BaseGridController.DefaultFrozenColumnCount
    BaseGridController.AllPossibleSearchColumns()
    BaseGridController.InternalFilter
    BaseGridController.ColumnSortings
    BaseGridController.ColumnFilters
    BaseGridController.SearchColumns
    BaseGridController.Search
    BaseGridController.SetOrdering(IEnumerable<QueryableSort>)
    BaseGridController.SetFilters(IEnumerable<QueryableFilter>)
    BaseGridController.SetSearch(String, IEnumerable<String>)
    BaseGridController.BaseGridView
    BaseGridController.GetVisibleColumnNames()
    BaseGridController.OnlyExportGrid
    BaseGridController.OnlyExportFromQuery
    BaseGridController.Created
    BaseGridController.IGrid.GridItems
    ModelViewController.CurrentDisplayedItem
    ModelViewController.CheckIsLockedForCanWrite
    ModelViewController.View
    ModelViewController.InitAsync()
    ModelViewController.DisplayItem(Object)
    ModelViewController.ShouldDisplayItem(Object)
    ModelViewController.DisplayIfNull
    ModelViewController.RemoveHandlers(Object)
    ModelViewController.AddHandlers(Object)
    ModelViewController.RemoveCommand(ViewCommand)
    ModelViewController.RemoveCommands<OFType>()
    ModelViewController.InsertCommand(ViewCommand, Int32)
    ModelViewController.InsertCommand(ViewCommand, ViewCommand, ViewCommand)
    ModelViewController.Commands
    ModelViewController.UpdateAllCommands()
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: LemonEdge.Client.Core.Views
    Assembly: ClientCore.dll
    Syntax
    public abstract class SingleItemWithChildTransactionsController<T> : BaseGridRelatedCollectionController<T, ITransaction>, IBaseGridController, ICollectionExportable, INewGridItemImplementor<ITransaction>, ICopyGridItemImplementor<ITransaction>, IGrid, IDeleteGridItemImplementor<ITransaction>, ILockableController, IModelViewController where T : IBaseEntity
    Type Parameters
    Name Description
    T

    The type of entity that is the parent of a set of child transactions

    Constructors

    SingleItemWithChildTransactionsController(IBaseGridRelatedCollection<T, ITransaction>)

    Creates a new SingleItemWithChildTransactionsController

    Declaration
    public SingleItemWithChildTransactionsController(IBaseGridRelatedCollection<T, ITransaction> view)
    Parameters
    Type Name Description
    IBaseGridRelatedCollection<T, ITransaction> view

    The IBaseGridRelatedCollection view implementation using the UI components of the client application

    Properties

    AllowCopyCommand

    Declaration
    public override bool AllowCopyCommand { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridController<LemonEdge.API.Entities.ITransaction>.AllowCopyCommand

    AllowOpenCommand

    Declaration
    public override bool AllowOpenCommand { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridController<LemonEdge.API.Entities.ITransaction>.AllowOpenCommand

    AllowXMLImportExport

    Declaration
    public override bool AllowXMLImportExport { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.AllowXMLImportExport

    AutoOpenNewItemInTab

    Declaration
    public override bool AutoOpenNewItemInTab { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.AutoOpenNewItemInTab

    AutoSelectFirstRow

    True - Always select the first transaction

    Declaration
    protected override bool AutoSelectFirstRow { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.AutoSelectFirstRow

    CanWrite

    Uses the ITransactionProcessor CanWrite and Locked to determine if a transaction can be written too

    Declaration
    public override bool CanWrite { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    ModelViewController.CanWrite

    CollectionRelationshipColumnName

    Declaration
    public override string CollectionRelationshipColumnName { get; }
    Property Value
    Type Description
    System.String
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridRelatedCollectionController<T, LemonEdge.API.Entities.ITransaction>.CollectionRelationshipColumnName

    ContextHelpURL

    Declaration
    public override string ContextHelpURL { get; }
    Property Value
    Type Description
    System.String
    Overrides
    ModelViewController.ContextHelpURL

    DefaultSearchColumn

    Declaration
    protected override string DefaultSearchColumn { get; }
    Property Value
    Type Description
    System.String
    Overrides
    BaseGridController.DefaultSearchColumn

    LockableHandler

    LockableHandler implementation returning the ITransactionProcessor

    Declaration
    public ILockable LockableHandler { get; }
    Property Value
    Type Description
    ILockable

    Methods

    AlterColumnInfo(ControlDisplayInfo)

    Ensures all the columns have the correct filters depending on the instrument, entity and path selected for the transaction

    Declaration
    protected override void AlterColumnInfo(ControlDisplayInfo info)
    Parameters
    Type Name Description
    ControlDisplayInfo info

    The column to alter

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.AlterColumnInfo(LemonEdge.Client.Core.Views.Core.ControlDisplayInfo)

    AlterQuery(QueryableExecuter<ITransaction>)

    Ensures the query is filtered to only the header transactions that have this SingleItem as their parent

    This is not used by the controller, but can be used by the inheriting implementation. This controller overrides the GetGridSourceItems() to use the processor loaded transactions instead

    Declaration
    protected override QueryableExecuter<ITransaction> AlterQuery(QueryableExecuter<ITransaction> query)
    Parameters
    Type Name Description
    QueryableExecuter<ITransaction> query

    The query to modify to only return the transactions in for this parent item

    Returns
    Type Description
    QueryableExecuter<ITransaction>

    The query to return only transactions that have this SingleItem as their parent

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridRelatedCollectionController<T, LemonEdge.API.Entities.ITransaction>.AlterQuery(LemonEdge.Utils.QueryableExecuter<LemonEdge.API.Entities.ITransaction>)

    CanDelete(ITransaction)

    Indicates a transaction can be deleted if it is not Finalized or Cancelled

    Declaration
    public override bool CanDelete(ITransaction item)
    Parameters
    Type Name Description
    ITransaction item

    The transaction item to see if it can be deleted

    Returns
    Type Description
    System.Boolean

    True if a transaction can be deleted and is not Finalized or Cancelled

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.CanDelete(LemonEdge.API.Entities.ITransaction)

    ColumnNames()

    Adds the header information for a transaction along with net total func, local and reporting amounts as columns

    Declaration
    protected override IEnumerable<ControlDisplayInfoLight> ColumnNames()
    Returns
    Type Description
    System.Collections.Generic.IEnumerable<ControlDisplayInfoLight>

    The columns to be dislayed against this grid

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.ColumnNames()

    DisplayUI()

    Loads all the related transactions through the ITransactionProcessor for this SingleItem and populates the grid with all the loaded transactions

    GetGridSourceItems() is overridden to return the processor transactions instead of loading the transactions from the query

    Declaration
    public override Task DisplayUI()
    Returns
    Type Description
    System.Threading.Tasks.Task

    A task indicating the completion of the operation

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.DisplayUI()

    GetGridSourceItems()

    Instead of using the query (base implementation) we return all the HeaderTransactions loaded by the processor

    Declaration
    public override Task<IEnumerable<ITransaction>> GetGridSourceItems()
    Returns
    Type Description
    System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<ITransaction>>

    All the header transactions that have this SingleItem as their parent

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridController<LemonEdge.API.Entities.ITransaction>.GetGridSourceItems()

    GetNewItemTranInfo(ITransaction)

    When creating a new transaction this provides the default status/transaction date for the transaction that should come from the SingleItem

    Declaration
    protected abstract (TransactionStatus Status, DateTimeOffset TransactionDate) GetNewItemTranInfo(ITransaction item)
    Parameters
    Type Name Description
    ITransaction item

    The new transaction being created

    Returns
    Type Description
    System.ValueTuple<TransactionStatus, System.DateTimeOffset>

    A status and date to use for the new transaction

    InitCommands(IList<ViewCommand>)

    Adds the ViewAllocation and TransactionSettingsEdit commands to the standard grid commands

    Declaration
    protected override void InitCommands(IList<ViewCommand> commands)
    Parameters
    Type Name Description
    System.Collections.Generic.IList<ViewCommand> commands

    The commands for this transaction grid

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.InitCommands(System.Collections.Generic.IList<LemonEdge.Client.Core.Commands.ViewCommands.ViewCommand>)

    RemoveItems(IEnumerable<ITransaction>)

    Removes the specified items from the ITransactionProcessor as well as the base implementation from the grid itself

    Declaration
    public override Task RemoveItems(IEnumerable<ITransaction> items)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<ITransaction> items

    The transactions to be removed

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task indicating the completion of the operation

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<LemonEdge.API.Entities.ITransaction>.RemoveItems(System.Collections.Generic.IEnumerable<LemonEdge.API.Entities.ITransaction>)

    UpdateLocked()

    UpdateLocked() implementation which enumerates each column in the grid and updates their status

    Declaration
    public void UpdateLocked()

    UpdateNewItem(ITransaction)

    Declaration
    protected override Task UpdateNewItem(ITransaction item)
    Parameters
    Type Name Description
    ITransaction item
    Returns
    Type Description
    System.Threading.Tasks.Task
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridRelatedCollectionController<T, LemonEdge.API.Entities.ITransaction>.UpdateNewItem(LemonEdge.API.Entities.ITransaction)

    Implements

    IBaseGridController
    ICollectionExportable
    INewGridItemImplementor<T>
    ICopyGridItemImplementor<T>
    IGrid
    IDeleteGridItemImplementor<T>
    ILockableController
    IModelViewController

    Extension Methods

    MiscExtensions.SetIfNotEqual<T, P>(T, Expression<Func<T, P>>, P)
    ReflectionExtensions.ClearEventInvocations(Object, String)
    StringExtensions.ToCSVFormatString(Object, Type)
    SQLExtensions.ToSQLValue(Object, Boolean)
    In This Article
    Back to top © LemonTree Software Ltd. All rights reserved.