Interface IGLPosting
The system entity for a gl posting
See https://help.lemonedge.com/help/financial-services-engine/financial/transactions/gl-postings-view.html for more information
Inherited Members
Namespace: LemonEdge.API.Entities.FinancialServices.Accounting
Assembly: LemonEdge.API.Entities.FinancialServices.dll
Syntax
[EntityDefinition(EntityID.GLPosting, "dbo.LT_GLPostings", "GLPosting", IsStandingDataEntity = false, LabelColumn = "Reference", CustomToString = true)]
[DefaultEntityIcon(ImageType.TransactionGL)]
[EntityIncludeInIndex(IndexName = "CanvasItem", IncludeColumns = new string[] { "Status", "GLAccountID", "SubAccountID", "InstrumentID", "InstrumentEntityID", "PathID", "EntityID", "SafeID", "LocalAmount", "ReportingAmount", "FuncAmount", "EffectiveDate" })]
[EntityIncludeInIndex(IndexName = "Ref", IncludeColumns = new string[] { "Status", "GLAccountID", "SubAccountID", "InstrumentID", "InstrumentEntityID", "PathID", "EntityID", "SafeID", "LocalAmount", "ReportingAmount", "FuncAmount", "EffectiveDate" })]
[EntityIndex(Name = "ParentTransaction", ColumnNames = new string[] { "ParentTransactionID", "FinancialDate" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending, IndexOrder.Descending }, IncludeColumns = new string[] { "Status", "RootTransactionID", "GLAccountID", "SubAccountID", "InstrumentID", "InstrumentEntityID", "PathID", "EntityID", "SafeID", "LocalAmount", "ReportingAmount", "FuncAmount", "EffectiveDate" }, IsClustered = false, IsUnique = false)]
[EntityIndex(Name = "RootTransaction", ColumnNames = new string[] { "RootTransactionID" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IncludeColumns = new string[] { "Status" }, IsClustered = false, IsUnique = false)]
[EntityIndex(Name = "Instrument", ColumnNames = new string[] { "InstrumentID", "FinancialDate" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending, IndexOrder.Descending }, IncludeColumns = new string[] { "Status", "GLAccountID", "SubAccountID", "ParentTransactionID", "InstrumentEntityID", "PathID", "EntityID", "SafeID", "LocalAmount", "ReportingAmount", "FuncAmount", "EffectiveDate" }, IsClustered = false, IsUnique = false)]
[EntityIndex(Name = "Entity", ColumnNames = new string[] { "EntityID", "FinancialDate" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending, IndexOrder.Descending }, IncludeColumns = new string[] { "Status", "SubAccountID", "GLAccountID", "ParentTransactionID", "InstrumentID", "PathID", "SafeID", "LocalAmount", "ReportingAmount", "FuncAmount", "EffectiveDate" }, IsClustered = false, IsUnique = false)]
[EntityIndex(Name = "Date", ColumnNames = new string[] { "FinancialDate", "EntityID" }, IndexOrder = new IndexOrder[] { IndexOrder.Descending, IndexOrder.Ascending }, IncludeColumns = new string[] { "Status", "SubAccountID", "GLAccountID", "ParentTransactionID", "InstrumentID", "PathID", "SafeID", "LocalAmount", "ReportingAmount", "FuncAmount", "EffectiveDate" }, IsClustered = false, IsUnique = false)]
[EntityIndex(Name = "Transfer", ColumnNames = new string[] { "TransferID" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IncludeColumns = new string[] { "Status" }, IsClustered = false, IsUnique = false)]
public interface IGLPosting : ITransactionalEntity, ICanBeLocked, IHasReference, IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties
Properties
AllocationDate
The allocation date for this posing to be allocated using a path.
Declaration
[EntityProperty(SQLType.DateTimeOffset, true, IsDate = true)]
[EntityDescription("The allocation date for this posting to be allocated using a path.")]
[DBTrackChanges]
DateTimeOffset? AllocationDate { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
Comment
Comment against the local amount
Declaration
[EntityProperty(SQLType.NVarChar, 2000, true, true)]
[EntityDescription("Comment against the posting")]
string Comment { get; set; }
Property Value
Type | Description |
---|---|
string |
CurrencyID
Links to ICurrency. The local currency for this gl posting.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.Currency, "ID", SingleJoinType.One, "Currency", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The local currency for this gl posting.")]
[RequiredNoDefaultIDValidation]
Guid CurrencyID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
DebitCredit
Indicates if this amount should always be shown as a positive debit/credit, or if it is explicitly always a debit or credit allowing negatives
Declaration
[EntityProperty(SQLType.SmallInt, false, "0")]
[EntityDescription("Indicates if this amount should always be shown as a positive debit/credit, or if it is explicitly always a debit or credit allowing negatives.")]
PostingDebitCredit DebitCredit { get; set; }
Property Value
Type | Description |
---|---|
PostingDebitCredit |
EffectiveDate
The effective date for this posting, can be different for transfers/step changes where it holds the original posting effective date
Declaration
[EntityProperty(SQLType.DateTimeOffset, false, "TransactionDate", IsDate = true)]
[EntityDescription("The effective date for this posting, can be different for transfers/step changes where it holds the original transaction posting date.")]
[DBTrackChanges]
[RequiredNoDefaultIDValidation]
DateTimeOffset EffectiveDate { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset |
EntityID
[Key] Links to IObjectEntity. The entity this gl posting is against.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.ObjectEntity, "ID", SingleJoinType.One, "Owning Entity", "GL Postings As Owning Entity", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The entity this gl posting is against.")]
[RequiredNoDefaultIDValidation]
Guid EntityID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
FXRate
The FX Rate between Local and Functional currencies
Declaration
[EntityProperty(SQLType.Decimal, 21, 10, false)]
[EntityDescription("The exchange rate for this posting between the local and functional currency.")]
decimal FXRate { get; set; }
Property Value
Type | Description |
---|---|
decimal |
FinancialDate
The Financial Date for this GL Posting for the given legal Entity and Transaction Date
Declaration
[EntityProperty(SQLType.DateTimeOffset, false, IsDate = true)]
[EntityDescription("The gl financial date for this gl posting.")]
DateTimeOffset FinancialDate { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset |
FuncAmount
The amount to be posted in functional currency against this GL Account
Declaration
[EntityProperty(SQLType.Decimal, 21, 3, false)]
[EntityDescription("The value in functional currency.")]
decimal FuncAmount { get; set; }
Property Value
Type | Description |
---|---|
decimal |
FuncNote
Note against the func amount
Declaration
[EntityProperty(SQLType.NVarChar, 500, true, true)]
[EntityDescription("Note against the func amount")]
string FuncNote { get; set; }
Property Value
Type | Description |
---|---|
string |
GLAccountID
[Key] Links to IGLAccount. The gl account this posting is debiting or crediting
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.GLAccount, "ID", SingleJoinType.One, "GL Account", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[RequiredNoDefaultIDValidation]
[EntityDescription("The account for this gl posting.")]
Guid GLAccountID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
InstrumentEntityID
Links to an entity related to the instrument that can filter ths instrument selection. If provided by an addin, by defulat this won't be visible but can be overridden in the ui to deal/etc for other modules.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true, "(Select top 1 tx.InstrumentEntityID From LT_Transactions tx where tx.ID = t1.ParentTransactionID)")]
[EntityRelationship(EntityID.ObjectEntity, "ID", SingleJoinType.ZeroToOne, "Owner", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("Links to an entity related to the instrument that can filter this instrument selection. If provided by an addin, by default this won't be visible but can be overridden in the ui to deal/etc for other modules.")]
Guid? InstrumentEntityID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
InstrumentID
Links to IInstrument. The instrument to use to allocate this gl posting, through instrument mappings to allocation paths.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.Instrument, "ID", SingleJoinType.ZeroToOne, "Instrument", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The instrument to use to allocate this gl posting, through instrument mappings to allocation paths.")]
Guid? InstrumentID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
LedgerID
[Key] Links to ILedger. The ledger this gl posting is against.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.Ledger, "ID", SingleJoinType.One, "Ledger", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The ledger this gl posting is against.")]
[RequiredNoDefaultIDValidation]
Guid LedgerID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
LocalAmount
The amount to be posted in local currency against this GL Account
Declaration
[EntityProperty(SQLType.Decimal, 21, 3, false)]
[EntityDescription("The value in local currency.")]
decimal LocalAmount { get; set; }
Property Value
Type | Description |
---|---|
decimal |
LocalNote
Note against the local amount
Declaration
[EntityProperty(SQLType.NVarChar, 500, true, true)]
[EntityDescription("Note against the local amount")]
string LocalNote { get; set; }
Property Value
Type | Description |
---|---|
string |
ManualPosting
Indicates if this GL Posting line was added manually by the user versus automatically according to the Transaction Code
Declaration
[EntityProperty(SQLType.Bit, false, "0")]
[EntityDescription("Indicates this posting was manually entered by the user rather than being automatically calculated from the transaction.")]
bool ManualPosting { get; set; }
Property Value
Type | Description |
---|---|
bool |
ParentTransactionID
[Key] Links to ITransaction. The direct parent transaction this gl posting is a child of
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.Transaction, "ID", SingleJoinType.One, "Parent Transaction", "GL Postings From Parent", DeleteWithRelationship = true, PartOfParentSet = true, LinkToItemInSet = false)]
[RequiredNoDefaultIDValidation]
[EntityDescription("The transaction this gl posting belongs to.")]
Guid ParentTransactionID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
PathID
Links to IAllocationPath. The path to use to allocate this gl posting.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.AllocationPath, "ID", SingleJoinType.ZeroToOne, "Allocation Path", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The path to use to allocate this gl posting.")]
Guid? PathID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
RelatedEntityID
Links to IObjectEntity. The legal entity this posting is related to
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.ObjectEntity, "ID", SingleJoinType.ZeroToOne, "Related Entity", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The legal entity this posting is related to.")]
Guid? RelatedEntityID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
ReportingAmount
The amount to be posted in reporting currency against this GL Account
Declaration
[EntityProperty(SQLType.Decimal, 21, 3, false, "FuncAmount")]
[EntityDescription("The value in reporting currency.")]
decimal ReportingAmount { get; set; }
Property Value
Type | Description |
---|---|
decimal |
ReportingFXRate
The FX Rate between Local and Reporting currencies
Declaration
[EntityProperty(SQLType.Decimal, 21, 10, false, "0")]
[EntityDescription("The exchange rate for this posting between the local and reporting currency.")]
decimal ReportingFXRate { get; set; }
Property Value
Type | Description |
---|---|
decimal |
ReportingNote
Note against the reporting amount
Declaration
[EntityProperty(SQLType.NVarChar, 500, true, true)]
[EntityDescription("Note against the reporting amount")]
string ReportingNote { get; set; }
Property Value
Type | Description |
---|---|
string |
RootTransactionID
[Key] Links to ITransaction. The root transaction this gl posting is a child of
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.Transaction, "ID", SingleJoinType.One, "Root Transaction", "GL Postings From Root", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = true, PreventAutoConstraint = true)]
[RequiredNoDefaultIDValidation]
[EntityDescription("The root transaction set this gl posting belongs to.")]
Guid RootTransactionID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
SubAccountID
[Key] Links to IGLAccount. The sub gl account this posting is debiting or crediting
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.GLAccount, "ID", SingleJoinType.ZeroToOne, "Sub GL Account", "GL Postings From Sub Account", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The sub account for this gl posting.")]
Guid? SubAccountID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
SwitchInputtedSign
Indicates when a debit, or credit, amount is updated the default sign to use should be switched
Declaration
[EntityProperty(SQLType.Bit, false, "0")]
[EntityDescription("Indicates when a debit, or credit, amount is updated the default sign to use should be switched.")]
bool SwitchInputtedSign { get; set; }
Property Value
Type | Description |
---|---|
bool |
TransactionCodeGLEntryID
[Key] Links to ITransactionCodeGLEntry. The transaction code gl entry setting this posting was automatically created from.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.TransactionCodeGLEntry, "ID", SingleJoinType.ZeroToOne, "Transaction Code GL Entry", "GL Postings", DeleteWithRelationship = false, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false)]
[EntityDescription("The transaction code gl entry setting this posting was automatically created from.")]
Guid? TransactionCodeGLEntryID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
TransactionDate
[Key] The Transaction Date for this GL Posting. Normally this would be the same as the Transaction Date of the Transaction, but can be configured to hold other values such as the Settlement Date
Declaration
[EntityProperty(SQLType.DateTimeOffset, false, IsDate = true)]
[EntityDescription("The transaction date of this gl posting.")]
DateTimeOffset TransactionDate { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset |
TransferID
Links to this glposing being created as part of a transfer process
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityRelationship(EntityID.Transfer, "ID", SingleJoinType.ZeroToOne, "Transfer", "Transfer Postings", DeleteWithRelationship = false, PartOfParentSet = true, LinkToItemInSet = false, InheritPermissions = false, PreventAutoConstraint = true)]
[EntityDescription("Indicates this posting was auto-created as part of a transfer process.")]
Guid? TransferID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
TransferedOriginalItemID
Holds the original record that this record is transferring.
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntityDescription("Holds the original record that this record is transferring.")]
[EntitySelfRelationship("ID", SingleJoinType.ZeroToOne, "Original", "Transfers")]
Guid? TransferedOriginalItemID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
ValuEntryDebitCredit
Indicates if this value entry should be a debit or credit from the transaction value
Declaration
[EntityProperty(SQLType.SmallInt, true)]
[EntityDescription("Indicates if this value entry should be a debit or credit from the transaction value.")]
TransactionCodeGLEntryDbCr? ValuEntryDebitCredit { get; set; }
Property Value
Type | Description |
---|---|
TransactionCodeGLEntryDbCr? |
ValueEntryIndex
If the record doesn't have a TransactionCodeGLEntryID then it can have a value index here to bind it to a transaction value instead of the transction code gl entry doing so
Declaration
[EntityProperty(SQLType.SmallInt, true)]
[EntityDescription("If the record doesn't have a TransactionCodeGLEntryID then it can have a value index here to bind it to a transaction value instead of the transction code gl entry doing so")]
short? ValueEntryIndex { get; set; }
Property Value
Type | Description |
---|---|
short? |