[open-ils-commits] r18538 - trunk/Open-ILS/src/perlmods/OpenILS/Application/Acq (gmc)

svn at svn.open-ils.org svn at svn.open-ils.org
Thu Oct 28 20:06:03 EDT 2010


Author: gmc
Date: 2010-10-28 20:06:02 -0400 (Thu, 28 Oct 2010)
New Revision: 18538

Modified:
   trunk/Open-ILS/src/perlmods/OpenILS/Application/Acq/EDI.pm
Log:
loosen cross-check of line item ID when processing incoming EDI messages

Signed-off-by: Galen Charlton <gmc at esilibrary.com>


Modified: trunk/Open-ILS/src/perlmods/OpenILS/Application/Acq/EDI.pm
===================================================================
--- trunk/Open-ILS/src/perlmods/OpenILS/Application/Acq/EDI.pm	2010-10-28 23:56:06 UTC (rev 18537)
+++ trunk/Open-ILS/src/perlmods/OpenILS/Application/Acq/EDI.pm	2010-10-29 00:06:02 UTC (rev 18538)
@@ -656,13 +656,22 @@
         $logger->warn("EDI ORDRSP RFF/1153 unexpected value ('$val_1153', not 'LI').  Attempting failover to LIN/1082");
     }
 
-    if ($id and $val_1082 and $val_1082 ne $id) {
-        $logger->warn("EDI ORDRSP LIN/1082 Line Item ID mismatch ($id vs. $val_1082): cannot target update");
+    # FIXME - the line item ID in LIN/1082 ought to match RFF/1154, but
+    # not all materials vendors obey this.  Commenting out check for now
+    # as being too strict.
+    #if ($id and $val_1082 and $val_1082 ne $id) {
+    #    $logger->warn("EDI ORDRSP LIN/1082 Line Item ID mismatch ($id vs. $val_1082): cannot target update");
+    #    return;
+    #}
+
+    $id ||= $val_1082 || '';
+    if ($id eq '') {
+        $logger->warn('Cannot identify line item from EDI message');
         return;
     }
-    $id ||= $val_1082 || '';
-    print STDERR "EDI retrieve/update lineitem $id\n";
 
+    $logger->info("EDI retrieve/update lineitem $id");
+
     my $li = OpenILS::Application::Acq::Lineitem::retrieve_lineitem_impl($e, $id, {
         flesh_li_details => 1,
     }, 1); # Could send more {options}.  The 1 is for no_auth.



More information about the open-ils-commits mailing list