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.
...
ItemJnlLine.Subcontracting := TRUE;
ItemJnlLine."Quantity (Base)" := CalcBaseQty("No.","Unit of Measure Code",QtyToBeReceived);
ItemJnlLine."Invoiced Qty. (Base)" := CalcBaseQty("No.","Unit of Measure Code",QtyToBeInvoiced);
// Delete the following lines.
ItemJnlLine."Unit Cost" := "Unit Cost" * Quantity / CalcBaseQty("No.","Unit of Measure Code",Quantity);
ItemJnlLine."Unit Cost (ACY)" := "Unit Cost";
// End of the deleted lines.
ItemJnlLine."Output Quantity (Base)" := ItemJnlLine."Quantity (Base)";
ItemJnlLine."Output Quantity" := QtyToBeReceived;
ItemJnlLine."Entry Type" := ItemJnlLine."Entry Type"::Output;
...
...
ItemJnlLine.Subcontracting := TRUE;
ItemJnlLine."Quantity (Base)" := CalcBaseQty("No.","Unit of Measure Code",QtyToBeReceived);
ItemJnlLine."Invoiced Qty. (Base)" := CalcBaseQty("No.","Unit of Measure Code",QtyToBeInvoiced);
// Add the following lines.
ItemJnlLine."Unit Cost" := "Unit Cost (LCY)" * Quantity / CalcBaseQty("No.","Unit of Measure Code",Quantity);
ItemJnlLine."Unit Cost (ACY)" := "Unit Cost" * Quantity / CalcBaseQty("No.","Unit of Measure Code",Quantity);
// End of the added lines.
ItemJnlLine."Output Quantity (Base)" := ItemJnlLine."Quantity (Base)";
ItemJnlLine."Output Quantity" := QtyToBeReceived;
ItemJnlLine."Entry Type" := ItemJnlLine."Entry Type"::Output;
...