Search Results for

    Show / Hide Table of Contents

    Interface IEntitySetBase

    Any LemonEdge entity interface that inherits this, means it is acquires all the functionality of an EntitySet

    See https://help.lemonedge.com/company-structures/ 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)]
    public interface IEntitySetBase : IBaseEntityWithPermissions, IHasFolderStructure, IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties

    Properties

    CSERoundingDecimalPlaces

    Any CSE rounding applied throughout this EntitySet can use this rounding decimal places as default.

    0 is the default to indicate no rounding, max is 12 decimal places of rounding

    Declaration
    [EntityProperty(SQLType.SmallInt, false, "0")]
    [EntityDescription("Any CSE rounding applied throughout this EntitySet can use this rounding decimal places as default, instruments have their own unit rounding decimal places.")]
    [PropertyValidation("true", "MyItem.CSERoundingDecimalPlaces >= 0 && MyItem.CSERoundingDecimalPlaces <= 12", "CSERoundingDecimalPlaces must have a number of decimal places to round to between 0 and 12 inclusive.")]
    short CSERoundingDecimalPlaces { get; set; }
    Property Value
    Type Description
    short

    CurrencyID

    Links to ICurrency. Any Transactions booked against legal Entities within this Entity Set will use this currency as the Reporting Currency of those Transactions. This provides a common currency across all Transactions within the Entity Set that can be used for consolidated reporting.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, false)]
    [EntityRelationship(EntityID.Currency, "ID", SingleJoinType.One, "Currency", "Entity Sets", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
    [RequiredNoDefaultIDValidation]
    [EntityDescription("Any Transactions booked against legal Entities within this Entity Set will use this currency as the Reporting Currency of those Transactions. This provides a common currency across all Transactions within the Entity Set that can be used for consolidated reporting.")]
    [DBTrackChanges]
    [PropertyValidation("Item.HasTrackedPropertyChanged(nameof(LemonEdge.API.Entities.FinancialServices.LegalEntity.IEntitySet.CurrencyID)) && MyData.HasChange(Item) && MyData.GetChange(Item) != LemonEdge.API.Core.Data.EntityOperation.Insert", "\r\nvar entities = await Data.ExecuteQuery(Data.GetItems<LemonEdge.API.Entities.FinancialServices.LegalEntity.ISetEntity>().Where(nameof(LemonEdge.API.Entities.FinancialServices.LegalEntity.ISetEntity.EntitySetID), LemonEdge.Utils.Database.SQLOperator.Equals, Item.ID));\r\nforeach(var items in entities.Chunk(20))\r\n{\r\n    var cnt =(await Data.ExecuteQuery(Data.GetItems<LemonEdge.API.Entities.FinancialServices.Accounting.IGLPosting>().Where(nameof(LemonEdge.API.Entities.FinancialServices.Accounting.IGLPosting.EntityID), LemonEdge.Utils.Database.SQLOperator.IsContainedIn, items.Select(x => x.EntityID).ToArray()))).Count();\r\n    if (cnt > 0) return false;\r\n}\r\nreturn true;\r\n", "You can not change the currency of an entity set if it has existing gl postings against it. You have to delete those first.")]
    Guid CurrencyID { get; set; }
    Property Value
    Type Description
    Guid

    ExchangeRateCategoryID

    Links to IExchangeRateCategory. The default 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 default exchange rate to use for processing transactions in this entity set.")]
    Guid? ExchangeRateCategoryID { get; set; }
    Property Value
    Type Description
    Guid?

    Name

    The unique name of this entity set

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

    PeriodEndTransformationID

    Links to IPeriodEndTransformation. The default period end transformation to use for processing period ends in this entity set.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.PeriodEndTransformation, "ID", SingleJoinType.ZeroToOne, "Period End Transformation", "Default For Entity Sets", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
    [EntityDescription("The default period end transformation to use for processing period ends in this entity set.")]
    Guid? PeriodEndTransformationID { get; set; }
    Property Value
    Type Description
    Guid?

    RoundingLevel

    Any rounding applied throughout this EntitySet can use this rounding level as default.

    Declaration
    [EntityProperty(SQLType.SmallInt, false, "3")]
    [EntityDescription("Any rounding applied throughout this EntitySet can use this rounding level as default.")]
    RoundingLevel RoundingLevel { get; set; }
    Property Value
    Type Description
    RoundingLevel

    UnitRoundingDecimalPlaces

    Any unit rounding applied throughout this EntitySet can use this rounding decimal places as default, instruments have their own unit rounding decimal places.

    0 is the default to indicate no rounding, max is 12 decimal places of rounding

    Declaration
    [EntityProperty(SQLType.SmallInt, false, "0")]
    [EntityDescription("Any unit rounding applied throughout this EntitySet can use this rounding decimal places as default, instruments have their own unit rounding decimal places.")]
    [PropertyValidation("true", "MyItem.UnitRoundingDecimalPlaces >= 0 && MyItem.UnitRoundingDecimalPlaces <= 12", "UnitRoundingDecimalPlaces must have a number of decimal places to round to between 0 and 12 inclusive.")]
    short UnitRoundingDecimalPlaces { get; set; }
    Property Value
    Type Description
    short

    YearEnd

    When processing Period End 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.

    Declaration
    [EntityProperty(SQLType.DateTimeOffset, false, IsDate = true)]
    [EntityDescription("When processing Period End 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..")]
    [HardCodedDefaultValueOnNew("2020-12-31")]
    DateTimeOffset YearEnd { get; set; }
    Property Value
    Type Description
    DateTimeOffset

    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)

    See Also

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