Uploaded image for project: 'mod-invoice'
  1. mod-invoice
  2. MODINVOICE-480

Batch voucher export hangs at 'Pending' indefinitely for batches with multiple vouchers, no export file produced

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • P1
    • Resolution: Done
    • None
    • 5.6.3
    • ACQ Sprint 166
    • 3
    • Thunderjet
    • Orchid (R1 2023) Service Patch #1
    • Yes
    • Approved at May 30
    • !!!ALL!!!
    • Legitimate regression
    • Orchid (R1 2023)

    Description

      Overview: Batch voucher export in Orchid hangs at 'Pending' indefinitely for multiple voucher export and does not produce an export file (nor an error).
      Steps to Reproduce:

      1. Log into FOLIO Orchid as a user with Invoice creation, approval, payment and batch voucher export permission
      2. Select the Invoices app.
      3. Create, approve and pay multiple invoices with 'Export to accounting' selected.
      4. From Invoices > Actions select Batch Voucher Export
      5. Select a Batch group (FOLIO default) and > Run manual export.

      Expected Results: Export status enters Pending, then progresses to Generated - with a downloadable export file generated and available.
      Actual Results: Export status enters Pending and remains so indefinitely. No export file generated or available, no errors reported. (Cannot subsequently process vouchers for payment.)

      Additional Information:

      • Reproduced in folio-orchid.dev.folio.org environment.
      • Single voucher/invoice export generates a downloadable file OK.
      • Same simple invoices created for successful single voucher/invoice export were created for multiple voucher export.
      • Manual export only attempted. No schedule set in Batch group config.
      • Export format set to XML

      URL: https://folio-orchid.dev.folio.org/invoice/voucher-export?exportToAccounting=true&limit=50&offset=0
      Interested parties:
      cc: kgambrell , lbraginsky 

       

      CSP justification

      Describe issue impact on business

      This service is what allows a library to export financial activity to an accounts payable department. Without this funcitonality it would not be possible for libraries to pay vendors in a timely manner. Late payments could result in additional costs incurred by the library, late fees, breach of contract etc.

      What institutions are affected? (field “Effected Institutions” in Jira to be populated)

      All

      What is the workaround if exists?

      Approve 1 invoice at a time and export 1 voucher at a time. Not a reasonable workaround for libraries that approve 100s of invoices for multiple vendors per month

      What areas will be impacted by fix (i.e. what areas need to be retested)

      • Run batch voucher export
      • Upload batch voucher export to ftp
      • Download batch voucher export file from UI

      Brief explanation of technical implementation and the level of effort (in workdays) and technical risk (low/medium/high)

      1 day work (JIRAs)
      Negative case fixed by avoiding NPE inside error handler.
      Positive case (with more than 1 invoice) fixed by encoding URL before making request for retrieving invoice lines as part of batch voucher export flow

      Low technical risk - This fix involves a change to logic that is only used for batch voucher export. This functionality occurs at the end of the workflow and thus testing can be very targeted.

      Brief explanation of testing required and level of effort (in workdays). Provide test plan agreed with by QA Manager and PO.

      TBD - 0.5 days work

      Test plan:

      Each scenario where the particular code would be triggered will need to be tested with >1 records of the appropriate type. Test rails test cases will be designed for each scenario and the test plan is to complete each of these test cases successfully. One for >1 voucher of the same vendor and One for >1 voucher with different vendors but assigned to the same batch group

      The process will be:

      Tests

      What is the roll back plan in case the fix does not work?

      The fix will be implemented by a patch version of <<module>> and an update to platform-complete to depend on the newly released patch version. If the fix doesn't work / causes issues the roll back will be a further patch version of <<module>> with the code changes reverted, and a further update to platform-complete to depend on the patch version with the reverted changes

      TestRail: Results

        Attachments

          1. Batch_voucher_export_for_different_vendors_(Snapshot).mp4
            4.68 MB
          2. Batch_voucher_export_for_one_vendor_(Snapshot).mp4
            6.36 MB
          3. C353217.mp4
            6.73 MB
          4. C396358.mp4
            6.04 MB
          5. C396367.mp4
            6.80 MB
          6. C396369.mp4
            8.01 MB
          7. multi-voucher-batch-export.PNG
            multi-voucher-batch-export.PNG
            62 kB
          8. Voucher_export_(Orchid).mp4
            5.55 MB

          Issue Links

            Activity

              People

                dennisbridges Dennis Bridges
                gerardClifton Gerard Clifton
                Votes:
                0 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases