This note is to explain the routine which writes F0911.U (Units). This information can be used for debugging when there is issue in writing Account Ledger (F0911) File.
How units gets updated in:
Note: It is important to understand the AAIs for the related transactions. For further detail on AAIs, refer <Document 625475.1> - E1: 40: Automatic Accounting Instructions for Distribution
The Account Ledger (F0911) is written by the Master Business Function B0900049 - Journal Entry. G/L cache is created through F0911FSEditLine (F0911 Edit Line). This cache is to be used through F0911FSEndDoc (F0911 End Doc) in committing it to F0911. Unit (F0911.U) is to determined in calling F0911FSEditLine in various applications.
Though related Business Functions may vary, the detailed routines are more or less identical:
F0911FSEditLine is called
Units are written so long as F41001.UNGL - WriteUnits (Write Units to Journal Entries Y/N) for a specific Branch/Plant in [Branch/Plant Constants] though X4111Z1 - F4111EditLine(F4111 Edit Line).
Depending on the application the DMAAI validated may vary. Refer to <Document 625475.1> - E1: 40: Automatic Accounting Instructions for Distribution
The logic first checks Accounting Unit of Measure from Account Master (F0901). If it has value convert quantity for this UOM otherwise write it based on primary UOM.
Units updated through R42800 - Sales Update through B4200520 - GetSalesAAIsAndCallF0911EditLine (Sales Update, Get AAIs and Edit F0911 Entries).
Units are updated either through P4312 - PO Receipt or through P4314 - Voucher Match
Units are NOT written (of F0911.GLU) when specifying not to write units in the Branch/Plant constants (F41001.UNGL) and the inventory interface(F40205.IVI) is stock, non-stock, or direct (without a project number) ('Y','N', or 'D'). Inventory interfaces 'A' and 'B' always write F0911.GLU.