导入和导出数据
Odoo中的任何功能都自带导入(创建、更新)、导出数据(Excel、csv)功能。常用于系统初始化、数据分析、批量数据处理。此功能也作为 Odoo实施人员,必备技能之一。
从Odoo导出数据
从Odoo中导出数据,可用于做各种数据分析。此外,导出的数据经人工批量处理后,可导入并更新现有数据!
在功能列表中,勾选需要导出的数据记录,然后点击 动作 导出
在弹出的窗体中,有几个数据选项
1. 我想更新数据(导入兼容的导出):勾选则仅显示可导入字段,不勾选则显示所有字段
2. 搜索:输入字段名称,可快速筛选
3. 右箭头:点击可展开查看该字段中包含的子字段,如需搜索子字段,请先展开,再搜索
4. +号:添加字段至右则的导出列表中
5. 导出格式:可选 XLSX、CSV两种格式导出
6. 模板:在下拉列表中选择新模板,可保存当前选择的字段作为新的导出模板
7. 上下箭头:可调整导出字段在文件中所在的列顺序
8. 删除:删除已选择的多余的字段
将数据导入Odoo
在系统实施过程中或需大量创建、更新数据时,导入功能尤其重要!相对于直接使用数据库语句进行处理,导入数据更为安全且不易出错。
导入操作
在功能列表 中,选择 点击导入记录,然后选择 .xlsx 或 .csv 文件
选择导入文件后,系统将自动识别导入文件内容,并显示在导入页面中
1. 导入格式:针对csv格式的文件,系统可能无法正确判断导入文件中的编码、文本格式、分隔符、小数格式、日期格式,可在导入前人工校正后,再导入
2. 导入时跟踪导入历史:数据导入后,在导入的记录表单中追加跟踪记录,便于识别
3. 允许与子字段匹配:当要导入的字段特定为某个模型的子字段时,可选择此项,选择后在 4 下拉菜单中,能看到更多的子字段
4. 匹配字段:当导入文件的标题与系统中字段名称一致时,系统将会自动识别。当名称不匹配时,可通过下拉人工选择要匹配的导入字段
支持导入带货币符号的数值
数据库 ID 和外部 ID之间的区别
某些字段的定义与另一个对象存在关系。例如:联系人中所在的国家/地区对应着国家/地区对象的某一条记录。导入此类关联字段,Odoo提供了三种方式:
例如:导入联系人所在的国家/地区,可选择以下三种字段以建立关联:
- 国家/地区:国家/地区的名称或代码
- 国家/数据库 ID:对应的国家所在数据库中的ID记录
- 国家/外部 ID:对应的国家所在Odoo中的外部 ID
使用数据库ID或外部ID进行导入,能有效避免因名称重复,引起的导入报错
此外:自定义的外部ID,可应用于另一个表作为引用导入
以下示例为,导入了产品分类
在导入的产品中引用上述定义的产品分类
导入many2many关系字段
导入many2many字段时,应以逗号作为分隔,例如, 我们针对某个客户导入Manufacturer、Retailer时,可把导入字段的值设置为 Manufacturer,Retailer 且逗号间不允许存在空格
导入one2many关系字段
如果需要导入 2 份销售订单,并且它们分别有 3 行和 2 行的记录。 主表只需录入一行即可
导入多份采购订单的示例
导入联系人示例
此外,您还可以通过数据库语句,生成csv文件
在 PSQL 中,编写以下命令:
> copy (select 'company_'||id as "External ID",company_name as "Name",'True' as "Is a Company" from companies) TO '/tmp/company.csv' with CSV HEADER;
以上命令将生成以下内容
External ID,Name,Is a Company company_1,Bigees,True company_2,Organi,True company_3,Boum,True
要为链接到公司的人员创建 CSV 文件,请使用 PSQL中的以下SQL命令:
> copy (select 'person_'||id as "External ID",person_name as "Name",'False' as "Is a Company",'company_'||company_id as "Related Company/External ID" from persons) TO '/tmp/person.csv' with CSV
它生成以下 CSV 文件:
External ID,Name,Is a Company,Related Company/External ID person_1,Fabien,False,company_1 person_2,Laurence,False,company_1 person_3,Eric,False,company_2 person_4,Ramsy,False,company_3
提升效率的秘籍:Odoo导入&导出数据