Details
-
Story
-
Status: Open (View Workflow)
-
P3
-
Resolution: Unresolved
-
None
-
None
-
-
8
-
Folijet
-
Not Scheduled
Description
Purpose: Some EDIFACT invoices may contain multiple adjustments at the invoice or invoice line level, In that case, the qualifier may be in the field above the amount, rather than in the same field. Field mapping profiles must include syntax for such qualifiers as this.
Current workaround: Mainly affects adjustments. Add the adjustment data manually after the rest of the invoice is created via import
Example from EDI:
ALC+C++++G74::28 (G74 = Service charge)
MOA+8:6.54
ALC+C++++E51::28 (E51 = Postage/shipping)
MOA+8:117.52
As a staff person importing EDIFACT invoices
I want to be able to multiple types of charges and allowances at the Invoice and Invoice line level
So that I can load the data properly
Scenarios
- Scenario 1
- Given the EDIFACT invoice
- When multiple allowances or charges are found at the invoice level (either at the top or bottom of the EDIFACT invoice)
- Then map them as separate adjustments in ways that allow the various amounts and adjustment types to be associated with each other
- Scenario 2
- Given the EDIFACT invoice
- When multiple allowances or charges are found at the invoice line level
- Then map them as separate adjustments in ways that allow the various amounts and adjustment types to be associated with each other
- Scenario 3
- Ensure this story passes Accessibility testing
- Scenario 4
- Ensure automated testing coverage for this new code is 80% plus and confirm with screenshot
See attached files:
- 20201205072029.TAMU-SER-PRINT.edi has multiple invoice level adjustments
- 32500720201214.edi has invoice line level Tax or Invoice level tax, and Invoice level shipping
- 32500720201214.edi.docx shows the difference at the bottom of the invoice
Caused by: java.lang.IllegalArgumentException: The specified mapping expression 'amount' is invalid
at org.folio.processing.mapping.mapper.reader.record.edifact.EdifactRecordReader.readSingleFieldValue(EdifactRecordReader.java:292) ~[mod-invoice-fat.jar:?]
at org.folio.processing.mapping.mapper.reader.record.edifact.EdifactRecordReader.read(EdifactRecordReader.java:201) ~[mod-invoice-fat.jar:?]
at org.folio.processing.mapping.mapper.reader.record.edifact.EdifactRecordReader.readRepeatableFieldValue(EdifactRecordReader.java:264) ~[mod-invoice-fat.jar:?]
at org.folio.processing.mapping.mapper.reader.record.edifact.EdifactRecordReader.read(EdifactRecordReader.java:205) ~[mod-invoice-fat.jar:?]
at org.folio.processing.mapping.mapper.reader.record.edifact.EdifactRecordReader.read(EdifactRecordReader.java:194) ~[mod-invoice-fat.jar:?]
at org.folio.processing.mapping.mapper.Mapper.map(Mapper.java:42) ~[mod-invoice-fat.jar:?]
at org.folio.processing.mapping.MappingManager.map(MappingManager.java:61) ~[mod-invoice-fat.jar:?]
at org.folio.dataimport.handlers.actions.CreateInvoiceEventHandler.lambda$handle$2(CreateInvoiceEventHandler.java:100) ~[mod-invoice-fat.jar:?]
at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714) ~[?:?]
... 38 more
TestRail: Results
Attachments
Issue Links
- defines
-
UXPROD-3068 EDIFACT invoice import refinement
-
- Draft
-