Merge lp:~magentoerpconnect-core-editors/magentoerpconnect/oerp6.1-oldstable-nocheck_tracking-1108643 into lp:magentoerpconnect/oerp6.1-oldstable

Proposed by Guewen Baconnier @ Camptocamp
Status: Needs review
Proposed branch: lp:~magentoerpconnect-core-editors/magentoerpconnect/oerp6.1-oldstable-nocheck_tracking-1108643
Merge into: lp:magentoerpconnect/oerp6.1-oldstable
Diff against target: 45 lines (+10/-7)
1 file modified
magentoerpconnect/stock.py (+10/-7)
To merge this branch: bzr merge lp:~magentoerpconnect-core-editors/magentoerpconnect/oerp6.1-oldstable-nocheck_tracking-1108643
Reviewer Review Type Date Requested Status
Alexandre Fayolle - camptocamp code review, no test Approve
Review via email: mp+145324@code.launchpad.net

Commit message

[FIX] do not check if the carrier exists in getCarrier if there is no tracking number, do not send an empty tracking number

Description of the change

Fix for bug lp:1108643

Skip the check and creation of a tracking number if the tracking number is empty.
Currently, the check prevent to export a picking if the carrier is not in the
Magento's 'getCarriers' list.

To post a comment you must log in.
Revision history for this message
Guewen Baconnier @ Camptocamp (gbaconnier-c2c) wrote :
Revision history for this message
Alexandre Fayolle - camptocamp (alexandre-fayolle-c2c) wrote :

Don't we want to have at least something logged telling us that something is not correctly configured?

review: Needs Information
Revision history for this message
Alexandre Fayolle - camptocamp (alexandre-fayolle-c2c) wrote :

LGTM

review: Approve (code review, no test)

Unmerged revisions

666. By Guewen Baconnier @ Camptocamp

[FIX] do not check if the carrier exists in getCarrier if there is no tracking number, do not send an empty tracking number

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'magentoerpconnect/stock.py'
--- magentoerpconnect/stock.py 2012-06-27 15:44:07 +0000
+++ magentoerpconnect/stock.py 2013-01-29 08:38:22 +0000
@@ -79,12 +79,16 @@
79 :param str picking_type: 'partial' or 'complete'79 :param str picking_type: 'partial' or 'complete'
80 :return: the picking id on magento80 :return: the picking id on magento
81 """81 """
82 sale = self.browse(cr, uid, id, context=context).sale_id82 picking = self.browse(cr, uid, id, context=context)
83 sale = picking.sale_id
83 magento_incrementid = sale.magento_incrementid84 magento_incrementid = sale.magento_incrementid
84 carrier_id = self.read(cr, uid, id, ['carrier_id'], context)['carrier_id']85 carrier_id = self.read(cr, uid, id, ['carrier_id'], context)['carrier_id']
85 if carrier_id:86 if carrier_id:
86 carrier_id = carrier_id[0]87 carrier_id = carrier_id[0]
87 self.pool.get('delivery.carrier').check_ext_carrier_reference(cr, uid, carrier_id, magento_incrementid, context)88
89 if carrier_id and picking.carrier_tracking_ref:
90 self.pool.get('delivery.carrier').check_ext_carrier_reference(
91 cr, uid, carrier_id, magento_incrementid, context)
8892
89 ext_shipping_id = False93 ext_shipping_id = False
90 meth = getattr(self, "create_ext_%s_shipping" % picking_type)94 meth = getattr(self, "create_ext_%s_shipping" % picking_type)
@@ -106,7 +110,7 @@
106 else:110 else:
107 raise111 raise
108112
109 if ext_shipping_id and carrier_id:113 if ext_shipping_id and carrier_id and picking.carrier_tracking_ref:
110 self.add_ext_tracking_reference(cr, uid, id, carrier_id, ext_shipping_id, context)114 self.add_ext_tracking_reference(cr, uid, id, carrier_id, ext_shipping_id, context)
111 return ext_shipping_id115 return ext_shipping_id
112116
@@ -116,10 +120,9 @@
116 conn = context.get('conn_obj', False)120 conn = context.get('conn_obj', False)
117 carrier = self.pool.get('delivery.carrier').read(cr, uid, carrier_id, ['magento_carrier_code', 'magento_tracking_title'], context)121 carrier = self.pool.get('delivery.carrier').read(cr, uid, carrier_id, ['magento_carrier_code', 'magento_tracking_title'], context)
118122
119 if self.pool.get('ir.model.fields').search(cr, uid, [('name', '=', 'carrier_tracking_ref'), ('model', '=', 'stock.picking')]): #OpenERP v6 have the field carrier_tracking_ref on the stock_picking but v5 doesn't have it123 carrier_tracking_ref = self.read(cr, uid, id,
120 carrier_tracking_ref = self.read(cr, uid, id, ['carrier_tracking_ref'], context)['carrier_tracking_ref']124 ['carrier_tracking_ref'],
121 else:125 context)['carrier_tracking_ref']
122 carrier_tracking_ref = ''
123126
124 res = conn.call('sales_order_shipment.addTrack', [ext_shipping_id, carrier['magento_carrier_code'], carrier['magento_tracking_title'] or '', carrier_tracking_ref or ''])127 res = conn.call('sales_order_shipment.addTrack', [ext_shipping_id, carrier['magento_carrier_code'], carrier['magento_tracking_title'] or '', carrier_tracking_ref or ''])
125 if res:128 if res: