Advanced Price Management
Release: Advanced Price Management – 26.0.9671.53737
Description
This release delivers multiple critical bug fixes for the Advanced Price Management extension. Key improvements include correcting the sales amount calculation method assignment on sales order lines, fixing line discount percentage visibility when using APM price lists with manual pricing, and resolving French translation typos across all FR locales. These fixes ensure more accurate pricing computations and better user experience for Food & Beverage and distribution customers relying on advanced pricing logic.
User Stories
No User Story developed in this release.
Bugs
| Title | Description | Impact on previous version |
|---|---|---|
| [24108] – The calculation method is not correctly updated on sales order lines | When entering an item on a sales order line, the “Sales Amount Calculation” field (isaAPM_SalesAmountCalculation) remained set to “Standard” and was never updated if the item was entered after initial line insertion. Root cause: The field was only assigned during OnBeforeInsertEvent, and the subscriber did not fire correctly for all scenarios. Fix: (1) In NetPriceCalcSubscribers (Codeunit 8120285), the SalesLineOnBeforeInsert procedure was hardened with additional guards (not RunTrigger, Rec.IsTemporary()) to prevent unintended side effects. (2) A new event subscriber SalesLine_OnAfterValidateNo was added on the “No.” field validation to immediately set the calculation method when an item number is entered. (3) In PriceCalcisatech (Codeunit 8120268), the global discount percentage computation was corrected to use “Base Value” instead of “Net Value” as the divisor in UpdateSalesDiscountLineDetail. |
Medium risk: The discount percentage calculation divisor changed from “Net Value” to “Base Value”. Existing sales lines created before this fix will not be retroactively recalculated. New lines will use the corrected formula. |
| [24139] – The line discount % is not visible in the sales line but applied | When a sales order line had a manual price with a discount sourced from an APM price list, the line discount percentage was correctly applied internally but not displayed on the sales line page. Root cause: The RunBeforeValidateUnitPrice subscriber (on Sales Line “Unit Price” validation) did not write back the recalculated discount to the Line Discount % field. Fix: In PriceCalcisatech (Codeunit 8120268), a forced recalculation was added: Rec."Line Discount %" := UpdateSalesDiscountLineDetail() at the end of the RunBeforeValidateUnitPrice procedure, ensuring the discount value is visible after unit price validation. |
Low risk: The Line Discount % field is now explicitly recalculated on unit price validation. No breaking change expected for existing documents. |
| [24109] – Typo in displayed French text | French translation files contained typographical errors in the APM extension labels. Fix: Translation files for fr-FR, fr-BE, fr-CA, and fr-CH locales were corrected. | None: Translation-only change with no functional or data impact. |
Events
| Status | Type | Object Name | Event Name | Description |
|---|---|---|---|---|
| Obsolete | IntegrationEvent | isaAPM_PriceCalc. - isatech (Codeunit 8120268) | OnAfterCalcUnitAmountRoundingPrecision | Marked obsolete since version 26.0.0.0. Replaced by OnAfterCalculateUnitAmountRoundingPrecision(TempPriceCalculationBuffer: Record isaAPM_PriceCalculationBuffer temporary; var UnitAmountRoundingPrecision: Decimal). Callers should migrate to the replacement event. |