SlideShare a Scribd company logo
1 of 14
Download to read offline
BEST PRACTICES ON HOW TO
IMPORT DATA INTO OPENERP
Why	
  you	
  should	
  love	
  CSV	
  Import	
  	
  
Cyril	
  MORISSE	
  (	
  @cmorisse	
  )	
  	
  
 
Introduc*on	
  
	
  
¨  With	
  Test	
  Driven	
  Development	
  and	
  Data	
  
Migra*on,	
  we	
  need	
  to	
  gather	
  and	
  enter	
  real	
  data	
  
owned	
  by	
  users	
  
¨  We	
  need	
  a	
  data	
  format	
  within	
  user’s	
  reach	
  
(compared	
  to	
  XML)	
  
¨  As	
  of	
  version	
  7.0	
  OpenERP	
  has	
  redesigned	
  the	
  
import	
  system	
  (“base_import”	
  module):	
  
¤  It	
  has	
  nearly	
  everything	
  right	
  out	
  of	
  the	
  box	
  
¤  Only	
  missing	
  feature	
  is	
  user	
  oriented	
  documenta*on	
  
¨  This	
  talk	
  is	
  an	
  overview	
  of	
  the	
  module	
  
Installa*on	
  
¨  Export	
  func*onality	
  is	
  available	
  right	
  out	
  of	
  the	
  box	
  
¨  BUT	
  import	
  func*onality	
  must	
  be	
  installed:	
  
¤  Import	
  is	
  covered	
  by	
  “base_import”	
  module	
  
¤  Import	
  must	
  be	
  installed	
  via	
  SeTngs	
  /	
  Configura*on	
  /	
  
General	
  SeTngs	
  
¨  Then	
  “Import”	
  link	
  is	
  available	
  in	
  all	
  list/tree	
  views	
  
CSV	
  import	
  issues	
  
¨  When	
  impor*ng	
  data	
  using	
  CSV,	
  you	
  will	
  
face	
  3	
  main	
  issues:	
  
¤ Iden*fy	
  the	
  fields	
  required	
  for	
  an	
  import	
  
¤ Understand	
  “OpenERP	
  External	
  IDs”	
  	
  
¤ Understand	
  how	
  to	
  import	
  the	
  different	
  type	
  
of	
  fields	
  
n Simple	
  fields	
  (	
  date,	
  text,	
  numbers,	
  boolean,…)	
  
n Rela*onal	
  fields:	
  
n Many2many	
  
n Many2One	
  
n One2many	
  
Iden*fy	
  fields	
  to	
  import	
  
¨  To	
  iden*fy	
  the	
  columns	
  required	
  to	
  import	
  an	
  
object:	
  
1.  Ac*vate	
  “Developer	
  Mode”	
  
2.  Write	
  down	
  all	
  the	
  fields	
  you	
  must	
  enter	
  manually	
  
3.  Export	
  a	
  file	
  with	
  all	
  these	
  fields	
  	
  
4.  Delete	
  values	
  in	
  the	
  id	
  column	
  then	
  re-­‐import	
  the	
  
file	
  to	
  check	
  everything	
  is	
  ok	
  
5.  If	
  a	
  column	
  is	
  missing	
  ;	
  do	
  it	
  again	
  from	
  step	
  3	
  and	
  
add	
  the	
  column	
  	
  
Understand	
  IDs	
  
¨  Example	
  Product	
  categories	
  
	
  
¨  CSV	
  Import	
  allows	
  User	
  Defined	
  External	
  IDs	
  
¤  External	
  IDs	
  are	
  symbolic	
  names	
  for	
  records	
  
¤  Format	
  is	
  module_name.id_name	
  
	
  
Understand	
  IDs	
  (con*nued)	
  
¨  User	
  defined	
  IDs	
  are	
  saved	
  in	
  the	
  database	
  and	
  can	
  be	
  
retrieved	
  via:	
  
¤  SeTngs	
  /	
  Technical	
  /	
  Sequences	
  &	
  Iden*fiers	
  /	
  External	
  Iden*fiers	
  	
  
Understand	
  IDs	
  (end)	
  
¨  User	
  defined	
  IDs	
  allow	
  to	
  manage	
  Import	
  /	
  Update	
  of	
  data	
  
¨  During	
  import:	
  
¤  If	
  a	
  record	
  exists	
  with	
  this	
  ID,	
  OpenERP	
  will	
  update	
  the	
  record	
  
¤  If	
  no	
  record	
  exists	
  with	
  this	
  ID,	
  OpenERP	
  will	
  create	
  a	
  new	
  record	
  	
  
¨  Export	
  IDs	
  
¤  During	
  Export,	
  OpenERP	
  creates	
  an	
  export	
  ID	
  for	
  all	
  records	
  without	
  
IDs	
  (manually	
  created	
  records)	
  
	
  
¨  In	
  the	
  database	
  all	
  External	
  IDs	
  are	
  stored	
  in	
  table	
  ir_model_data	
  
Import	
  simple	
  Fields	
  
Field type Cell content Example
char, text Content surrounded by “ “This is a text ""value”"."
float Number with . as decimal
separator
3.15
boolean True or False “0” or 0 or “False” or False
or “1” or 1 or “True” or True
date YYYY-MM-DD 2013-06-10
datetime YYYY-MM-DD HH:MM:SS 2013-06-10 07:07
selection Value as given by
“developer mode” inspector
reference Value in database is
“object,id”
Import	
  rela*ons:	
  Many2One	
  
¨  Many2one	
  	
  
¨  This	
  is	
  the	
  simplest	
  rela*on	
  to	
  import	
  in	
  CSV	
  
¤  Just	
  use	
  id	
  of	
  referenced	
  object	
  
id
parent_id
product_category
...
Import	
  rela*ons:	
  Many2Many	
  
¨  Eg.	
  Customer	
  Tags	
  
¨  Many2many	
  involves	
  3	
  tables	
  	
  
	
  
	
  
¨  Really	
  simple	
  in	
  CSV	
  ;	
  enter	
  all	
  values	
  separated	
  by	
  
comma	
  with	
  no	
  space	
  
	
  
...
id
res_partner
id
...
res_partner_category
category_idpartner_id
res_partner_res_partner_category_rel
Import	
  rela*ons:	
  One2Many	
  
¨  Eg.	
  Quota*ons/	
  Quota*ons	
  Lines	
  
	
  
	
  
¨  In	
  CSV:	
  Enter	
  lines	
  while	
  you	
  don’t	
  repeat	
  header	
  object	
  fields	
  
¤  Child	
  objects	
  column	
  format	
  is	
  	
  
“one2many_fieldname/child_object_field”	
  
	
  
	
  
	
  
	
  
	
  
...
id
sale_order
id
order_id
sale_order_line
...
Integrate	
  CSV	
  in	
  your	
  development	
  
workflow	
  
¨  Create	
  a	
  set	
  of	
  shared	
  Google	
  Spreadsheet	
  that	
  your	
  
users	
  will	
  complete	
  with	
  project	
  data	
  	
  
¨  Organize	
  your	
  OpenERP	
  project	
  in	
  3	
  modules:	
  
¤  project_core	
  with	
  code	
  and	
  technical	
  parameters	
  
¤  project_data	
  :	
  will	
  contains	
  only	
  data	
  in	
  CSV	
  files	
  
¤  project_test	
  :	
  contains	
  your	
  test	
  code	
  and	
  test	
  specific	
  data	
  
¨  Use	
  a	
  tool	
  to	
  automate	
  export	
  and	
  download	
  of	
  the	
  
Google	
  Spreadsheet	
  into	
  the	
  project_data	
  module	
  
¤  hkp://bitbucket.org/cmorisse/edgdd	
  	
  
¨  Your	
  users	
  will	
  be	
  able	
  to	
  “coopera*vely”	
  enter	
  their	
  
data	
  and	
  you	
  will	
  be	
  able	
  to	
  seamlessly	
  integrate	
  and	
  
use	
  this	
  data	
  in	
  your	
  project	
  	
  
More	
  informa*on?	
  
www.audaxis.com	
  
	
  
Contact	
  us	
  
openerp@audaxis.com	
  
	
  
	
  
	
  
14
Visit our booth at OpenERP Community Days in Hall K

More Related Content

What's hot

How to Define One2Many Field in Odoo 15
 How to Define One2Many Field in Odoo 15 How to Define One2Many Field in Odoo 15
How to Define One2Many Field in Odoo 15Celine George
 
Common Performance Pitfalls in Odoo apps
Common Performance Pitfalls in Odoo appsCommon Performance Pitfalls in Odoo apps
Common Performance Pitfalls in Odoo appsOdoo
 
Deploying & Scaling your Odoo Server
Deploying & Scaling your Odoo ServerDeploying & Scaling your Odoo Server
Deploying & Scaling your Odoo ServerOdoo
 
PART 1 - Python Tutorial | Variables and Data Types in Python
PART 1 - Python Tutorial | Variables and Data Types in PythonPART 1 - Python Tutorial | Variables and Data Types in Python
PART 1 - Python Tutorial | Variables and Data Types in PythonShivam Mitra
 
Python-03| Data types
Python-03| Data typesPython-03| Data types
Python-03| Data typesMohd Sajjad
 
Introduction To Programming with Python
Introduction To Programming with PythonIntroduction To Programming with Python
Introduction To Programming with PythonSushant Mane
 
Budget Control with mis_builder 3 (2017)
Budget Control with mis_builder 3 (2017)Budget Control with mis_builder 3 (2017)
Budget Control with mis_builder 3 (2017)acsone
 
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
 
QWeb Report in odoo
QWeb Report in odooQWeb Report in odoo
QWeb Report in odooexpertodoo
 
Odoo 15 purchase management
Odoo 15 purchase managementOdoo 15 purchase management
Odoo 15 purchase managementCeline George
 
Odoo icon smart buttons
Odoo   icon smart buttonsOdoo   icon smart buttons
Odoo icon smart buttonsTaieb Kristou
 
How to Choose the Proper Infra (Online, Odoo.sh, On premise)
How to Choose the Proper Infra (Online, Odoo.sh, On premise)How to Choose the Proper Infra (Online, Odoo.sh, On premise)
How to Choose the Proper Infra (Online, Odoo.sh, On premise)Odoo
 
How to Set Up Cash Control in Odoo 15 POS
How to Set Up Cash Control in Odoo 15 POSHow to Set Up Cash Control in Odoo 15 POS
How to Set Up Cash Control in Odoo 15 POSCeline George
 
Odoo - CMS dynamic widgets
Odoo - CMS dynamic widgetsOdoo - CMS dynamic widgets
Odoo - CMS dynamic widgetsOdoo
 
Html tables, forms and audio video
Html tables, forms and audio videoHtml tables, forms and audio video
Html tables, forms and audio videoSaad Sheikh
 

What's hot (20)

How to Define One2Many Field in Odoo 15
 How to Define One2Many Field in Odoo 15 How to Define One2Many Field in Odoo 15
How to Define One2Many Field in Odoo 15
 
Common Performance Pitfalls in Odoo apps
Common Performance Pitfalls in Odoo appsCommon Performance Pitfalls in Odoo apps
Common Performance Pitfalls in Odoo apps
 
Deploying & Scaling your Odoo Server
Deploying & Scaling your Odoo ServerDeploying & Scaling your Odoo Server
Deploying & Scaling your Odoo Server
 
PART 1 - Python Tutorial | Variables and Data Types in Python
PART 1 - Python Tutorial | Variables and Data Types in PythonPART 1 - Python Tutorial | Variables and Data Types in Python
PART 1 - Python Tutorial | Variables and Data Types in Python
 
Python-03| Data types
Python-03| Data typesPython-03| Data types
Python-03| Data types
 
Introduction To Programming with Python
Introduction To Programming with PythonIntroduction To Programming with Python
Introduction To Programming with Python
 
Python
PythonPython
Python
 
Python programming : Files
Python programming : FilesPython programming : Files
Python programming : Files
 
PHP and MySQL
PHP and MySQLPHP and MySQL
PHP and MySQL
 
Budget Control with mis_builder 3 (2017)
Budget Control with mis_builder 3 (2017)Budget Control with mis_builder 3 (2017)
Budget Control with mis_builder 3 (2017)
 
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
 
QWeb Report in odoo
QWeb Report in odooQWeb Report in odoo
QWeb Report in odoo
 
Odoo 15 purchase management
Odoo 15 purchase managementOdoo 15 purchase management
Odoo 15 purchase management
 
Odoo icon smart buttons
Odoo   icon smart buttonsOdoo   icon smart buttons
Odoo icon smart buttons
 
How to Choose the Proper Infra (Online, Odoo.sh, On premise)
How to Choose the Proper Infra (Online, Odoo.sh, On premise)How to Choose the Proper Infra (Online, Odoo.sh, On premise)
How to Choose the Proper Infra (Online, Odoo.sh, On premise)
 
Flask – Python
Flask – PythonFlask – Python
Flask – Python
 
How to Set Up Cash Control in Odoo 15 POS
How to Set Up Cash Control in Odoo 15 POSHow to Set Up Cash Control in Odoo 15 POS
How to Set Up Cash Control in Odoo 15 POS
 
Odoo - CMS dynamic widgets
Odoo - CMS dynamic widgetsOdoo - CMS dynamic widgets
Odoo - CMS dynamic widgets
 
Php mysql ppt
Php mysql pptPhp mysql ppt
Php mysql ppt
 
Html tables, forms and audio video
Html tables, forms and audio videoHtml tables, forms and audio video
Html tables, forms and audio video
 

Similar to Best practices on how to import data into OpenERP. Cyril Morisse, Audaxis

How to import datas in OpenERP 7.0
How to import datas in OpenERP 7.0How to import datas in OpenERP 7.0
How to import datas in OpenERP 7.0Jyothi Lekshmi
 
CICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your MindCICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your Mindciconf
 
Il 09 T3 William Spreitzer
Il 09 T3 William SpreitzerIl 09 T3 William Spreitzer
Il 09 T3 William Spreitzerwspreitzer
 
Final report mobile shop
Final report   mobile shopFinal report   mobile shop
Final report mobile shopViditsingh22
 
.NET Portfolio
.NET Portfolio.NET Portfolio
.NET Portfoliomwillmer
 
Dbva dotnet programmer_guide_chapter8
Dbva dotnet programmer_guide_chapter8Dbva dotnet programmer_guide_chapter8
Dbva dotnet programmer_guide_chapter8Shakeel Mujahid
 
A multi submission importer for easyform
A multi submission importer for easyformA multi submission importer for easyform
A multi submission importer for easyformAnnette Lewis
 
Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Rich Helton
 
Laravel 8 export data as excel file with example
Laravel 8 export data as excel file with exampleLaravel 8 export data as excel file with example
Laravel 8 export data as excel file with exampleKaty Slemon
 
SH 2 - SES 1 - Stitch_Workshop_TLV.pptx
SH 2 - SES 1 - Stitch_Workshop_TLV.pptxSH 2 - SES 1 - Stitch_Workshop_TLV.pptx
SH 2 - SES 1 - Stitch_Workshop_TLV.pptxMongoDB
 
Implementing Your Full Stack App with MongoDB Stitch (Tutorial)
Implementing Your Full Stack App with MongoDB Stitch (Tutorial)Implementing Your Full Stack App with MongoDB Stitch (Tutorial)
Implementing Your Full Stack App with MongoDB Stitch (Tutorial)MongoDB
 
ADBMS ASSIGNMENT
ADBMS ASSIGNMENTADBMS ASSIGNMENT
ADBMS ASSIGNMENTLori Moore
 
[2015/2016] Require JS and Handlebars JS
[2015/2016] Require JS and Handlebars JS[2015/2016] Require JS and Handlebars JS
[2015/2016] Require JS and Handlebars JSIvano Malavolta
 
SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling
SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling
SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling Sencha
 
Introduction to OO, Java and Eclipse/WebSphere
Introduction to OO, Java and Eclipse/WebSphereIntroduction to OO, Java and Eclipse/WebSphere
Introduction to OO, Java and Eclipse/WebSphereeLink Business Innovations
 

Similar to Best practices on how to import data into OpenERP. Cyril Morisse, Audaxis (20)

How to import datas in OpenERP 7.0
How to import datas in OpenERP 7.0How to import datas in OpenERP 7.0
How to import datas in OpenERP 7.0
 
Apps1
Apps1Apps1
Apps1
 
CICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your MindCICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your Mind
 
Il 09 T3 William Spreitzer
Il 09 T3 William SpreitzerIl 09 T3 William Spreitzer
Il 09 T3 William Spreitzer
 
Final report mobile shop
Final report   mobile shopFinal report   mobile shop
Final report mobile shop
 
.NET Portfolio
.NET Portfolio.NET Portfolio
.NET Portfolio
 
Dbva dotnet programmer_guide_chapter8
Dbva dotnet programmer_guide_chapter8Dbva dotnet programmer_guide_chapter8
Dbva dotnet programmer_guide_chapter8
 
Readme
ReadmeReadme
Readme
 
ASP DOT NET
ASP DOT NETASP DOT NET
ASP DOT NET
 
A multi submission importer for easyform
A multi submission importer for easyformA multi submission importer for easyform
A multi submission importer for easyform
 
Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4
 
Laravel 8 export data as excel file with example
Laravel 8 export data as excel file with exampleLaravel 8 export data as excel file with example
Laravel 8 export data as excel file with example
 
RAD CRUD
RAD CRUDRAD CRUD
RAD CRUD
 
SH 2 - SES 1 - Stitch_Workshop_TLV.pptx
SH 2 - SES 1 - Stitch_Workshop_TLV.pptxSH 2 - SES 1 - Stitch_Workshop_TLV.pptx
SH 2 - SES 1 - Stitch_Workshop_TLV.pptx
 
Implementing Your Full Stack App with MongoDB Stitch (Tutorial)
Implementing Your Full Stack App with MongoDB Stitch (Tutorial)Implementing Your Full Stack App with MongoDB Stitch (Tutorial)
Implementing Your Full Stack App with MongoDB Stitch (Tutorial)
 
ADBMS ASSIGNMENT
ADBMS ASSIGNMENTADBMS ASSIGNMENT
ADBMS ASSIGNMENT
 
[2015/2016] Require JS and Handlebars JS
[2015/2016] Require JS and Handlebars JS[2015/2016] Require JS and Handlebars JS
[2015/2016] Require JS and Handlebars JS
 
SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling
SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling
SenchaCon 2016: Handle Real-World Data with Confidence - Fredric Berling
 
Introduction to OO, Java and Eclipse/WebSphere
Introduction to OO, Java and Eclipse/WebSphereIntroduction to OO, Java and Eclipse/WebSphere
Introduction to OO, Java and Eclipse/WebSphere
 
Ecad final
Ecad finalEcad final
Ecad final
 

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
 
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
 
Digital Transformation at Old MacDonald Farms: A Personal Story
Digital Transformation at Old MacDonald Farms: A Personal StoryDigital Transformation at Old MacDonald Farms: A Personal Story
Digital Transformation at Old MacDonald Farms: A Personal StoryOdoo
 

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!
 
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
 
Digital Transformation at Old MacDonald Farms: A Personal Story
Digital Transformation at Old MacDonald Farms: A Personal StoryDigital Transformation at Old MacDonald Farms: A Personal Story
Digital Transformation at Old MacDonald Farms: A Personal Story
 

Recently uploaded

HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsMichael W. Hawkins
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear RegressionRavindra Nath Shukla
 
Pharma Works Profile of Karan Communications
Pharma Works Profile of Karan CommunicationsPharma Works Profile of Karan Communications
Pharma Works Profile of Karan Communicationskarancommunications
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Roland Driesen
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...lizamodels9
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Dave Litwiller
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfAdmir Softic
 
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
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityEric T. Tung
 
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Delhi Call girls
 
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
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Servicediscovermytutordmt
 
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
 
John Halpern sued for sexual assault.pdf
John Halpern sued for sexual assault.pdfJohn Halpern sued for sexual assault.pdf
John Halpern sued for sexual assault.pdfAmzadHosen3
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesDipal Arora
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...Any kyc Account
 

Recently uploaded (20)

HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael Hawkins
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear Regression
 
Pharma Works Profile of Karan Communications
Pharma Works Profile of Karan CommunicationsPharma Works Profile of Karan Communications
Pharma Works Profile of Karan Communications
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
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
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League City
 
Forklift Operations: Safety through Cartoons
Forklift Operations: Safety through CartoonsForklift Operations: Safety through Cartoons
Forklift Operations: Safety through Cartoons
 
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
 
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
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Service
 
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...
 
John Halpern sued for sexual assault.pdf
John Halpern sued for sexual assault.pdfJohn Halpern sued for sexual assault.pdf
John Halpern sued for sexual assault.pdf
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
 
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pillsMifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
 

Best practices on how to import data into OpenERP. Cyril Morisse, Audaxis

  • 1. BEST PRACTICES ON HOW TO IMPORT DATA INTO OPENERP Why  you  should  love  CSV  Import     Cyril  MORISSE  (  @cmorisse  )    
  • 2.   Introduc*on     ¨  With  Test  Driven  Development  and  Data   Migra*on,  we  need  to  gather  and  enter  real  data   owned  by  users   ¨  We  need  a  data  format  within  user’s  reach   (compared  to  XML)   ¨  As  of  version  7.0  OpenERP  has  redesigned  the   import  system  (“base_import”  module):   ¤  It  has  nearly  everything  right  out  of  the  box   ¤  Only  missing  feature  is  user  oriented  documenta*on   ¨  This  talk  is  an  overview  of  the  module  
  • 3. Installa*on   ¨  Export  func*onality  is  available  right  out  of  the  box   ¨  BUT  import  func*onality  must  be  installed:   ¤  Import  is  covered  by  “base_import”  module   ¤  Import  must  be  installed  via  SeTngs  /  Configura*on  /   General  SeTngs   ¨  Then  “Import”  link  is  available  in  all  list/tree  views  
  • 4. CSV  import  issues   ¨  When  impor*ng  data  using  CSV,  you  will   face  3  main  issues:   ¤ Iden*fy  the  fields  required  for  an  import   ¤ Understand  “OpenERP  External  IDs”     ¤ Understand  how  to  import  the  different  type   of  fields   n Simple  fields  (  date,  text,  numbers,  boolean,…)   n Rela*onal  fields:   n Many2many   n Many2One   n One2many  
  • 5. Iden*fy  fields  to  import   ¨  To  iden*fy  the  columns  required  to  import  an   object:   1.  Ac*vate  “Developer  Mode”   2.  Write  down  all  the  fields  you  must  enter  manually   3.  Export  a  file  with  all  these  fields     4.  Delete  values  in  the  id  column  then  re-­‐import  the   file  to  check  everything  is  ok   5.  If  a  column  is  missing  ;  do  it  again  from  step  3  and   add  the  column    
  • 6. Understand  IDs   ¨  Example  Product  categories     ¨  CSV  Import  allows  User  Defined  External  IDs   ¤  External  IDs  are  symbolic  names  for  records   ¤  Format  is  module_name.id_name    
  • 7. Understand  IDs  (con*nued)   ¨  User  defined  IDs  are  saved  in  the  database  and  can  be   retrieved  via:   ¤  SeTngs  /  Technical  /  Sequences  &  Iden*fiers  /  External  Iden*fiers    
  • 8. Understand  IDs  (end)   ¨  User  defined  IDs  allow  to  manage  Import  /  Update  of  data   ¨  During  import:   ¤  If  a  record  exists  with  this  ID,  OpenERP  will  update  the  record   ¤  If  no  record  exists  with  this  ID,  OpenERP  will  create  a  new  record     ¨  Export  IDs   ¤  During  Export,  OpenERP  creates  an  export  ID  for  all  records  without   IDs  (manually  created  records)     ¨  In  the  database  all  External  IDs  are  stored  in  table  ir_model_data  
  • 9. Import  simple  Fields   Field type Cell content Example char, text Content surrounded by “ “This is a text ""value”"." float Number with . as decimal separator 3.15 boolean True or False “0” or 0 or “False” or False or “1” or 1 or “True” or True date YYYY-MM-DD 2013-06-10 datetime YYYY-MM-DD HH:MM:SS 2013-06-10 07:07 selection Value as given by “developer mode” inspector reference Value in database is “object,id”
  • 10. Import  rela*ons:  Many2One   ¨  Many2one     ¨  This  is  the  simplest  rela*on  to  import  in  CSV   ¤  Just  use  id  of  referenced  object   id parent_id product_category ...
  • 11. Import  rela*ons:  Many2Many   ¨  Eg.  Customer  Tags   ¨  Many2many  involves  3  tables         ¨  Really  simple  in  CSV  ;  enter  all  values  separated  by   comma  with  no  space     ... id res_partner id ... res_partner_category category_idpartner_id res_partner_res_partner_category_rel
  • 12. Import  rela*ons:  One2Many   ¨  Eg.  Quota*ons/  Quota*ons  Lines       ¨  In  CSV:  Enter  lines  while  you  don’t  repeat  header  object  fields   ¤  Child  objects  column  format  is     “one2many_fieldname/child_object_field”             ... id sale_order id order_id sale_order_line ...
  • 13. Integrate  CSV  in  your  development   workflow   ¨  Create  a  set  of  shared  Google  Spreadsheet  that  your   users  will  complete  with  project  data     ¨  Organize  your  OpenERP  project  in  3  modules:   ¤  project_core  with  code  and  technical  parameters   ¤  project_data  :  will  contains  only  data  in  CSV  files   ¤  project_test  :  contains  your  test  code  and  test  specific  data   ¨  Use  a  tool  to  automate  export  and  download  of  the   Google  Spreadsheet  into  the  project_data  module   ¤  hkp://bitbucket.org/cmorisse/edgdd     ¨  Your  users  will  be  able  to  “coopera*vely”  enter  their   data  and  you  will  be  able  to  seamlessly  integrate  and   use  this  data  in  your  project    
  • 14. More  informa*on?   www.audaxis.com     Contact  us   openerp@audaxis.com         14 Visit our booth at OpenERP Community Days in Hall K