~camptocamp/openerp-connector-magento/7.0-pending-merge

« back to all changes in this revision

Viewing changes to magentoerpconnect/stock_tracking.py

  • Committer: Guewen Baconnier
  • Date: 2014-07-15 14:32:47 UTC
  • Revision ID: guewen.baconnier@camptocamp.com-20140715143247-vjtlbtmrnu28vtli
Get the magento_id of the exported picking

Show diffs side-by-side

added added

removed removed

Lines of Context:
87
87
                                  "%s, can't export the tracking number." %
88
88
                                  picking.name)
89
89
 
90
 
        magento_picking_id = picking.magento_id
91
 
        if not magento_picking_id:
 
90
        binder = self.get_binder_for_model()
 
91
        magento_id = binder.to_backend(binding_id)
 
92
        if not magento_id:
92
93
            # avoid circular reference
93
94
            from .stock_picking import MagentoPickingExport
94
95
            picking_exporter = self.get_connector_unit_for_model(
95
96
                MagentoPickingExport)
96
97
            picking_exporter.run(binding_id)
 
98
            magento_id = binder.to_backend(binding_id)
 
99
        if not magento_id:
 
100
            return FailedJobError("The delivery order %s has no ID on Magento"
 
101
                                  "can't export the tracking number." %
 
102
                                  picking.name)
97
103
 
98
104
        self._validate(picking)
99
105
        self._check_allowed_carrier(picking, sale_binding_id.magento_id)
100
106
        tracking_args = self._get_tracking_args(picking)
101
 
        self.backend_adapter.add_tracking_number(magento_picking_id,
102
 
                                                 *tracking_args)
 
107
        self.backend_adapter.add_tracking_number(magento_id, *tracking_args)
103
108
 
104
109
 
105
110
@on_tracking_number_added