Interface IGLAccount
The system entity for gl accounts. Uses pivots to allow modification of IGLAccountName for each gl account at the same time
See https://help.lemonedge.com/help/settings/financial-services-gl/gl-accounts/intro.html for more information
Inherited Members
Namespace: LemonEdge.API.Entities.FinancialServices.Accounting
Assembly: LemonEdge.API.Entities.FinancialServices.dll
Syntax
[EntityDefinition(EntityID.GLAccount, "dbo.LT_GLAccounts", "GLAccount", LabelColumn = "Name", IsStandingDataEntity = true, HelpURL = "help/settings/financial-services-gl/gl-accounts/intro.html")]
[DefaultEntityIcon(ImageType.GLAccount)]
[EntityHasPivot(EntityID.GLAccountName, "GLAccountID", "GLClassificationID", "GLClassificationNameID")]
[DatabaseClassValidation(typeof(GLAccountValidation), "ValidateObject")]
public interface IGLAccount : IBaseEntityWithPermissions, IHasFolderStructure, IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties, ISetCopier
Properties
BankAccountNumber
A unique bank account ID for this gl account.
Declaration
[EntityProperty(SQLType.NVarChar, 100, true)]
[EntityDescription("A unique bank account ID for this gl account.")]
string BankAccountNumber { get; set; }
Property Value
Type | Description |
---|---|
string |
BankAccountOwningEntityID
The entity this bank account is owned by.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.ObjectEntity, "ID", SingleJoinType.ZeroToOne, "Entity", "Owned Bank Accounts")]
[EntityDescription("The entity this bank account is owned by.")]
[PropertyValidation("MyItem.BankAccountOwningEntityID.HasValue && MyItem.BankAccountOwningEntityID.Value != System.Guid.Empty", "MyItem.Type == LemonEdge.API.Entities.FinancialServices.Accounting.GLAccountType.BankAccount", "You can only set the entity that owns this account if the type is set to BankAccount.")]
Guid? BankAccountOwningEntityID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
BankID
Links to IObjectEntity. The bank for this bank account
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.ObjectEntity, "ID", SingleJoinType.ZeroToOne, "Bank", "Bank Accounts", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The bank for this bank account.")]
Guid? BankID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
ChartID
Parent chart
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.ChartOfAccount, "ID", SingleJoinType.ZeroToOne, "Chart Of Accounts", "Accounts", DeleteWithRelationship = true, InheritPermissions = false, PartOfParentSet = true)]
[EntityDescription("The chart of accounts this account belongs to.")]
[Unique(MergeWithAnyOtherUniqueProperties = true)]
[EntityKeyProperty]
Guid? ChartID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
Code
[Key] A short code for this gl account.
Declaration
[EntityProperty(SQLType.NVarChar, 50, true)]
[EntityDescription("A short code for this gl account.")]
[Unique(MergeWithAnyOtherUniqueProperties = true)]
[EntityKeyProperty]
string Code { get; set; }
Property Value
Type | Description |
---|---|
string |
CurrencyID
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.Currency, "ID", SingleJoinType.ZeroToOne, "Currency", "Bank Account Currency", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = true, InheritPermissions = false)]
[EntityDescription("The currency for Bank Account")]
Guid? CurrencyID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
DeactivationDate
Declaration
[EntityProperty(SQLType.DateTimeOffset, true, IsDate = true)]
[EntityDescription("The day this GL Account will become deactivated and unavailable for use")]
DateTimeOffset? DeactivationDate { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
Name
The unique name of this account
Declaration
[EntityProperty(SQLType.NVarChar, 500, false)]
[EntityDescription("The unique name of this GL Account.")]
[Required]
string Name { get; set; }
Property Value
Type | Description |
---|---|
string |
NaturalBalance
The natural balance of this GL Account. Not used in any Transaction processing, purely notional for reporting.
Declaration
[EntityProperty(SQLType.SmallInt, false)]
[EntityDescription("The natural balance of this GL Account.")]
GLAccountNaturalBalance NaturalBalance { get; set; }
Property Value
Type | Description |
---|---|
GLAccountNaturalBalance |
ParentGLAccountID
Parent Account
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.GLAccount, "ID", SingleJoinType.ZeroToOne, "Parent", "Sub Accounts", DeleteWithRelationship = true, InheritPermissions = false, PartOfParentSet = true)]
[EntityDescription("The parent gl account this account is a sub account of.")]
Guid? ParentGLAccountID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
PeriodEndStatus
Holds a status that can be used in period end reporting
Declaration
[EntityProperty(SQLType.SmallInt, false, "0")]
[EntityDescription("Holds a status that can be used in period end reporting.")]
TransactionCodePeriodEndStatus PeriodEndStatus { get; set; }
Property Value
Type | Description |
---|---|
TransactionCodePeriodEndStatus |
Type
The type of this GL Account. Not used in any Transaction processing, purely notional for reporting.
Declaration
[EntityProperty(SQLType.SmallInt, false)]
[EntityDescription("The type of this GL Account.")]
GLAccountType Type { get; set; }
Property Value
Type | Description |
---|---|
GLAccountType |