FA Ledger Entry adjusted by Post Inventory to G/L batch job

DeSpDeSp Member Posts: 105
edited 2007-09-24 in Navision Attain
Unfortunately I can't say for sure that is not a local functionality issue (we use Navision 3.60 RU), just hope it is not.

Let's assume that there is some FA, that was initially built (acquisitioned) from some material, i.e. there was Negative Adjmt. Item Ledger Entry reffered to this FA through FA No. field. This Item Ledger Entry is applied to some Purchase Item Ledger Entry. Then this FA was released by FA Release Act. Adjust Cost - Item Entries batch job adjusted this Negative Adjmt. Item Ledger Entry - new adjustment value entry was inserted so the total Cost Amount (Actual) value in Item Ledger Entry was changed. Then Post Inventory Cost to G/L batch job posted cost amount value of this new adjustment value entry and executed the following code:
PostInvtPostBuf()
[
...
      IF (GlobalInvtPostBuf."FA No." <> '') AND (GlobalInvtPostBuf."FA Entry No." <> 0 ) AND
         (GlobalInvtPostBuf."Account Type" = GlobalInvtPostBuf."Account Type"::"Inventory Adjmt.") THEN BEGIN
        IF FADepreciationBook.GET(GlobalInvtPostBuf."FA No.",GlobalInvtPostBuf."Depreciation Book Code") THEN BEGIN
          FAPostingGroup.GET(FADepreciationBook."FA Posting Group");
          GenJnlLine."Account No." := FAPostingGroup."Acquisition Cost Account";
        END;

        FALedgerEntry.RESET;
        FALedgerEntry.SETRANGE("Entry No.", GlobalInvtPostBuf."FA Entry No.");
        IF FALedgerEntry.FIND('-') THEN BEGIN
          FALedgerEntry.Amount := FALedgerEntry.Amount + GenJnlLine.Amount;
          FALedgerEntry."Debit Amount" := FALedgerEntry.Amount;
          FALedgerEntry."Credit Amount" := 0;
          FALedgerEntry."Original Currency Code" := GenJnlLine."Currency Code";
          FALedgerEntry."Original Amount" := FALedgerEntry.Amount;
          FALedgerEntry."Original Debit Amount" := FALedgerEntry.Amount;
          FALedgerEntry."Original Credit Amount" := 0;
          FALedgerEntry."Amount (LCY)" := FALedgerEntry.Amount;
          FALedgerEntry."Need Cost Posted to G/L" := FALSE;
          FALedgerEntry.MODIFY;

          FALedgerEntry2.RESET;
          FALedgerEntry2.SETRANGE("FA No.",GlobalInvtPostBuf."FA No.");
          FALedgerEntry2.SETRANGE("Need Cost Posted to G/L",TRUE);
          IF NOT FALedgerEntry2.FIND('-') THEN BEGIN
            FA.GET(FALedgerEntry."FA No.");
            FA.Blocked := FALSE;
            FA.MODIFY;
          END;
        END;
      END;
...
]

As it could be seen from this code, the first FA Ledger Entry (which is acquisition) is modified with new cost amount value (new adjustment value entry), but this FA was released earlier with old amount (release FA Ledger Entry). The result is that in FA Ledger Entry table we now have two related operations with different amounts.

Is it a correct situation?
Any suggestions would be very much appreciated.

Thanks in advance.
Nil desperandum

Comments

  • ara3nara3n Member Posts: 9,256
    This looks like a localization. In W1, there is no link between Item and Fixed Asset.

    The code is trying to keep the cost of Item Ledger and FA Ledger in sync.

    I'm guessing there must be a periodic activity that would update the Disposal entries, and make the necessary gl transactions, but is a wild guess.
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • DeSpDeSp Member Posts: 105
    'm guessing there must be a periodic activity that would update the Disposal entries, and make the necessary gl transactions, but is a wild guess.

    Thanks for your guess, ara3n, but I can't find any.
    Nil desperandum
Sign In or Register to comment.