Table 55 "Invoice Posting Buffer"
Base Application · Microsoft.Finance.ReceivablesPayables
Across versions
- BC23present
- BC241 fields changed
- BC259 procedures added, 9 procedures removed
- BC262 procedures changed, 1 procedures added
- BC275 fields changed, 2 procedures added
- BC2812 fields changed, 9 procedures removed
- BC292 fields added, 1 procedures removed
- BC30unchanged
Neighbourhood 20 connected objects and pages
Base Application · Microsoft.Finance.ReceivablesPayables · BC23-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Caption | Invoice Posting Buffer |
| TableType | Temporary |
| DataClassification | CustomerContent |
Fields
Explanation: the field’s ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.
| No. | Name | Type | Explanation | Notes |
|---|---|---|---|---|
| 1 | Group ID | Text[1000] | Primary Key caption | DataClassification SystemMetadata |
| 2 | Type | Enum “Invoice Posting Line Type” | — | enum Enum 49 “Invoice Posting Line Type”; DataClassification SystemMetadata |
| 3 | G/L Account | Code[20] | — | TableRelation Table 15 “G/L Account” (G/L Account); DataClassification SystemMetadata |
| 4 | Global Dimension 1 Code | Code[20] | — | TableRelation Table 349 “Dimension Value” (“Dimension Value”.Code where(“Global Dimension No.” = const(1))); DataClassification SystemMetadata |
| 5 | Global Dimension 2 Code | Code[20] | — | TableRelation Table 349 “Dimension Value” (“Dimension Value”.Code where(“Global Dimension No.” = const(2))); DataClassification SystemMetadata |
| 6 | Job No. Δ BC24 | Code[20] | Project No. caption | TableRelation Table 167 “Job”; DataClassification SystemMetadata |
| 7 | Amount Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 8 | VAT Amount Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 10 | Gen. Bus. Posting Group | Code[20] | — | TableRelation Table 250 “Gen. Business Posting Group” (Gen. Business Posting Group); DataClassification SystemMetadata |
| 11 | Gen. Prod. Posting Group | Code[20] | — | TableRelation Table 251 “Gen. Product Posting Group” (Gen. Product Posting Group); DataClassification SystemMetadata |
| 12 | VAT Calculation Type | Enum “Tax Calculation Type” | — | enum Enum 254 “Tax Calculation Type”; DataClassification SystemMetadata |
| 14 | VAT Base Amount Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 17 | System-Created Entry | Boolean | — | DataClassification SystemMetadata |
| 18 | Tax Area Code | Code[20] | — | TableRelation Table 318 “Tax Area” (Tax Area); DataClassification SystemMetadata |
| 19 | Tax Liable | Boolean | — | DataClassification SystemMetadata |
| 20 | Tax Group Code | Code[20] | — | TableRelation Table 321 “Tax Group” (Tax Group); DataClassification SystemMetadata |
| 21 | Quantity Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 22 | Use Tax | Boolean | — | DataClassification SystemMetadata |
| 23 | VAT Bus. Posting Group | Code[20] | — | TableRelation Table 323 “VAT Business Posting Group” (VAT Business Posting Group); DataClassification SystemMetadata |
| 24 | VAT Prod. Posting Group | Code[20] | — | TableRelation Table 324 “VAT Product Posting Group” (VAT Product Posting Group); DataClassification SystemMetadata |
| 25 | Amount (ACY) Δ BC27 | Decimal | — | DataClassification SystemMetadata |
| 26 | VAT Amount (ACY) Δ BC27 | Decimal | — | DataClassification SystemMetadata |
| 29 | VAT Base Amount (ACY) Δ BC27 | Decimal | — | DataClassification SystemMetadata |
| 31 | VAT Difference Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 32 | VAT % Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 35 | VAT Base Before Pmt. Disc. Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 40 | Journal Templ. Name | Code[10] | Journal Template Name caption | DataClassification SystemMetadata |
| 147 | Spend Request No. + BC29 | Code[20] | — | |
| 148 | Spend Request Close + BC29 | Boolean | — | |
| 215 | Entry Description | Text[100] | — | DataClassification SystemMetadata |
| 480 | Dimension Set ID | Integer | — | TableRelation Table 480 “Dimension Set Entry” (Dimension Set Entry); not editable; DataClassification SystemMetadata |
| 1000 | Additional Grouping Identifier | Code[20] | — | DataClassification SystemMetadata |
| 1700 | Deferral Code | Code[10] | — | TableRelation Table 1700 “Deferral Template” (“Deferral Template”.“Deferral Code”); DataClassification SystemMetadata |
| 1701 | Deferral Line No. | Integer | — | DataClassification SystemMetadata |
| 5600 | FA Posting Date | Date | — | DataClassification SystemMetadata |
| 5601 | FA Posting Type | Enum “Purchase FA Posting Type” | — | enum Enum 5607 “Purchase FA Posting Type”; DataClassification SystemMetadata |
| 5602 | Depreciation Book Code | Code[10] | — | TableRelation Table 5611 “Depreciation Book” (Depreciation Book); DataClassification SystemMetadata |
| 5603 | Salvage Value Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 5605 | Depr. until FA Posting Date | Boolean | — | DataClassification SystemMetadata |
| 5606 | Depr. Acquisition Cost | Boolean | — | DataClassification SystemMetadata |
| 5609 | Maintenance Code | Code[10] | — | TableRelation Table 5626 “Maintenance”; DataClassification SystemMetadata |
| 5610 | Insurance No. | Code[20] | — | TableRelation Table 5628 “Insurance”; DataClassification SystemMetadata |
| 5611 | Budgeted FA No. | Code[20] | — | TableRelation Table 5600 “Fixed Asset” (Fixed Asset); DataClassification SystemMetadata |
| 5612 | Duplicate in Depreciation Book | Code[10] | — | TableRelation Table 5611 “Depreciation Book” (Depreciation Book); DataClassification SystemMetadata |
| 5613 | Use Duplication List | Boolean | — | DataClassification SystemMetadata |
| 5614 | Fixed Asset Line No. | Integer | — | DataClassification SystemMetadata |
| 6200 | Non-Deductible VAT % Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 6201 | Non-Deductible VAT Base Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 6202 | Non-Deductible VAT Amount Δ BC28 | Decimal | — | DataClassification SystemMetadata |
| 6203 | Non-Deductible VAT Base ACY Δ BC27 | Decimal | — | DataClassification SystemMetadata |
| 6204 | Non-Deductible VAT Amount ACY Δ BC27 | Decimal | — | DataClassification SystemMetadata |
| 6205 | Non-Deductible VAT Diff. Δ BC28 | Decimal | Non-Deductible VAT Difference caption | not editable |
| 12102 | No. of Fixed Asset Cards + BC27 | Integer | — | DataClassification SystemMetadata |
Keys
- key1: Group ID (clustered)
Events published
OnAfterBuildPrimaryKey(var InvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnUpdateOnAfterModify(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; FromInvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnAfterUpdate(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; var FromInvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnBeforeCalcDiscount(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; var IsHandled: Boolean)(integration)OnBeforeCalcDiscountNoVAT(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; var IsHandled: Boolean)(integration)OnBeforeUpdate(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; var FromInvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnUpdateOnBeforeModify(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; FromInvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnFillPrepmtAdjBufferOnBeforeAssignInvoicePostingBuffer(var PrepmtAdjInvoicePostingBuffer: Record "Invoice Posting Buffer"; InvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnAfterCopyToGenJnlLine(var GenJnlLine: Record "Gen. Journal Line"; InvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)- subscribers: Codeunit 4850 “AA Codes Posting Helper” OnAfterCopyToGenJnlLine
OnAfterCopyToGenJnlLineFA(var GenJnlLine: Record "Gen. Journal Line"; InvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)OnAfterAdjustRoundingForUpdate(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; TempInvoicePostingBufferRounding: Record "Invoice Posting Buffer" temporary)(integration)OnAfterApplyRoundingForFinalPosting(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; TempInvoicePostingBufferRounding: Record "Invoice Posting Buffer" temporary)(integration)OnBuildPrimaryKeyAfterDeferralCode(var GroupID: Text; InvoicePostingBuffer: Record "Invoice Posting Buffer")(integration)- subscribers: Codeunit 4850 “AA Codes Posting Helper” OnBuildPrimaryKeyAfterDeferralCode
OnCalcDiscountOnAfterUpdateVATAmount(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; PricesInclVAT: Boolean; DiscountAmount: Decimal; DiscountAmountACY: Decimal)(integration)OnBeforeClearVATFields(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; var IsHandled: Boolean)+ BC25 (integration)OnAfterSetAccount(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; AccountNo: Code[20])+ BC25 (integration)OnAfterReverseAmounts(var InvoicePostingBuffer: Record "Invoice Posting Buffer")+ BC25 (integration)OnBeforeUpdateEntryDescription(var InvoicePostingBuffer: Record "Invoice Posting Buffer"; var HeaderDescription: Text[100]; var LineDescription: Text[100]; var IsHandled: Boolean)+ BC26 (integration)
Procedures
CalcDiscount(PricesInclVAT: Boolean; DiscountAmount: Decimal; DiscountAmountACY: Decimal): Calculates and applies discount amounts to the invoice posting buffer.SetAccount(AccountNo: Code[20]; var TotalVAT: Decimal; var TotalVATACY: Decimal; var TotalAmount: Decimal; var TotalAmountACY: Decimal): Sets the G/L account and updates total amounts for posting buffer entry.SetAmounts(TotalVAT: Decimal; TotalVATACY: Decimal; TotalAmount: Decimal; TotalAmountACY: Decimal; VATDifference: Decimal; TotalVATBase: Decimal; TotalVATBaseACY: Decimal): Sets all amount fields in the invoice posting buffer from total calculations.CalcDiscountNoVAT(DiscountAmount: Decimal; DiscountAmountACY: Decimal)ReverseAmounts()SetAmountsNoVAT(TotalAmount: Decimal; TotalAmountACY: Decimal; VATDifference: Decimal)PreparePrepmtAdjBuffer(InvoicePostingBuffer: Record "Invoice Posting Buffer"; GLAccountNo: Code[20]; AdjAmount: Decimal; RoundingEntry: Boolean)Update(InvoicePostingBuffer: Record "Invoice Posting Buffer")Update(InvoicePostingBuffer: Record "Invoice Posting Buffer"; var InvDefLineNo: Integer; var DeferralLineNo: Integer)BuildPrimaryKey()PadField(TextField: Text; MaxLength: Integer): TextUpdateVATBase(var TotalVATBase: Decimal; var TotalVATBaseACY: Decimal)UpdateEntryDescription(CopyLineDescrToGLEntry: Boolean; LineNo: Integer; LineDescription: text[100]; HeaderDescription: Text[100])+ BC25 − BC25 + BC26 Δ BC26 − BC29ApplyRoundingForFinalPosting()Δ BC26ClearVATFields()CopyToGenJnlLine(var GenJnlLine: Record "Gen. Journal Line")CopyToGenJnlLineFA(var GenJnlLine: Record "Gen. Journal Line")
Plus 5 local procedures.
Relations
- G/L Account: TableRelation Table 15 “G/L Account”
- Job No.: TableRelation Table 167 “Job”
- Deferral Code: TableRelation Table 1700 “Deferral Template”
- Gen. Bus. Posting Group: TableRelation Table 250 “Gen. Business Posting Group”
- Gen. Prod. Posting Group: TableRelation Table 251 “Gen. Product Posting Group”
- Tax Area Code: TableRelation Table 318 “Tax Area”
- Tax Group Code: TableRelation Table 321 “Tax Group”
- VAT Bus. Posting Group: TableRelation Table 323 “VAT Business Posting Group”
- VAT Prod. Posting Group: TableRelation Table 324 “VAT Product Posting Group”
- Global Dimension 1 Code: TableRelation Table 349 “Dimension Value”
- Global Dimension 2 Code: TableRelation Table 349 “Dimension Value”
- Dimension Set ID: TableRelation Table 480 “Dimension Set Entry”
- Budgeted FA No.: TableRelation Table 5600 “Fixed Asset”
- Depreciation Book Code: TableRelation Table 5611 “Depreciation Book”
- Duplicate in Depreciation Book: TableRelation Table 5611 “Depreciation Book”
- Maintenance Code: TableRelation Table 5626 “Maintenance”
- Insurance No.: TableRelation Table 5628 “Insurance”
Extended by
- Table extension 4854 “AutoAcc Invoice Posting Buffer”
- Table extension 6281 “Sust. Invoice Posting Buffer”
- Table extension 6802 “WHT Invoice Posting Buffer”
Calls
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 6200 “Non-Deductible VAT” (6 calls:
AdjustRoundingForUpdate → AdjustRoundingForInvoicePostingBufferUpdate,ApplyRoundingForFinalPosting → ApplyRoundingForFinalPostingFromInvoicePostingBuffer,CalcDiscount → Calculate, …)
Recent changes
- 2026-07-31 #8959 Deliverable 638799: Spend Requests in Base App (main, BC30, feature)
Countries that replace it
Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "table", object_name: "Invoice Posting Buffer"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.