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 Posts: 36Member
    Please Share Screen Shot of your Code.
  • navuser1navuser1 Posts: 1,233Member
    IF ILE[1].FINDFIRST THEN REPEAT

    Never use FINDFIRST with REPEAT UNTIL
    Now or Never
  • navuser1navuser1 Posts: 1,233Member
    please share your code
    Now or Never
  • NavSolutionNavSolution Posts: 36Member
    It Is Not good to Use FindFirst With Repeat..Until , But Its Not Problem.
  • Slawek_GuzekSlawek_Guzek Posts: 1,595Member
    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.