To implement this hotfix, you must have a developer license.
You do not have to have rights to the data stores unless you have to perform data repair.
...
ValueEntry.SumCostsTillValuationDate(ValueEntry);
IF ValueEntry."Item Ledger Entry Quantity" <> 0 THEN BEGIN
// Delete the following lines.
"Unit Cost" :=
ROUND((ValueEntry."Cost Amount (Actual)" + ValueEntry."Cost Amount (Expected)") /
ValueEntry."Item Ledger Entry Quantity",
GLSetup."Unit-Amount Rounding Precision");
// End of the lines.
END ELSE BEGIN
Item.SETRANGE("Location Filter","Location Code");
Item.SETRANGE("Variant Filter","Variant Code");
CalcLastAdjEntryAvgCost(Item,AverageCost,AverageCostACY);
// Delete the following lines.
IF AverageCost <> 0 THEN
"Unit Cost" := ROUND(AverageCost,GLSetup."Unit-Amount Rounding Precision");
// End of the lines.
END;
END ELSE
...
...
ValueEntry.SumCostsTillValuationDate(ValueEntry);
IF ValueEntry."Item Ledger Entry Quantity" <> 0 THEN BEGIN
// Add the following lines.
AverageCost :=
(ValueEntry."Cost Amount (Actual)" + ValueEntry."Cost Amount (Expected)") /
ValueEntry."Item Ledger Entry Quantity";
IF AverageCost < 0 THEN
AverageCost := 0;
// End of the lines.
END ELSE BEGIN
Item.SETRANGE("Location Filter","Location Code");
Item.SETRANGE("Variant Filter","Variant Code");
CalcLastAdjEntryAvgCost(Item,AverageCost,AverageCostACY);
END;
// Add the following lines.
IF AverageCost <> 0 THEN
"Unit Cost" := ROUND(AverageCost,GLSetup."Unit-Amount Rounding Precision");
// End of the lines.
END ELSE
...