Array Showing wrong Data

Hi

I have below code . In array Qty[1] it is showing 0 whereas in OQty it is showing correct value

ILE is Item Ledger Entry with DataType Record.


ILE[1].SETRANGE("Posting Date",0D,CALCDATE('-1D',StDt));
IF ILE[1].FINDFIRST THEN REPEAT

ILE[1].CALCFIELDS("Cost Amount (Expected)","Cost Amount (Actual)");
Qty[1] += ILE[1].Quantity;
OQty += ILE[1].Quantity;

END;
UNTIL ILE[1].NEXT=0;

Answers

  • NavSolutionNavSolution Member Posts: 36
    Please Share Screen Shot of your Code.
  • navuser1navuser1 Member Posts: 1,329
    IF ILE[1].FINDFIRST THEN REPEAT

    Never use FINDFIRST with REPEAT UNTIL
    Now or Never
  • navuser1navuser1 Member Posts: 1,329
    please share your code
    Now or Never
  • NavSolutionNavSolution Member Posts: 36
    It Is Not good to Use FindFirst With Repeat..Until , But Its Not Problem.
  • Slawek_GuzekSlawek_Guzek Member Posts: 1,690
    If this is the EXACT code
    Qty[1] += ILE[1].Quantity;
    OQty += ILE[1].Quantity;
    
    and you have Qty[1] not the same as OQty then I would rather expect a mistake like looking in debugger at wrong variable.. Happens sometimes. Or using global Qty array and not clearing the value before loop.

    Are you sure you have the number one in the Qty[1] += ... and not l (small L letter) ?

    If Qty array is global then add this
    Qty[1] := 0;
    
    before loop.
    Slawek Guzek
    Dynamics NAV, MS SQL Server, Wherescape RED;
    PRINCE2 Practitioner - License GR657010572SG
    GDPR Certified Data Protection Officer - PECB License DPCDPO1025070-2018-03
Sign In or Register to comment.