Performance slow with Standard Reports 322 and 113 in RTC

mattardmattard Member Posts: 4
edited 2013-01-30 in NAV Three Tier
Hi,

I am currently having performance issues with standard RTC report Aged Accounts Payable (Report 322). When running this report in RTC with the same filters as in classic the time it takes to run and generate the report is much longer than in classic.

I am having a similar issue with the Customer/Item Sales report (113).

About a month ago I had the same performance issue with the standard Inventory Valuation Report (1001) and I had found this article http://blogs.msdn.com/b/nav/archive/201 ... tc-ii.aspx where Jasminka Thunes had suggested to contact MS support for a redesigned standard report. This had solved my problem.

I was wondering if anyone knew whether both of these reports (322 and 113) were also redesigned by Microsoft and whether I should contact MS support for such redesigned reports.

Thanks in advance! :)

Comments

  • raveendran.sraveendran.s Member Posts: 119
    I suggest it is better to check with MS Support. I had a problem in R1001, i.e. after using system for few months, suddenly the report started telling the conenctivity is broken. When I discussed with them, they given me a new object, with that my problem was solved.
    --
    Regards,
    Raveendran.BS
  • JasminkaTJasminkaT Member, Microsoft Employee Posts: 34
    Hi,

    Report 322 is also redesigned, BUT this will only have effect when selecting NOT to view details.
    If you check PrintDetails option, then you are choosing to send all the records to RTC, and rendering many records (thousands and dusins of thousands) is what will make report preview(print) slow.
    Following code change will ensure quicker execution when PrintDetails option is NOT checked (rep 322 and 120, similar code change applies):

    Report 322:
    Vendor Ledger Entry - OnAfterGetRecord() trigger:
    Old Code:
    ...
    IF VendorLedgEntry.FINDSET(FALSE,FALSE) THEN
    REPEAT
    InsertTemp(VendorLedgEntry);
    UNTIL VendorLedgEntry.NEXT = 0;

    New Code:
    ...
    IF VendorLedgEntry.FINDSET(FALSE,FALSE) THEN
    REPEAT
    InsertTemp(VendorLedgEntry);
    UNTIL VendorLedgEntry.NEXT = 0;
    CurrReport.skip;

    OpenVendorLedgEntry - OnAfterGetRecord() trigger:
    Old Code:
    ...
    InsertTemp(OpenVendorLedgEntry);

    NewCode:
    ...
    InsertTemp(OpenVendorLedgEntry);
    CurrReport.SKIP;

    TempVendortLedgEntryLoop - OnAfterGetRecord() trigger:
    OldCode:
    ...
    TotalVendorLedgEntry[1]."Amount (LCY)" += VendorLedgEntryEndingDate."Remaining Amt. (LCY)";
    GrandTotalVendorLedgEntry[1]."Amount (LCY)" += VendorLedgEntryEndingDate."Remaining Amt. (LCY)";

    New Code:
    ...
    TotalVendorLedgEntry[1]."Amount (LCY)" += VendorLedgEntryEndingDate."Remaining Amt. (LCY)";
    GrandTotalVendorLedgEntry[1]."Amount (LCY)" += VendorLedgEntryEndingDate."Remaining Amt. (LCY)";
    If NOT PrintDetails then currreport.skip;
  • JasminkaTJasminkaT Member, Microsoft Employee Posts: 34
    As for report 113, add Currreport.skip in the very end of OnAfterGetrecord trigger of the Value Entry dataitem, as this dataitem is not used for dataoutput (no body section for this dataitem). This will make sure it is still processed for data calculation, but not sent to RTC
    (as it's not printed etiher).
  • johannajohanna Member Posts: 369
    Dear mattard & raveendran.s,

    Would you like to give me the new redesigned report 1001? :D
    Thank you.
    Best regards,

    Johanna
Sign In or Register to comment.