SlideShare a Scribd company logo
1 of 39
Download to read offline
BASE EXTERNAL REFERENTIAL
               HOW TO CONNECT OPENERP
                WITH EXTERNAL SYSTEMS




OpenERP Community days         Sébastien Beau
      April 12th, 2012         Sebastien.beau@akretion.com
                               Consultant at Akretion
Context
●   June 2009 : Akretion and OpenLabs start a new project
    « MagentoERPconnect », the new connector for Magento and
    OpenERP.
●   June 2011 : MagentoERPconnect project is now maintained by
    the group « MagentoERPconnect Core Editor » composed of
    Akretion, Camptocamp, OpenLabs and ZikzakMedia.
●   February 2012 : Camptocamp and Akretion release a new
    connector for Prestashop : PrestashopERPconnect
●   March 2012 : Akretion release File Exchange, a new way to
    synchronise automatically files with OpenERP
●   Soon : AmazonERPconnect
Goals in 2009
    Example connection with Magento
●   What is needed by my customer :
    ●   Must be multi-referential
    ●   Must be flexible
    ●   Must report errors of synchronisation
    ●   Must synchronise all of the data (product, sale
        order, picking, invoice, ...)
    ●   Must be cheaper


        => These are generic needs !!
Generic needs
          Specific part
          to magento

    MagentoERPconnect                          MagentoERPconnect
      Bundle Product                             Product Variant



                          MagentoERPconnect



 Sale         Product                Product                   Product
                           Product              Base Sale
Bundle         m2m                   Images                    Variant
                            links              Multichannels
Product       Category                Olbs                      Multi

                                               Base External
                                                Referentials
generic part of the
     project
Must be multi-referential
●   Connecting one Magento is great, but it's better
    to connect to various Magentos at the same
    time
    => do not add a new column on each object to
    store external_id
    => using the table « ir_model_data » to store
    external ids
Must be flexible ;)
●   The mapping (link between OpenERP field and
    Magento field) should not be hard-coded !
Must be flexible ;)
●   Base_external_referential => the magic box

                    MAPPING     MAPPING
                    1.3.2.4 +   1.5.0.0 +




             DATA                           DATA
Must be flexible ;)
●   Next step : add generic mapping
                            GENERIC
                            MAPPING




                     MAPPING     MAPPING
                     1.3.2.4 +   1.5.0.0 +




              DATA                           DATA
How does a mapping
    look like?
How does a mapping
    look like?
3 kinds of mapping lines
●   1. Direct mapping :
    Map an OpenERP field with an external field
3 kinds of mapping lines
●   2. Function mapping :
    Use some lines of Python to evaluate a field
3 kinds of mapping lines
●   3. Submapping : a field will be evaluated using
    another mapping object




    Example : the field “order_line” of the “sale_order” will
    be evaluated by the mapping of the “order_ line”
More information about sub-
             mapping
     _transform_external_resources                      ONE SALE ORDER
    _get_mapping if not exist
    for each line
                    _transform_one_
                        _resource               _transform_one_resource

                                               code to convert data
      merge_with_default_value
  code to merge converted data with
            default value                    merge_with_default_value


                                                 _transform_sub_
                                                     mapping
        _transform_sub_mapping

for each submapping

                      _transform_resources
How can I make my own
              mapping?
●   Step 1 : Add mapping in OpenERP with the
    interface and test it
●   Step 2 : Export it and put it in a module
●   Step 3 : Take a drink... you're done, and your
    boss can not imagine that you have already
    finished ;)
Error management
Before :
●   If a synchronisation failed, everything had to be
    restarted from the beginning. No incremental
    import.
●   No easy way to understand what happened, what
    raised an error, what worked
●   Bugs can not be reproduced and fixed easily
Error management NOW
         MAPPING           MAPPING
         1.3.2.4 +         1.5.0.0 +




  DATA                                  DATA




                 RAPPORT

                               Soon : email notification ;)
Error management NOW
●   Incremental import / export => resources are
    exported one by one. After importing / exporting
    a resource, everything is committed

    Synchronize orders

                 import one order and commit it

                 import one order and commit it

                 import one order and commit it
Error management NOW
A report is generated for each synchronisation
Error management NOW
●   For each failure, a report line is generated and
    can be replayed easily
Base external is great but...
E-commerce needs more than a generic
module of synchronisation. We also need to :
●   Import orders
●   Play on_change on order lines and sale orders
●   Play workflow
●   Compute or use external taxes
●   Export products, stock levels, ...
Base_sale_multichannels
●   An abstract module to make OpenERP a
    MULTI-SALE-CHANNELS software
Base_sale_multichannels
Base_sale_multichannels
                                    OpenERP
                                   sale order
 E-Commerce                        waiting for
                                                 validation
                   Payment by       approval
                     check
                                                              sale order
                                                              validated
                                                                   +
                                                               shipping
                                                              confirmed
     56971236



                        56971236




                                                       send


                       invoice
                      created
                    automatically
                         and
     e-mail with     confirmed
       invoice
Base_sale_multichannels

Payment configuration
Generic is great but
              how does it work ?
  ●   If two modules like MagentoERPconnect and
      PrestashopERPconnect are installed and
      overwrite the method “import_orders”, how can
      it work ?

                     Button : import_order
                     ????              ????

import_order (from Magento)       import_order (from PrestaShop)
Generic is great, but how does it
             work ?
●   We have to test where we are :(
Decorators are great ;)
Last improvement of the week
●   Synchronizing data with Magento is long,
    very very very very very long !
    => we have to optimize the data sent to
    Magento
Last improvement of the week
●   Before :
      When we send a resource (product, category...) in
      multi-lang, we send x time all fields of a resource =>
      sending X time a not translatable product is useless
●   Now :
      Base_external_referentials generates a dictionary
      with all resource information :
      {'en_US': {all of data}, 'fr_FR': {only translatable
      field}, ...}
Last improvement of the week
●   Before :
      If one field changes on a resource, all fields of the
      resource are synchronised again
●   Now :
      Ability to create a group of fields that will have their
      own “last update date”
Modules that use
      base_external_referentials
     and base_sale_multichannels
●   MagentoERPconnect
●   PrestashopERPconnect
●   File Exchange
●   AmazonERPconnect
MagentoERPconnect's
                  roadmap
●   For May:
    ●   Huge re-factoring is coming
    ●   RMA synchronisation
    ●   Invoice export
    ●   Delivery time synchronisation
PrestashopERPconnect's
                  roadmap
DONE in 4.5 days:
●   shop/websites import
●   customer import
●   languages & country synchronisation
●   product import
●   order import (still missing taxes and shipping costs)
TODO :
●   finish order import
●   stock level export
●   product export
●   invoice export (PDF report)
●   picking export
File_exchange
              What is it ?
A new way to synchronize data with file system




                    STEP 1 : create mapping
File_exchange
                  What is it?
    STEP 2 : build your model file
●
AmazonERPconnect
Will be released in May 2012
●   Sale order import
●   Bank statement import
TODO :
●   stock level export
●   product export
●   picking export
Project hosted on launchpad

●   https://launchpad.net/openobject-extension
●   https://launchpad.net/e-commerce-addons
●   https://launchpad.net/prestashoperpconnect
●   https://launchpad.net/magentoerpconnect


    Modules in extra-addons are deprecated and
    will be remove soon. Use the specific branches.
Thank you for your attention




twitter : seb_beau

More Related Content

Similar to openERP- How to connect OpenERP with external Systems, AkretionAkretion base external_referentials_openerpdays

Akretion magento erp_connect
Akretion magento erp_connectAkretion magento erp_connect
Akretion magento erp_connectNico Tristan
 
Frappé Open Day Presentations - April 2016
Frappé Open Day Presentations - April 2016Frappé Open Day Presentations - April 2016
Frappé Open Day Presentations - April 2016Neil Lasrado
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based developmentgo_oh
 
shopify to magento 2 migration.pdf
shopify to magento 2 migration.pdfshopify to magento 2 migration.pdf
shopify to magento 2 migration.pdfSafcodes LLC
 
JS Fest 2018. Anna Herlihy. How to Write a Compass Plugin
JS Fest 2018. Anna Herlihy. How to Write a Compass PluginJS Fest 2018. Anna Herlihy. How to Write a Compass Plugin
JS Fest 2018. Anna Herlihy. How to Write a Compass PluginJSFestUA
 
Mage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg Bowe
Mage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg BoweMage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg Bowe
Mage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg BoweTadhg Bowe
 
Magento live eCommerce demo tutorial for beginners by Magento Universe
Magento live eCommerce demo tutorial for beginners by Magento UniverseMagento live eCommerce demo tutorial for beginners by Magento Universe
Magento live eCommerce demo tutorial for beginners by Magento UniverseMagento Universe
 
Magento Live eCommerce Demo Tutorial for Beginners » Magento Universe
Magento Live eCommerce Demo Tutorial for Beginners » Magento UniverseMagento Live eCommerce Demo Tutorial for Beginners » Magento Universe
Magento Live eCommerce Demo Tutorial for Beginners » Magento UniversePuneet Parashar
 
Frappé / ERPNext Open Day January 2016
Frappé / ERPNext Open Day January 2016Frappé / ERPNext Open Day January 2016
Frappé / ERPNext Open Day January 2016Anand Doshi
 
Have you cleared the cache?
Have you cleared the cache?Have you cleared the cache?
Have you cleared the cache?Stephen McNairn
 
The biggest stores on Magento
The biggest stores on MagentoThe biggest stores on Magento
The biggest stores on MagentoDivante
 
ERPNext Open Day - March / April 2015
ERPNext Open Day - March / April 2015ERPNext Open Day - March / April 2015
ERPNext Open Day - March / April 2015rushabh_mehta
 
Data Architecture at Vente-Exclusive.com - TOTM Exellys
Data Architecture at Vente-Exclusive.com - TOTM ExellysData Architecture at Vente-Exclusive.com - TOTM Exellys
Data Architecture at Vente-Exclusive.com - TOTM ExellysWout Scheepers
 
Fighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless phpFighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless phpFabio Pellegrini
 
Meet Magento Belarus 2015: Uladzimir Kalashnikau
Meet Magento Belarus 2015: Uladzimir KalashnikauMeet Magento Belarus 2015: Uladzimir Kalashnikau
Meet Magento Belarus 2015: Uladzimir KalashnikauAmasty
 
Open erp6.1releasenotes
Open erp6.1releasenotesOpen erp6.1releasenotes
Open erp6.1releasenotesAbdallah Saidi
 
Frappe Open Day - June 2015
Frappe Open Day - June 2015Frappe Open Day - June 2015
Frappe Open Day - June 2015Anand Doshi
 

Similar to openERP- How to connect OpenERP with external Systems, AkretionAkretion base external_referentials_openerpdays (20)

Akretion magento erp_connect
Akretion magento erp_connectAkretion magento erp_connect
Akretion magento erp_connect
 
Open ERP Magento Integration Demo
Open ERP Magento Integration DemoOpen ERP Magento Integration Demo
Open ERP Magento Integration Demo
 
Frappé Open Day Presentations - April 2016
Frappé Open Day Presentations - April 2016Frappé Open Day Presentations - April 2016
Frappé Open Day Presentations - April 2016
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based development
 
shopify to magento 2 migration.pdf
shopify to magento 2 migration.pdfshopify to magento 2 migration.pdf
shopify to magento 2 migration.pdf
 
JS Fest 2018. Anna Herlihy. How to Write a Compass Plugin
JS Fest 2018. Anna Herlihy. How to Write a Compass PluginJS Fest 2018. Anna Herlihy. How to Write a Compass Plugin
JS Fest 2018. Anna Herlihy. How to Write a Compass Plugin
 
Mage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg Bowe
Mage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg BoweMage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg Bowe
Mage Titans MCR 2016 - Data Migration from Magento 1 to Magento 2 - Tadhg Bowe
 
Magento live eCommerce demo tutorial for beginners by Magento Universe
Magento live eCommerce demo tutorial for beginners by Magento UniverseMagento live eCommerce demo tutorial for beginners by Magento Universe
Magento live eCommerce demo tutorial for beginners by Magento Universe
 
Magento Live eCommerce Demo Tutorial for Beginners » Magento Universe
Magento Live eCommerce Demo Tutorial for Beginners » Magento UniverseMagento Live eCommerce Demo Tutorial for Beginners » Magento Universe
Magento Live eCommerce Demo Tutorial for Beginners » Magento Universe
 
Frappé / ERPNext Open Day January 2016
Frappé / ERPNext Open Day January 2016Frappé / ERPNext Open Day January 2016
Frappé / ERPNext Open Day January 2016
 
Have you cleared the cache?
Have you cleared the cache?Have you cleared the cache?
Have you cleared the cache?
 
The biggest stores on Magento
The biggest stores on MagentoThe biggest stores on Magento
The biggest stores on Magento
 
ERPNext Open Day - March / April 2015
ERPNext Open Day - March / April 2015ERPNext Open Day - March / April 2015
ERPNext Open Day - March / April 2015
 
Open Day July 2019
Open Day July 2019Open Day July 2019
Open Day July 2019
 
Data Architecture at Vente-Exclusive.com - TOTM Exellys
Data Architecture at Vente-Exclusive.com - TOTM ExellysData Architecture at Vente-Exclusive.com - TOTM Exellys
Data Architecture at Vente-Exclusive.com - TOTM Exellys
 
Shopify Akeneo Connector
Shopify Akeneo ConnectorShopify Akeneo Connector
Shopify Akeneo Connector
 
Fighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless phpFighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless php
 
Meet Magento Belarus 2015: Uladzimir Kalashnikau
Meet Magento Belarus 2015: Uladzimir KalashnikauMeet Magento Belarus 2015: Uladzimir Kalashnikau
Meet Magento Belarus 2015: Uladzimir Kalashnikau
 
Open erp6.1releasenotes
Open erp6.1releasenotesOpen erp6.1releasenotes
Open erp6.1releasenotes
 
Frappe Open Day - June 2015
Frappe Open Day - June 2015Frappe Open Day - June 2015
Frappe Open Day - June 2015
 

More from Odoo

Timesheet Workshop: The Timesheet App People Love!
Timesheet Workshop: The Timesheet App People Love!Timesheet Workshop: The Timesheet App People Love!
Timesheet Workshop: The Timesheet App People Love!Odoo
 
Odoo 3D Product View with Google Model-Viewer
Odoo 3D Product View with Google Model-ViewerOdoo 3D Product View with Google Model-Viewer
Odoo 3D Product View with Google Model-ViewerOdoo
 
Keynote - Vision & Strategy
Keynote - Vision & StrategyKeynote - Vision & Strategy
Keynote - Vision & StrategyOdoo
 
Opening Keynote - Unveilling Odoo 14
Opening Keynote - Unveilling Odoo 14Opening Keynote - Unveilling Odoo 14
Opening Keynote - Unveilling Odoo 14Odoo
 
Extending Odoo with a Comprehensive Budgeting and Forecasting Capability
Extending Odoo with a Comprehensive Budgeting and Forecasting CapabilityExtending Odoo with a Comprehensive Budgeting and Forecasting Capability
Extending Odoo with a Comprehensive Budgeting and Forecasting CapabilityOdoo
 
Managing Multi-channel Selling with Odoo
Managing Multi-channel Selling with OdooManaging Multi-channel Selling with Odoo
Managing Multi-channel Selling with OdooOdoo
 
Product Configurator: Advanced Use Case
Product Configurator: Advanced Use CaseProduct Configurator: Advanced Use Case
Product Configurator: Advanced Use CaseOdoo
 
Accounting Automation: How Much Money We Saved and How?
Accounting Automation: How Much Money We Saved and How?Accounting Automation: How Much Money We Saved and How?
Accounting Automation: How Much Money We Saved and How?Odoo
 
Rock Your Logistics with Advanced Operations
Rock Your Logistics with Advanced OperationsRock Your Logistics with Advanced Operations
Rock Your Logistics with Advanced OperationsOdoo
 
Transition from a cost to a flow-centric organization
Transition from a cost to a flow-centric organizationTransition from a cost to a flow-centric organization
Transition from a cost to a flow-centric organizationOdoo
 
Synchronization: The Supply Chain Response to Overcome the Crisis
Synchronization: The Supply Chain Response to Overcome the CrisisSynchronization: The Supply Chain Response to Overcome the Crisis
Synchronization: The Supply Chain Response to Overcome the CrisisOdoo
 
Running a University with Odoo
Running a University with OdooRunning a University with Odoo
Running a University with OdooOdoo
 
Down Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in OdooDown Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in OdooOdoo
 
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach food
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach foodOdoo Implementation in Phases - Success Story of a Retail Chain 3Sach food
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach foodOdoo
 
Migration from Salesforce to Odoo
Migration from Salesforce to OdooMigration from Salesforce to Odoo
Migration from Salesforce to OdooOdoo
 
Preventing User Mistakes by Using Machine Learning
Preventing User Mistakes by Using Machine LearningPreventing User Mistakes by Using Machine Learning
Preventing User Mistakes by Using Machine LearningOdoo
 
Becoming an Odoo Expert: How to Prepare for the Certification
Becoming an Odoo Expert: How to Prepare for the Certification Becoming an Odoo Expert: How to Prepare for the Certification
Becoming an Odoo Expert: How to Prepare for the Certification Odoo
 
Instant Printing of any Odoo Report or Shipping Label
Instant Printing of any Odoo Report or Shipping LabelInstant Printing of any Odoo Report or Shipping Label
Instant Printing of any Odoo Report or Shipping LabelOdoo
 
How Odoo helped an Organization Grow 3 Fold
How Odoo helped an Organization Grow 3 FoldHow Odoo helped an Organization Grow 3 Fold
How Odoo helped an Organization Grow 3 FoldOdoo
 
From Shopify to Odoo
From Shopify to OdooFrom Shopify to Odoo
From Shopify to OdooOdoo
 

More from Odoo (20)

Timesheet Workshop: The Timesheet App People Love!
Timesheet Workshop: The Timesheet App People Love!Timesheet Workshop: The Timesheet App People Love!
Timesheet Workshop: The Timesheet App People Love!
 
Odoo 3D Product View with Google Model-Viewer
Odoo 3D Product View with Google Model-ViewerOdoo 3D Product View with Google Model-Viewer
Odoo 3D Product View with Google Model-Viewer
 
Keynote - Vision & Strategy
Keynote - Vision & StrategyKeynote - Vision & Strategy
Keynote - Vision & Strategy
 
Opening Keynote - Unveilling Odoo 14
Opening Keynote - Unveilling Odoo 14Opening Keynote - Unveilling Odoo 14
Opening Keynote - Unveilling Odoo 14
 
Extending Odoo with a Comprehensive Budgeting and Forecasting Capability
Extending Odoo with a Comprehensive Budgeting and Forecasting CapabilityExtending Odoo with a Comprehensive Budgeting and Forecasting Capability
Extending Odoo with a Comprehensive Budgeting and Forecasting Capability
 
Managing Multi-channel Selling with Odoo
Managing Multi-channel Selling with OdooManaging Multi-channel Selling with Odoo
Managing Multi-channel Selling with Odoo
 
Product Configurator: Advanced Use Case
Product Configurator: Advanced Use CaseProduct Configurator: Advanced Use Case
Product Configurator: Advanced Use Case
 
Accounting Automation: How Much Money We Saved and How?
Accounting Automation: How Much Money We Saved and How?Accounting Automation: How Much Money We Saved and How?
Accounting Automation: How Much Money We Saved and How?
 
Rock Your Logistics with Advanced Operations
Rock Your Logistics with Advanced OperationsRock Your Logistics with Advanced Operations
Rock Your Logistics with Advanced Operations
 
Transition from a cost to a flow-centric organization
Transition from a cost to a flow-centric organizationTransition from a cost to a flow-centric organization
Transition from a cost to a flow-centric organization
 
Synchronization: The Supply Chain Response to Overcome the Crisis
Synchronization: The Supply Chain Response to Overcome the CrisisSynchronization: The Supply Chain Response to Overcome the Crisis
Synchronization: The Supply Chain Response to Overcome the Crisis
 
Running a University with Odoo
Running a University with OdooRunning a University with Odoo
Running a University with Odoo
 
Down Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in OdooDown Payments on Purchase Orders in Odoo
Down Payments on Purchase Orders in Odoo
 
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach food
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach foodOdoo Implementation in Phases - Success Story of a Retail Chain 3Sach food
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach food
 
Migration from Salesforce to Odoo
Migration from Salesforce to OdooMigration from Salesforce to Odoo
Migration from Salesforce to Odoo
 
Preventing User Mistakes by Using Machine Learning
Preventing User Mistakes by Using Machine LearningPreventing User Mistakes by Using Machine Learning
Preventing User Mistakes by Using Machine Learning
 
Becoming an Odoo Expert: How to Prepare for the Certification
Becoming an Odoo Expert: How to Prepare for the Certification Becoming an Odoo Expert: How to Prepare for the Certification
Becoming an Odoo Expert: How to Prepare for the Certification
 
Instant Printing of any Odoo Report or Shipping Label
Instant Printing of any Odoo Report or Shipping LabelInstant Printing of any Odoo Report or Shipping Label
Instant Printing of any Odoo Report or Shipping Label
 
How Odoo helped an Organization Grow 3 Fold
How Odoo helped an Organization Grow 3 FoldHow Odoo helped an Organization Grow 3 Fold
How Odoo helped an Organization Grow 3 Fold
 
From Shopify to Odoo
From Shopify to OdooFrom Shopify to Odoo
From Shopify to Odoo
 

Recently uploaded

MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLSeo
 
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxB.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxpriyanshujha201
 
RSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors DataRSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors DataExhibitors Data
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageMatteo Carbone
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangaloreamitlee9823
 
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...amitlee9823
 
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLBAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLkapoorjyoti4444
 
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...lizamodels9
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1kcpayne
 
Falcon's Invoice Discounting: Your Path to Prosperity
Falcon's Invoice Discounting: Your Path to ProsperityFalcon's Invoice Discounting: Your Path to Prosperity
Falcon's Invoice Discounting: Your Path to Prosperityhemanthkumar470700
 
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...amitlee9823
 
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...allensay1
 
Business Model Canvas (BMC)- A new venture concept
Business Model Canvas (BMC)-  A new venture conceptBusiness Model Canvas (BMC)-  A new venture concept
Business Model Canvas (BMC)- A new venture conceptP&CO
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876dlhescort
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Centuryrwgiffor
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...amitlee9823
 
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort ServiceEluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort ServiceDamini Dixit
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayNZSG
 
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...rajveerescorts2022
 

Recently uploaded (20)

MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxB.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
 
RSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors DataRSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors Data
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usage
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
 
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLBAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
 
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1
 
Falcon's Invoice Discounting: Your Path to Prosperity
Falcon's Invoice Discounting: Your Path to ProsperityFalcon's Invoice Discounting: Your Path to Prosperity
Falcon's Invoice Discounting: Your Path to Prosperity
 
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
 
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
 
Business Model Canvas (BMC)- A new venture concept
Business Model Canvas (BMC)-  A new venture conceptBusiness Model Canvas (BMC)-  A new venture concept
Business Model Canvas (BMC)- A new venture concept
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investors
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
 
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort ServiceEluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 May
 
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
 

openERP- How to connect OpenERP with external Systems, AkretionAkretion base external_referentials_openerpdays

  • 1. BASE EXTERNAL REFERENTIAL HOW TO CONNECT OPENERP WITH EXTERNAL SYSTEMS OpenERP Community days Sébastien Beau April 12th, 2012 Sebastien.beau@akretion.com Consultant at Akretion
  • 2. Context ● June 2009 : Akretion and OpenLabs start a new project « MagentoERPconnect », the new connector for Magento and OpenERP. ● June 2011 : MagentoERPconnect project is now maintained by the group « MagentoERPconnect Core Editor » composed of Akretion, Camptocamp, OpenLabs and ZikzakMedia. ● February 2012 : Camptocamp and Akretion release a new connector for Prestashop : PrestashopERPconnect ● March 2012 : Akretion release File Exchange, a new way to synchronise automatically files with OpenERP ● Soon : AmazonERPconnect
  • 3. Goals in 2009 Example connection with Magento ● What is needed by my customer : ● Must be multi-referential ● Must be flexible ● Must report errors of synchronisation ● Must synchronise all of the data (product, sale order, picking, invoice, ...) ● Must be cheaper => These are generic needs !!
  • 4. Generic needs Specific part to magento MagentoERPconnect MagentoERPconnect Bundle Product Product Variant MagentoERPconnect Sale Product Product Product Product Base Sale Bundle m2m Images Variant links Multichannels Product Category Olbs Multi Base External Referentials generic part of the project
  • 5. Must be multi-referential ● Connecting one Magento is great, but it's better to connect to various Magentos at the same time => do not add a new column on each object to store external_id => using the table « ir_model_data » to store external ids
  • 6. Must be flexible ;) ● The mapping (link between OpenERP field and Magento field) should not be hard-coded !
  • 7. Must be flexible ;) ● Base_external_referential => the magic box MAPPING MAPPING 1.3.2.4 + 1.5.0.0 + DATA DATA
  • 8. Must be flexible ;) ● Next step : add generic mapping GENERIC MAPPING MAPPING MAPPING 1.3.2.4 + 1.5.0.0 + DATA DATA
  • 9. How does a mapping look like?
  • 10. How does a mapping look like?
  • 11. 3 kinds of mapping lines ● 1. Direct mapping : Map an OpenERP field with an external field
  • 12. 3 kinds of mapping lines ● 2. Function mapping : Use some lines of Python to evaluate a field
  • 13. 3 kinds of mapping lines ● 3. Submapping : a field will be evaluated using another mapping object Example : the field “order_line” of the “sale_order” will be evaluated by the mapping of the “order_ line”
  • 14. More information about sub- mapping _transform_external_resources ONE SALE ORDER _get_mapping if not exist for each line _transform_one_ _resource _transform_one_resource code to convert data merge_with_default_value code to merge converted data with default value merge_with_default_value _transform_sub_ mapping _transform_sub_mapping for each submapping _transform_resources
  • 15. How can I make my own mapping? ● Step 1 : Add mapping in OpenERP with the interface and test it ● Step 2 : Export it and put it in a module ● Step 3 : Take a drink... you're done, and your boss can not imagine that you have already finished ;)
  • 16. Error management Before : ● If a synchronisation failed, everything had to be restarted from the beginning. No incremental import. ● No easy way to understand what happened, what raised an error, what worked ● Bugs can not be reproduced and fixed easily
  • 17. Error management NOW MAPPING MAPPING 1.3.2.4 + 1.5.0.0 + DATA DATA RAPPORT Soon : email notification ;)
  • 18. Error management NOW ● Incremental import / export => resources are exported one by one. After importing / exporting a resource, everything is committed Synchronize orders import one order and commit it import one order and commit it import one order and commit it
  • 19. Error management NOW A report is generated for each synchronisation
  • 20. Error management NOW ● For each failure, a report line is generated and can be replayed easily
  • 21. Base external is great but... E-commerce needs more than a generic module of synchronisation. We also need to : ● Import orders ● Play on_change on order lines and sale orders ● Play workflow ● Compute or use external taxes ● Export products, stock levels, ...
  • 22. Base_sale_multichannels ● An abstract module to make OpenERP a MULTI-SALE-CHANNELS software
  • 24. Base_sale_multichannels OpenERP sale order E-Commerce waiting for validation Payment by approval check sale order validated + shipping confirmed 56971236 56971236 send invoice created automatically and e-mail with confirmed invoice
  • 26. Generic is great but how does it work ? ● If two modules like MagentoERPconnect and PrestashopERPconnect are installed and overwrite the method “import_orders”, how can it work ? Button : import_order ???? ???? import_order (from Magento) import_order (from PrestaShop)
  • 27. Generic is great, but how does it work ? ● We have to test where we are :(
  • 29. Last improvement of the week ● Synchronizing data with Magento is long, very very very very very long ! => we have to optimize the data sent to Magento
  • 30. Last improvement of the week ● Before : When we send a resource (product, category...) in multi-lang, we send x time all fields of a resource => sending X time a not translatable product is useless ● Now : Base_external_referentials generates a dictionary with all resource information : {'en_US': {all of data}, 'fr_FR': {only translatable field}, ...}
  • 31. Last improvement of the week ● Before : If one field changes on a resource, all fields of the resource are synchronised again ● Now : Ability to create a group of fields that will have their own “last update date”
  • 32. Modules that use base_external_referentials and base_sale_multichannels ● MagentoERPconnect ● PrestashopERPconnect ● File Exchange ● AmazonERPconnect
  • 33. MagentoERPconnect's roadmap ● For May: ● Huge re-factoring is coming ● RMA synchronisation ● Invoice export ● Delivery time synchronisation
  • 34. PrestashopERPconnect's roadmap DONE in 4.5 days: ● shop/websites import ● customer import ● languages & country synchronisation ● product import ● order import (still missing taxes and shipping costs) TODO : ● finish order import ● stock level export ● product export ● invoice export (PDF report) ● picking export
  • 35. File_exchange What is it ? A new way to synchronize data with file system STEP 1 : create mapping
  • 36. File_exchange What is it? STEP 2 : build your model file ●
  • 37. AmazonERPconnect Will be released in May 2012 ● Sale order import ● Bank statement import TODO : ● stock level export ● product export ● picking export
  • 38. Project hosted on launchpad ● https://launchpad.net/openobject-extension ● https://launchpad.net/e-commerce-addons ● https://launchpad.net/prestashoperpconnect ● https://launchpad.net/magentoerpconnect Modules in extra-addons are deprecated and will be remove soon. Use the specific branches.
  • 39. Thank you for your attention twitter : seb_beau