code change · featureSales & Receivablesofficial - Microsoftreviewed - checked by Opus

#10513 [Extensibility Request] issue 30270: expose JobPostLine before calculating totals

Sales invoice posting exposes a new event that provides access to the Job Post-Line instance before calculating totals, enabling extensions to interact with job data during the posting process.

Pull request · merged into main (BC30) on 2026-09-18 by AleksandricMarko · 9 files (+45 -1), 9 AL · feature · tier official · reviewed (checked by Opus)

What changed

  • New event OnPostLinesOnBeforeCalcSums in Sales Post Invoice Events codeunit
  • Event fires before TempInvoicePostingBuffer.CalcSums in the PostLines method
  • Provides subscribers with posting context and active Job Post-Line instance
  • Implemented across all localization layers (W1, APAC, BE, ES, FI, IT, NA, RU)
  • Allows extensions to access job data without changing existing procedure signatures

AL objects touched

  • Codeunit 815 “Sales Post Invoice”, Base Application: modified
  • Codeunit 825 “Sales Post Invoice Events”, Base Application: modified
  • src/Layers/BE/BaseApp/Sales/Posting/SalesPostInvoice.Codeunit.al: modified, not in the BC30 snapshot
  • src/Layers/ES/BaseApp/Sales/Posting/SalesPostInvoice.Codeunit.al: modified, not in the BC30 snapshot
  • src/Layers/FI/BaseApp/Sales/Posting/SalesPostInvoice.Codeunit.al: modified, not in the BC30 snapshot
  • src/Layers/RU/BaseApp/Sales/Posting/SalesPostInvoice.Codeunit.al: modified, not in the BC30 snapshot

Context

  • Work items: AB#647451
  • Labels: Team: SCM, event-request
  • Systems: sales
  • From the description: “Extensions need access to the active Job Post-Line instance while sales invoice posting still retains its prepared job data.”

Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).