Search Results for

    Show / Hide Table of Contents

    Interface IObjectEntityBase

    Any LemonEdge entity interface that inherits this, means it is acquires all the functionality of an Object Entity which can belong as part of a IEntitySetBase or as entities that can be allocated to in IAllocationRule

    See https://help.lemonedge.com/companies/ for more info

    Inherited Members
    IHasFolderStructure.FolderID
    IBaseEntity.GetLabel(string)
    IBaseEntity.SetLabel(string, string)
    IBaseEntity.SetSilentLabel(string, string)
    IBaseEntity.AccountID
    IBaseEntity.ID
    IBaseEntity.LastUpdated
    IBaseEntity.ModifiedByUserID
    IBaseEntity.CanvasID
    IBaseEntity.AlgorithmStepID
    IBaseEntity.SafeID
    IEquatable<IBaseEntity>.Equals(IBaseEntity)
    INotifyPropertyChanged.PropertyChanged
    INotifyPropertyChanging.PropertyChanging
    ICloneableAsync.Clone(object)
    ICloneableAsync.CopyFromSource(object)
    ICanTrackProperties.HasTrackedPropertyChanged(string)
    ICanTrackProperties.OriginalTrackedPropertyValue(string)
    ICanTrackProperties.OriginalTrackedPropertyValue<T>(string)
    ICanTrackProperties.ClearTrackedOriginalValues()
    ICanTrackProperties.GetAllOriginalTrackedPropertyValues()
    Namespace: LemonEdge.API.Entities.FinancialServices.LegalEntity
    Assembly: LemonEdge.API.Entities.FinancialServices.dll
    Syntax
    [IsBaseInterface]
    [EntityIndex(Name = "BaseName", ColumnNames = new string[] { "Name" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = false)]
    [EntityIndex(Name = "BaseCode", ColumnNames = new string[] { "Code" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = false)]
    public interface IObjectEntityBase : IBaseEntityWithPermissions, IHasFolderStructure, IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties

    Properties

    AllowRuleAllocations

    Indicates if this object entity can be allocated to in Allocation Rules. If it can then it can belong as part of an Entity Structure within an Entity Set. Typically if an object entity can be part of an Allocation Rule, it will also have a GL.

    Declaration
    [EntityProperty(SQLType.Bit, false)]
    [EntityDescription("Indicates if this object entity can be allocated to in Allocation Rules. If it can then it can belong as part of an Entity Structure within an Entity Set. Typically if an object entity can be part of an Allocation Rule, it will also have a GL.")]
    bool AllowRuleAllocations { get; set; }
    Property Value
    Type Description
    bool

    CanBeCounterparty

    Indicates if this object entity can act as a counterparty to transactions in the system

    Declaration
    [EntityProperty(SQLType.Bit, false, "0")]
    [EntityDescription("Indicates if this object entity can act as a counterparty to transactions in the system")]
    bool CanBeCounterparty { get; set; }
    Property Value
    Type Description
    bool

    CanOwnInstruments

    Indicates if this object entity can own financial instruments

    Declaration
    [EntityProperty(SQLType.Bit, false, "0")]
    [EntityDescription("Indicates if this object entity can own financial instruments")]
    bool CanOwnInstruments { get; set; }
    Property Value
    Type Description
    bool

    Code

    The unique code of this entity.

    Part of the key for this entity

    Declaration
    [EntityProperty(SQLType.NVarChar, 150, false)]
    [EntityKeyProperty]
    [EntityDescription("The unique code of this entity.")]
    [Unique(MergeWithAnyOtherUniqueProperties = true)]
    [Required]
    [DBTrackChanges]
    string Code { get; set; }
    Property Value
    Type Description
    string

    CurrencyID

    Links to ICurrency. The currency this object entity operates in.

    When used in a transaction this would be the functional currency for the transaction

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, false)]
    [EntityRelationship(EntityID.Currency, "ID", SingleJoinType.One, "Currency", "Entities", DeleteWithRelationship = true, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
    [RequiredNoDefaultIDValidation]
    [EntityDescription("The currency this object entity operates in. When used in a transaction this would be the functional currency for the transaction")]
    [DBTrackChanges]
    [PropertyValidation("Item.HasTrackedPropertyChanged(nameof(LemonEdge.API.Entities.FinancialServices.LegalEntity.IObjectEntity.CurrencyID)) && MyData.HasChange(Item) && MyData.GetChange(Item) != LemonEdge.API.Core.Data.EntityOperation.Insert", "(await Data.ExecuteQuery(Data.GetItems<LemonEdge.API.Entities.FinancialServices.Accounting.IGLPosting>().Where(nameof(LemonEdge.API.Entities.FinancialServices.Accounting.IGLPosting.EntityID), LemonEdge.Utils.Database.SQLOperator.Equals, Item.ID))).Count() == 0", "You can not change the currency of an entity if it has existing gl postings against it. You have to delete those first.")]
    Guid CurrencyID { get; set; }
    Property Value
    Type Description
    Guid

    ExchangeRateCategoryOverrideID

    Links to IExchangeRateCategory. The overridden exchange rate to use for processing transactions in this entity set.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.ExchangeRateCategory, "ID", SingleJoinType.ZeroToOne, "Exchange Rate Category", "Default For Entity Sets", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
    [EntityDescription("The overridden exchange rate to use for processing transactions in this entity set.")]
    Guid? ExchangeRateCategoryOverrideID { get; set; }
    Property Value
    Type Description
    Guid?

    HasGL

    Indicates if this object entity has a GL. If it does then it can have Transactions booked against it, and will have Period Closing functionality.

    Declaration
    [EntityProperty(SQLType.Bit, false)]
    [EntityDescription("Indicates if this entity can be the source of financial transactions.")]
    bool HasGL { get; set; }
    Property Value
    Type Description
    bool

    LegalName

    The legal name of this object entity

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, false)]
    [EntityDescription("The legal name of this entity.")]
    [DBTrackChanges]
    string LegalName { get; set; }
    Property Value
    Type Description
    string

    Name

    The unique name of this entity.

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, false)]
    [EntityDescription("The unique name of this entity.")]
    [Required]
    [DBTrackChanges]
    string Name { get; set; }
    Property Value
    Type Description
    string

    ReportingCurrencyOverrideID

    Links to ICurrency. The reporting overridden currency this object entity operates in.

    When used in a transaction this would be the functional currency for the transaction

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.Currency, "ID", SingleJoinType.ZeroToOne, "Currency", "Entities", DeleteWithRelationship = true, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
    [EntityDescription("The reporting overridden currency this object entity operates in. When used in a transaction this would be the functional currency for the transaction")]
    [DBTrackChanges]
    [PropertyValidation("Item.HasTrackedPropertyChanged(nameof(LemonEdge.API.Entities.FinancialServices.LegalEntity.IObjectEntity.ReportingCurrencyOverrideID)) && MyData.HasChange(Item) && MyData.GetChange(Item) != LemonEdge.API.Core.Data.EntityOperation.Insert", "(await Data.ExecuteQuery(Data.GetItems<LemonEdge.API.Entities.FinancialServices.Accounting.IGLPosting>().Where(nameof(LemonEdge.API.Entities.FinancialServices.Accounting.IGLPosting.EntityID), LemonEdge.Utils.Database.SQLOperator.Equals, Item.ID))).Count() == 0", "You can not change the reporting currency of an entity if it has existing gl postings against it. You have to delete those first.")]
    Guid? ReportingCurrencyOverrideID { get; set; }
    Property Value
    Type Description
    Guid?

    TypeID

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.ObjectEntityType, "ID", SingleJoinType.ZeroToOne, "Type", "Object Entities", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
    [EntityDescription("The type this object entity belongs to.")]
    Guid? TypeID { get; set; }
    Property Value
    Type Description
    Guid?

    YearEnd

    When processing GLPostings retained earnings calculations the calculations are done on a year to date basis. This Year End is used to determine the last Year End closing balances, and which transactions to look at going forward that participate within the current year. Only the month/day component is used the year depends on the context.

    Declaration
    [EntityProperty(SQLType.DateTimeOffset, true, IsDate = true)]
    [EntityDescription("When processing GLPostings retained earnings calculations the calculations are done on a year to date basis. This Year End is used to determine the last Year End closing balances, and which transactions to look at going forward that participate within the current year. Only the month/day component is used the year depends on the context")]
    DateTimeOffset? YearEnd { get; set; }
    Property Value
    Type Description
    DateTimeOffset?

    Extension Methods

    ObjectEntityBaseExtensions.OnCodeChangedMoveToLegalAndNameIfEmpty(IObjectEntityBase)
    ObjectEntityBaseExtensions.OnLegalNameChangedMoveToNameAndCodeIfEmpty(IObjectEntityBase)
    ObjectEntityBaseExtensions.OnNameChangedMoveToCodeAndLegalIfEmpty(IObjectEntityBase)
    ObjectEntityBaseExtensions.OnTypeChanged(IObjectEntityBase, IReadOnlyCache)
    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)

    See Also

    IBaseObject
    IInheritingObject
    IsBaseInterfaceAttribute
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.