Search Results for

    Show / Hide Table of Contents

    Class TransactionValuesController

    A standard base view that displays the values for a given IsHeaderTransaction

    This is responsible for translating the local, func, reporting values into the ITransactionTypeValue values they actually hold according to this header transaction

    Each Header transaction can have a number of sub-transactions if the allocated path goes to entities above it that should be included in the allocation

    This view is automatically added to a transaction view using the AddDefaultTransactionViews(LayoutDescriptorGroup, LayoutDescriptorGroup)

    Inheritance
    System.Object
    ModelViewController
    BaseGridController
    BaseGridControllerAny<ITransaction>
    BaseGridController<ITransaction>
    BaseGridRelatedCollectionController<ITransaction, ITransaction>
    TransactionValuesController
    Implements
    IBaseGridController
    ICollectionExportable
    INewGridItemImplementor<ITransaction>
    ICopyGridItemImplementor<ITransaction>
    IGrid
    IDeleteGridItemImplementor<ITransaction>
    ILockableController
    IModelViewController
    Inherited Members
    BaseGridRelatedCollectionController<ITransaction, ITransaction>.SingleItem
    BaseGridRelatedCollectionController<ITransaction, ITransaction>.AllowIDFilter
    BaseGridRelatedCollectionController<ITransaction, ITransaction>.AlterQuery(QueryableExecuter<ITransaction>)
    BaseGridRelatedCollectionController<ITransaction, ITransaction>.AddRelationshipJoin(QueryableExecuter<ITransaction>)
    BaseGridRelatedCollectionController<ITransaction, ITransaction>.UpdateNewItem(ITransaction)
    BaseGridRelatedCollectionController<ITransaction, ITransaction>.CollectionRelationshipColumnName
    BaseGridRelatedCollectionController<ITransaction, 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>.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>.AutoSelectFirstRow
    BaseGridControllerAny<ITransaction>.LoadAdditionalColumns()
    BaseGridControllerAny<ITransaction>.AddCol(Int16, ControlDisplayInfoLight, EntityDescriptor)
    BaseGridControllerAny<ITransaction>.ColumnNames()
    BaseGridControllerAny<ITransaction>.PivotColumns(Int16)
    BaseGridControllerAny<ITransaction>.AddStandardColumns
    BaseGridControllerAny<ITransaction>.StandardColumnsUniqueGroupKey
    BaseGridControllerAny<ITransaction>.SelectedItemForSubViews
    BaseGridControllerAny<ITransaction>.UpdateNewItem(ITransaction)
    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>.AlterColumnInfo(ControlDisplayInfo)
    BaseGridControllerAny<ITransaction>.UpdateColumnFromName(String)
    BaseGridControllerAny<ITransaction>.TogglerZeroColumn
    BaseGridControllerAny<ITransaction>.IsZeroColumnColumnVisible(String)
    BaseGridControllerAny<ITransaction>.ToggleZeroColumns()
    BaseGridControllerAny<ITransaction>.UpdateAllZeroColumns()
    BaseGridControllerAny<ITransaction>.UpdateTransferColumnStatus()
    BaseGridControllerAny<ITransaction>.TransferColToggler
    BaseGridControllerAny<ITransaction>.CanDelete(ITransaction)
    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>.AutoOpenNewItemInTab
    BaseGridControllerAny<ITransaction>.OpenFromRelatedColumnName
    BaseGridControllerAny<ITransaction>.PopulateNewFromLookupColumnName
    BaseGridControllerAny<ITransaction>.GetLookupIDsForNewItems(Func<IBaseEntity, Task>)
    BaseGridControllerAny<ITransaction>.PreventDuplicateLookupIDs
    BaseGridControllerAny<ITransaction>.RemoveItems(IEnumerable<ITransaction>)
    BaseGridControllerAny<ITransaction>.AddItem(ITransaction)
    BaseGridController.ComboItemsClear
    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 class TransactionValuesController : BaseGridRelatedCollectionController<ITransaction, ITransaction>, IBaseGridController, ICollectionExportable, INewGridItemImplementor<ITransaction>, ICopyGridItemImplementor<ITransaction>, IGrid, IDeleteGridItemImplementor<ITransaction>, ILockableController, IModelViewController

    Constructors

    TransactionValuesController(IBaseGridRelatedCollection<ITransaction, ITransaction>)

    Creates a new TransactionValuesController

    Declaration
    public TransactionValuesController(IBaseGridRelatedCollection<ITransaction, ITransaction> view)
    Parameters
    Type Name Description
    IBaseGridRelatedCollection<ITransaction, 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

    AllowDeleteCommand

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

    AllowNewCommand

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

    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

    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<LemonEdge.API.Entities.ITransaction, 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

    AlterQuery(QueryableExecuter<ITransaction>)

    Ensures the query is filtered to only the transactions that have this header transactions 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 header transaction

    Returns
    Type Description
    QueryableExecuter<ITransaction>

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

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

    ColumnGroups()

    Creates groupings for the valus columns - Entity info, then Local, Functional, Reporting values, and finally System for base hidden columns

    Declaration
    public override IEnumerable<GridColumnGroup> ColumnGroups()
    Returns
    Type Description
    System.Collections.Generic.IEnumerable<GridColumnGroup>
    Overrides
    BaseGridController.ColumnGroups()

    Columns()

    Adds the standard columns for the transaction value views: EntityID, Reference, and ParentTransactionID

    Then for each ITransactionTypeValue in this header transaction the system creates a corrosponding local, functional, reporting named column mapping to the correct value property

    Declaration
    public override IEnumerable<ControlDisplayInfo> Columns()
    Returns
    Type Description
    System.Collections.Generic.IEnumerable<ControlDisplayInfo>

    The columns to be displayed against this grid

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

    DisplayUI()

    Loads all the related transactions through the ITransactionProcessor for this HeaderTransaction 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()

    GetExportableColumnInfo(IEnumerable<ColumnDescriptor>)

    Overrides the grid exportable column info to include the dynamically created columns that map the ITransactionTypeValue amounts to the appropriate local, func, or reporting value against the transaction

    Declaration
    public override Task<IEnumerable<ControlDisplayVisibilityInfo>> GetExportableColumnInfo(IEnumerable<ColumnDescriptor> visibleColumns)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<ColumnDescriptor> visibleColumns

    The current visible columns in the grid

    Returns
    Type Description
    System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<ControlDisplayVisibilityInfo>>

    A list of columns and their export info

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

    GetGridSourceItems()

    Instead of using the query (base implementation) we return all the transactions loaded by the ITransactionProcessor for this header transaction

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

    All the transactions that have this Header Transaction as their parent

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

    InitCommands(IList<ViewCommand>)

    Adds the LemonEdge.Client.Core.Views.TransactionValuesController.OpenPath, LemonEdge.Client.Core.Views.TransactionValuesController.AddTypeValue, LemonEdge.Client.Core.Views.TransactionValuesController.DeleteTypeValue, and ToggleNonZeroColumns 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>)

    UpdateLocked()

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

    Declaration
    public void UpdateLocked()

    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.