Codeunit "Sales-Post Prepayments"

ID 442
Namespace: Microsoft.Sales.Posting

Properties

Name Value
Permissions TableData "Sales Line" = rimd, TableData "Sales Invoice Header" = rimd, TableData "Sales Invoice Line" = rimd, TableData "Sales Cr.Memo Header" = rimd, TableData "Sales Cr.Memo Line" = rimd, TableData "General Posting Setup" = rimd
TableNo Table Microsoft.Sales.Document."Sales Header"

Methods

SetDocumentType

procedure SetDocumentType(DocumentType: Option)

Parameters

Name Type Description
DocumentType Option

Invoice

procedure Invoice(var SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"

CreditMemo

procedure CreditMemo(var SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"

CheckPrepmtDoc

procedure CheckPrepmtDoc(SalesHeader: Record "Sales Header", DocumentType: Option)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option

CheckOpenPrepaymentLines

procedure CheckOpenPrepaymentLines(SalesHeader: Record "Sales Header", DocumentType: Option): Boolean

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option

Returns

Type Description
Boolean

BuildInvLineBuffer

procedure BuildInvLineBuffer(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", DocumentType: Option, var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
DocumentType Option
PrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

GetCorrBalAccNo

procedure GetCorrBalAccNo(SalesHeader: Record "Sales Header", PositiveAmount: Boolean): Code[20]

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
PositiveAmount Boolean

Returns

Type Description
Code[20]

GetInvRoundingAccNo

procedure GetInvRoundingAccNo(CustomerPostingGroup: Code[20]): Code[20]

Parameters

Name Type Description
CustomerPostingGroup Code[20]

Returns

Type Description
Code[20]

FillInvLineBuffer

procedure FillInvLineBuffer(SalesHeader: Record "Sales Header", SalesLine: Record "Sales Line", var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
PrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

InitInvoiceRoundingLine

procedure InitInvoiceRoundingLine(SalesHeader: Record "Sales Header", TotalAmount: Decimal, var SalesLine: Record "Sales Line"): Boolean

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
TotalAmount Decimal
SalesLine Table Microsoft.Sales.Document."Sales Line"

Returns

Type Description
Boolean

UpdateVATOnLines

procedure UpdateVATOnLines(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line", DocumentType: Option)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
DocumentType Option

CalcVATAmountLines

procedure CalcVATAmountLines(var SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line", DocumentType: Option)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
DocumentType Option

SumPrepmt

procedure SumPrepmt(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line", var TotalAmount: Decimal, var TotalVATAmount: Decimal, var VATAmountText: Text[30])

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
TotalAmount Decimal
TotalVATAmount Decimal
VATAmountText Text[30]

GetSalesLines

procedure GetSalesLines(SalesHeader: Record "Sales Header", DocumentType: Option, var ToSalesLine: Record "Sales Line")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
ToSalesLine Table Microsoft.Sales.Document."Sales Line"

ApplyFilter

procedure ApplyFilter(SalesHeader: Record "Sales Header", DocumentType: Option, var SalesLine: Record "Sales Line")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
SalesLine Table Microsoft.Sales.Document."Sales Line"

PrepmtAmount

procedure PrepmtAmount(SalesLine: Record "Sales Line", DocumentType: Option): Decimal

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
DocumentType Option

Returns

Type Description
Decimal

UpdatePrepmtAmountOnSaleslines

procedure UpdatePrepmtAmountOnSaleslines(SalesHeader: Record "Sales Header", NewTotalPrepmtAmount: Decimal)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
NewTotalPrepmtAmount Decimal

PrepmtDocTypeToDocType

procedure PrepmtDocTypeToDocType(DocumentType: Option): Integer

Parameters

Name Type Description
DocumentType Option

Returns

Type Description
Integer

GetSalesLinesToDeduct

procedure GetSalesLinesToDeduct(SalesHeader: Record "Sales Header", var SalesLines: Record "Sales Line")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLines Table Microsoft.Sales.Document."Sales Line"

GetPreviewMode

procedure GetPreviewMode(): Boolean

Returns

Type Description
Boolean

GetSuppressCommit

procedure GetSuppressCommit(): Boolean

Returns

Type Description
Boolean

SetSuppressCommit

procedure SetSuppressCommit(NewSuppressCommit: Boolean)

Parameters

Name Type Description
NewSuppressCommit Boolean

SetPreviewMode

procedure SetPreviewMode(NewPreviewMode: Boolean)

Parameters

Name Type Description
NewPreviewMode Boolean

Events

OnAfterApplyFilter

[IntegrationEvent(False,False)]
local procedure OnAfterApplyFilter(var SalesLine: Record "Sales Line", SalesHeader: Record "Sales Header", DocumentType: Option)

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option

OnAfterBuildInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnAfterBuildInvLineBuffer(var PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer")

Parameters

Name Type Description
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

OnAfterCalcVATAmountLines

[IntegrationEvent(False,False)]
local procedure OnAfterCalcVATAmountLines(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line", DocumentType: Option, Currency: Record Currency)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
DocumentType Option
Currency Table Microsoft.Finance.Currency.Currency

OnAfterCheckPrepmtDoc

[IntegrationEvent(False,False)]
local procedure OnAfterCheckPrepmtDoc(SalesHeader: Record "Sales Header", DocumentType: Option, CommitIsSuppressed: Boolean, var ErrorMessageMgt: Codeunit "Error Message Management")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
CommitIsSuppressed Boolean
ErrorMessageMgt Codeunit System.Utilities."Error Message Management"

OnAfterCreateDimensions

[IntegrationEvent(False,False)]
local procedure OnAfterCreateDimensions(var SalesLine: Record "Sales Line", DefaultDimSource: List of [Dictionary of [Integer, Code[20]]])

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
DefaultDimSource List of [Dictionary of [Integer, Code[20]]]

OnAfterCreateLinesOnBeforeGLPosting

[IntegrationEvent(False,False)]
local procedure OnAfterCreateLinesOnBeforeGLPosting(var SalesHeader: Record "Sales Header", SalesInvHeader: Record "Sales Invoice Header", SalesCrMemoHeader: Record "Sales Cr.Memo Header", var TempPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer" temporary, DocumentType: Option, var LastLineNo: Integer)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesInvHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
TempPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
DocumentType Option
LastLineNo Integer

OnAfterFillInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnAfterFillInvLineBuffer(var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer", SalesLine: Record "Sales Line", CommitIsSuppressed: Boolean, SalesHeader: Record "Sales Header")

Parameters

Name Type Description
PrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
SalesLine Table Microsoft.Sales.Document."Sales Line"
CommitIsSuppressed Boolean
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnAfterInsertInvoiceRounding

[IntegrationEvent(False,False)]
local procedure OnAfterInsertInvoiceRounding(SalesHeader: Record "Sales Header", var PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", var TotalPrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer", var PrevLineNo: Integer)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
PrevLineNo Integer

OnAfterPostPrepayments

[IntegrationEvent(False,False)]
local procedure OnAfterPostPrepayments(var SalesHeader: Record "Sales Header", DocumentType: Option, CommitIsSuppressed: Boolean, var SalesInvoiceHeader: Record "Sales Invoice Header", var SalesCrMemoHeader: Record "Sales Cr.Memo Header", var CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
CommitIsSuppressed Boolean
SalesInvoiceHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

OnAfterPostPrepaymentsOnBeforeThrowPreviewModeError

[IntegrationEvent(False,False)]
local procedure OnAfterPostPrepaymentsOnBeforeThrowPreviewModeError(var SalesHeader: Record "Sales Header", var SalesInvHeader: Record "Sales Invoice Header", var SalesCrMemoHeader: Record "Sales Cr.Memo Header", var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line", PreviewMode: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesInvHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
GenJnlPostLine Codeunit Microsoft.Finance.GeneralLedger.Posting."Gen. Jnl.-Post Line"
PreviewMode Boolean

OnAfterPostBalancingEntry

[IntegrationEvent(False,False)]
local procedure OnAfterPostBalancingEntry(var GenJnlLine: Record "Gen. Journal Line", CustLedgEntry: Record "Cust. Ledger Entry", TotalPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", TotalPrepmtInvLineBufferLCY: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean, SalesHeader: Record "Sales Header")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"
CustLedgEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"
TotalPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufferLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnAfterPostCustomerEntry

[IntegrationEvent(False,False)]
local procedure OnAfterPostCustomerEntry(var GenJnlLine: Record "Gen. Journal Line", TotalPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", TotalPrepmtInvLineBufferLCY: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"
TotalPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufferLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean

OnAfterPostPrepmtInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnAfterPostPrepmtInvLineBuffer(var GenJnlLine: Record "Gen. Journal Line", PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean, var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean
GenJnlPostLine Codeunit Microsoft.Finance.GeneralLedger.Posting."Gen. Jnl.-Post Line"

OnAfterRoundAmounts

[IntegrationEvent(False,False)]
local procedure OnAfterRoundAmounts(SalesHeader: Record "Sales Header", var PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", var TotalPrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer", var TotalPrepmtInvLineBufLCY: Record "Prepayment Inv. Line Buffer")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

OnAfterSalesInvHeaderInsert

[IntegrationEvent(False,False)]
local procedure OnAfterSalesInvHeaderInsert(var SalesInvoiceHeader: Record "Sales Invoice Header", SalesHeader: Record "Sales Header", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesInvoiceHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
CommitIsSuppressed Boolean

OnAfterSalesInvLineInsert

[IntegrationEvent(False,False)]
local procedure OnAfterSalesInvLineInsert(var SalesInvLine: Record "Sales Invoice Line", SalesInvHeader: Record "Sales Invoice Header", PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesInvLine Table Microsoft.Sales.History."Sales Invoice Line"
SalesInvHeader Table Microsoft.Sales.History."Sales Invoice Header"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean

OnAfterSalesCrMemoHeaderInsert

[IntegrationEvent(False,False)]
local procedure OnAfterSalesCrMemoHeaderInsert(var SalesCrMemoHeader: Record "Sales Cr.Memo Header", SalesHeader: Record "Sales Header", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
CommitIsSuppressed Boolean

OnAfterSalesCrMemoLineInsert

[IntegrationEvent(False,False)]
local procedure OnAfterSalesCrMemoLineInsert(var SalesCrMemoLine: Record "Sales Cr.Memo Line", SalesCrMemoHeader: Record "Sales Cr.Memo Header", PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesCrMemoLine Table Microsoft.Sales.History."Sales Cr.Memo Line"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean

OnAfterUpdatePostedSalesDocument

[IntegrationEvent(False,False)]
local procedure OnAfterUpdatePostedSalesDocument(DocumentType: Option, DocumentNo: Code[20], CommitIsSuppressed: Boolean)

Parameters

Name Type Description
DocumentType Option
DocumentNo Code[20]
CommitIsSuppressed Boolean

OnAfterUpdateVATOnLines

[IntegrationEvent(False,False)]
local procedure OnAfterUpdateVATOnLines(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line", DocumentType: Option)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
DocumentType Option

OnBeforeCheckPrepmtDoc

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckPrepmtDoc(SalesHeader: Record "Sales Header", DocumentType: Option, CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
CommitIsSuppressed Boolean

OnBeforeCheckOpenPrepaymentLines

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckOpenPrepaymentLines(SalesHeader: Record "Sales Header", DocumentType: Option, var Found: Boolean, var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
Found Boolean
IsHandled Boolean

OnBeforeCreateLinesFromBuffer

[IntegrationEvent(False,False)]
local procedure OnBeforeCreateLinesFromBuffer(var SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var TempGlobalPrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer" temporary, var LineCount: Integer, var SalesInvHeader: Record "Sales Invoice Header", var SalesCrMemoHeader: Record "Sales Cr.Memo Header", var PostedDocTabNo: Integer, DocumentType: Option, var LastLineNo: Integer, GenJnlLineDocNo: Code[20], var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
TempGlobalPrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
LineCount Integer
SalesInvHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
PostedDocTabNo Integer
DocumentType Option
LastLineNo Integer
GenJnlLineDocNo Code[20]
IsHandled Boolean

OnBeforeInvoice

[IntegrationEvent(True,False)]
local procedure OnBeforeInvoice(var SalesHeader: Record "Sales Header", var Handled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
Handled Boolean

OnBeforeCreditMemo

[IntegrationEvent(True,False)]
local procedure OnBeforeCreditMemo(var SalesHeader: Record "Sales Header", var Handled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
Handled Boolean

OnBeforeFillInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnBeforeFillInvLineBuffer(var PrepaymentInvLineBuffer: Record "Prepayment Inv. Line Buffer", SalesHeader: Record "Sales Header", SalesLine: Record "Sales Line")

Parameters

Name Type Description
PrepaymentInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"

OnBeforeInsertExtendedText

[IntegrationEvent(False,False)]
local procedure OnBeforeInsertExtendedText(TabNo: Integer, DocNo: Code[20], GLAccNo: Code[20], DocDate: Date, LanguageCode: Code[10], var PrevLineNo: Integer)

Parameters

Name Type Description
TabNo Integer
DocNo Code[20]
GLAccNo Code[20]
DocDate Date
LanguageCode Code[10]
PrevLineNo Integer

OnBeforePostPrepayments

[IntegrationEvent(False,False)]
local procedure OnBeforePostPrepayments(var SalesHeader: Record "Sales Header", DocumentType: Option, CommitIsSuppressed: Boolean, PreviewMode: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
CommitIsSuppressed Boolean
PreviewMode Boolean

OnBeforeSalesInvHeaderInsert

[IntegrationEvent(False,False)]
local procedure OnBeforeSalesInvHeaderInsert(var SalesInvHeader: Record "Sales Invoice Header", SalesHeader: Record "Sales Header", CommitIsSuppressed: Boolean, GenJnlDocNo: Code[20])

Parameters

Name Type Description
SalesInvHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
CommitIsSuppressed Boolean
GenJnlDocNo Code[20]

OnBeforeSalesAssertPrepmtAmountNotMoreThanDocAmount

[IntegrationEvent(False,False)]
local procedure OnBeforeSalesAssertPrepmtAmountNotMoreThanDocAmount(var CustLedgEntry: Record "Cust. Ledger Entry", SalesHeader: Record "Sales Header", SalesLine: Record "Sales Line", var IsHandled: Boolean)

Parameters

Name Type Description
CustLedgEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
IsHandled Boolean

OnBeforeSalesInvLineInsert

[IntegrationEvent(False,False)]
local procedure OnBeforeSalesInvLineInsert(var SalesInvLine: Record "Sales Invoice Line", SalesInvHeader: Record "Sales Invoice Header", PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesInvLine Table Microsoft.Sales.History."Sales Invoice Line"
SalesInvHeader Table Microsoft.Sales.History."Sales Invoice Header"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean

OnBeforeSalesCrMemoHeaderInsert

[IntegrationEvent(False,False)]
local procedure OnBeforeSalesCrMemoHeaderInsert(var SalesCrMemoHeader: Record "Sales Cr.Memo Header", SalesHeader: Record "Sales Header", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
SalesHeader Table Microsoft.Sales.Document."Sales Header"
CommitIsSuppressed Boolean

OnBeforeSalesCrMemoLineInsert

[IntegrationEvent(False,False)]
local procedure OnBeforeSalesCrMemoLineInsert(var SalesCrMemoLine: Record "Sales Cr.Memo Line", SalesCrMemoHeader: Record "Sales Cr.Memo Header", PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
SalesCrMemoLine Table Microsoft.Sales.History."Sales Cr.Memo Line"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean

OnBeforePostCustomerEntry

[IntegrationEvent(False,False)]
local procedure OnBeforePostCustomerEntry(var GenJnlLine: Record "Gen. Journal Line", TotalPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", TotalPrepmtInvLineBufferLCY: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean, SalesHeader: Record "Sales Header", DocumentType: Option)

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"
TotalPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufferLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option

OnBeforeRunGenJnlPostLine

[IntegrationEvent(False,False)]
local procedure OnBeforeRunGenJnlPostLine(var GenJnlLine: Record "Gen. Journal Line")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

OnBeforeUpdateSalesDocument

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdateSalesDocument(var SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", DocumentType: Option, GenJnlLineDocNo: Code[20])

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
DocumentType Option
GenJnlLineDocNo Code[20]

OnBeforeUpdateDocNos

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdateDocNos(var SalesHeader: Record "Sales Header", DocumentType: Option, var DocNo: Code[20], var NoSeriesCode: Code[20], var ModifyHeader: Boolean, IsPreviewMode: Boolean, var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
DocNo Code[20]
NoSeriesCode Code[20]
ModifyHeader Boolean
IsPreviewMode Boolean
IsHandled Boolean

OnBeforeUpdatePostedSalesDocument

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdatePostedSalesDocument(var CustLedgerEntry: Record "Cust. Ledger Entry", var SalesInvoiceHeader: Record "Sales Invoice Header", var SalesCrMemoHeader: Record "Sales Cr.Memo Header", DocumentType: Option, var IsHandled: Boolean, DocumentNo: Code[20])

Parameters

Name Type Description
CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"
SalesInvoiceHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
DocumentType Option
IsHandled Boolean
DocumentNo Code[20]

OnBeforePostPrepmtInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnBeforePostPrepmtInvLineBuffer(var GenJnlLine: Record "Gen. Journal Line", PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean)

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"
PrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean

OnCalcVATAmountLinesOnBeforeUpdateLines

[IntegrationEvent(False,False)]
local procedure OnCalcVATAmountLinesOnBeforeUpdateLines(var NewAmount: Decimal, Currency: Record Currency, SalesHeader: Record "Sales Header", var IsHandled: Boolean)

Parameters

Name Type Description
NewAmount Decimal
Currency Table Microsoft.Finance.Currency.Currency
SalesHeader Table Microsoft.Sales.Document."Sales Header"
IsHandled Boolean

OnCodeOnAfterBuildInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnCodeOnAfterBuildInvLineBuffer(var TempVATAmountLine: Record "VAT Amount Line" temporary, var TempPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer" temporary)

Parameters

Name Type Description
TempVATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
TempPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

OnCodeOnBeforeCalcAndUpdateVATAmountLines

[IntegrationEvent(False,False)]
local procedure OnCodeOnBeforeCalcAndUpdateVATAmountLines(var SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var TempPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer" temporary, DocumentType: Option, var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
TempPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
DocumentType Option
IsHandled Boolean

OnCodeOnBeforePostCustomerEntry

[IntegrationEvent(False,False)]
local procedure OnCodeOnBeforePostCustomerEntry(var SalesHeader: Record "Sales Header", var TempPrepaymentInvLineBuffer: Record "Prepayment Inv. Line Buffer" temporary)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
TempPrepaymentInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

OnCodeOnBeforePostBalancingEntry

[IntegrationEvent(False,False)]
local procedure OnCodeOnBeforePostBalancingEntry(var SalesHeader: Record "Sales Header", var TempPrepaymentInvLineBuffer: Record "Prepayment Inv. Line Buffer" temporary)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
TempPrepaymentInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

OnCodeOnBeforeWindowOpen

[IntegrationEvent(False,False)]
local procedure OnCodeOnBeforeWindowOpen(var SalesHeader: Record "Sales Header", DocumentType: Option)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option

OnCodeOnAfterCalcShouldSetPendingPrepaymentStatus

[IntegrationEvent(False,False)]
local procedure OnCodeOnAfterCalcShouldSetPendingPrepaymentStatus(var SalesHeader: Record "Sales Header", var SalesInvoiceHeader: Record "Sales Invoice Header", var SalesCrMemoHeader: Record "Sales Cr.Memo Header", DocumentType: Option, PreviewMode: Boolean, var ShouldSetPendingPrepaymentStatus: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesInvoiceHeader Table Microsoft.Sales.History."Sales Invoice Header"
SalesCrMemoHeader Table Microsoft.Sales.History."Sales Cr.Memo Header"
DocumentType Option
PreviewMode Boolean
ShouldSetPendingPrepaymentStatus Boolean

OnInsertExtendedTextOnBeforeSalesInvLineInsert

[IntegrationEvent(False,False)]
local procedure OnInsertExtendedTextOnBeforeSalesInvLineInsert(var SalesInvoiceLine: Record "Sales Invoice Line", TabNo: Integer, DocNo: Code[20], NextLineNo: Integer, var TempExtendedTextLine: Record "Extended Text Line" temporary, SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesInvoiceLine Table Microsoft.Sales.History."Sales Invoice Line"
TabNo Integer
DocNo Code[20]
NextLineNo Integer
TempExtendedTextLine Table Microsoft.Foundation.ExtendedText."Extended Text Line"
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnInsertExtendedTextOnBeforeSalesCrMemoLineInsert

[IntegrationEvent(False,False)]
local procedure OnInsertExtendedTextOnBeforeSalesCrMemoLineInsert(var SalesCrMemoLine: Record "Sales Cr.Memo Line", TabNo: Integer, DocNo: Code[20], NextLineNo: Integer, var TempExtendedTextLine: Record "Extended Text Line" temporary, SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesCrMemoLine Table Microsoft.Sales.History."Sales Cr.Memo Line"
TabNo Integer
DocNo Code[20]
NextLineNo Integer
TempExtendedTextLine Table Microsoft.Foundation.ExtendedText."Extended Text Line"
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnPostBalancingEntryOnBeforeGenJnlPostLineRunWithCheck

[IntegrationEvent(False,False)]
local procedure OnPostBalancingEntryOnBeforeGenJnlPostLineRunWithCheck(var GenJnlLine: Record "Gen. Journal Line", CustLedgEntry: Record "Cust. Ledger Entry", TotalPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer", TotalPrepmtInvLineBufferLCY: Record "Prepayment Inv. Line Buffer", CommitIsSuppressed: Boolean, SalesHeader: Record "Sales Header", DocType: Enum "Gen. Journal Document Type")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"
CustLedgEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"
TotalPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufferLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
CommitIsSuppressed Boolean
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocType Enum Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Document Type"

OnRoundAmountsOnBeforeIncrAmounts

[IntegrationEvent(False,False)]
local procedure OnRoundAmountsOnBeforeIncrAmounts(SalesHeader: Record "Sales Header", var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer", var TotalPrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer", var TotalPrepmtInvLineBufLCY: Record "Prepayment Inv. Line Buffer")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
PrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBuf Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"

OnUpdateSalesDocumentOnBeforeModifyCreditMemoSalesLine

[IntegrationEvent(False,False)]
local procedure OnUpdateSalesDocumentOnBeforeModifyCreditMemoSalesLine(var SalesLine: Record "Sales Line")

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"

OnUpdateSalesDocumentOnBeforeModifyInvoiceSalesLine

[IntegrationEvent(False,False)]
local procedure OnUpdateSalesDocumentOnBeforeModifyInvoiceSalesLine(var SalesLine: Record "Sales Line")

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"

OnUpdateVATOnLinesOnAfterGetRemainder

[IntegrationEvent(False,False)]
local procedure OnUpdateVATOnLinesOnAfterGetRemainder(var VATAmountLineRemainder: Record "VAT Amount Line", var RemainderExists: Boolean)

Parameters

Name Type Description
VATAmountLineRemainder Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
RemainderExists Boolean

OnUpdateVATOnLinesOnAfterVATAmountLineGet

[IntegrationEvent(False,False)]
local procedure OnUpdateVATOnLinesOnAfterVATAmountLineGet(var VATAmountLine: Record "VAT Amount Line")

Parameters

Name Type Description
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"

OnUpdateVATOnLinesOnBeforeSalesLineModify

[IntegrationEvent(False,False)]
local procedure OnUpdateVATOnLinesOnBeforeSalesLineModify(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var TempVATAmountLineRemainder: Record "VAT Amount Line", NewAmount: Decimal, NewAmountIncludingVAT: Decimal, NewVATBaseAmount: Decimal)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"
TempVATAmountLineRemainder Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"
NewAmount Decimal
NewAmountIncludingVAT Decimal
NewVATBaseAmount Decimal

OnBeforeThrowPreviewError

[IntegrationEvent(False,False)]
local procedure OnBeforeThrowPreviewError(SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnBeforeCheckSalesLineIsNegative

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckSalesLineIsNegative(SalesLine: Record "Sales Line", var IsHandled: Boolean)

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
IsHandled Boolean

OnBeforeGetSalesLines

[IntegrationEvent(False,False)]
local procedure OnBeforeGetSalesLines(SalesHeader: Record "Sales Header", DocumentType: Option, var ToSalesLine: Record "Sales Line", var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
ToSalesLine Table Microsoft.Sales.Document."Sales Line"
IsHandled Boolean

OnBeforeUpdatePrepmtAmountOnSaleslines

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdatePrepmtAmountOnSaleslines(SalesHeader: Record "Sales Header", NewTotalPrepmtAmount: Decimal, var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
NewTotalPrepmtAmount Decimal
IsHandled Boolean

OnGetSalesLinesOnBeforeInsertToSalesLine

[IntegrationEvent(False,False)]
local procedure OnGetSalesLinesOnBeforeInsertToSalesLine(var ToSalesLine: Record "Sales Line")

Parameters

Name Type Description
ToSalesLine Table Microsoft.Sales.Document."Sales Line"

OnCodeOnBeforeInsertPostedHeaders

[IntegrationEvent(False,False)]
local procedure OnCodeOnBeforeInsertPostedHeaders(var SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnAfterUpdateDocNos

[IntegrationEvent(False,False)]
local procedure OnAfterUpdateDocNos(var SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"

OnBuildInvLineBufferOnBeforeFillInvLineBuffer

[IntegrationEvent(False,False)]
local procedure OnBuildInvLineBufferOnBeforeFillInvLineBuffer(var SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
SalesLine Table Microsoft.Sales.Document."Sales Line"

OnCodeOnAfterPostingDescriptionSet

[IntegrationEvent(False,False)]
local procedure OnCodeOnAfterPostingDescriptionSet(var SalesHeader: Record "Sales Header", DocumentType: Option, var PostingDescription: Text[100])

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option
PostingDescription Text[100]

OnBeforePostCustomerEntryProcedure

[IntegrationEvent(False,False)]
local procedure OnBeforePostCustomerEntryProcedure(var SalesHeader: Record "Sales Header", TotalPrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer" temporary, TotalPrepmtInvLineBufferLCY: Record "Prepayment Inv. Line Buffer", DocumentType: Option, PostingDescription: Text[100], DocType: Enum "Gen. Journal Document Type", DocNo: Code[20], ExtDocNo: Text[35], SrcCode: Code[10], PostingNoSeriesCode: Code[20], CalcPmtDisc: Boolean, var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line", var IsHandled: Boolean)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
TotalPrepmtInvLineBuffer Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
TotalPrepmtInvLineBufferLCY Table Microsoft.Finance.ReceivablesPayables."Prepayment Inv. Line Buffer"
DocumentType Option
PostingDescription Text[100]
DocType Enum Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Document Type"
DocNo Code[20]
ExtDocNo Text[35]
SrcCode Code[10]
PostingNoSeriesCode Code[20]
CalcPmtDisc Boolean
GenJnlPostLine Codeunit Microsoft.Finance.GeneralLedger.Posting."Gen. Jnl.-Post Line"
IsHandled Boolean

OnBeforePrepmtAmount

[IntegrationEvent(False,False)]
local procedure OnBeforePrepmtAmount(var SalesLine: Record "Sales Line", DocumentType: Option, var Result: Decimal, var IsHandled: Boolean)

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
DocumentType Option
Result Decimal
IsHandled Boolean

OnInsertVATAmountOnBeforeInsert

[IntegrationEvent(False,False)]
local procedure OnInsertVATAmountOnBeforeInsert(var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line")

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"

OnFindVATAmountLineOnAfterSetFilters

[IntegrationEvent(False,False)]
local procedure OnFindVATAmountLineOnAfterSetFilters(var SalesLine: Record "Sales Line", var VATAmountLine: Record "VAT Amount Line")

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"
VATAmountLine Table Microsoft.Finance.VAT.Calculation."VAT Amount Line"

OnCodeOnBeforeCheckPrepmtDoc

[IntegrationEvent(False,False)]
local procedure OnCodeOnBeforeCheckPrepmtDoc(var SalesHeader: Record "Sales Header", var DocumentType: Option)

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
DocumentType Option

OnAfterGetPrepmtAccNo

[IntegrationEvent(False,False)]
local procedure OnAfterGetPrepmtAccNo(GenPostingSetup: Record "General Posting Setup", var PrepmtAccNo: Code[20])

Parameters

Name Type Description
GenPostingSetup Table Microsoft.Finance.GeneralLedger.Setup."General Posting Setup"
PrepmtAccNo Code[20]

OnAfterGetCorrBalAccNo

[IntegrationEvent(False,False)]
local procedure OnAfterGetCorrBalAccNo(SalesHeader: Record "Sales Header", PositiveAmount: Boolean, var BalAccNo: Code[20])

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"
PositiveAmount Boolean
BalAccNo Code[20]

See also