跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 新手求助
  4. 在调拨的tree视图中添加收货人姓名电话和地址,怎么添加?

在调拨的tree视图中添加收货人姓名电话和地址,怎么添加?

已定时 已固定 已锁定 已移动 Odoo 新手求助
21 帖子 2 发布者 6.5k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 风 离线
    风 离线
    风飞花
    写于 最后由 编辑
    #1

    就是点击库存,,然后点击菜单,,中的调拨,,在出现的那个出库单列表中添加收货人姓名,电话,地址列
    😧 刚接触odoo,,看了https://www.cnblogs.com/SamNicole1809/archive/2019/06/03/10968113.html添加字段,也不是很明白

    1 条回复 最后回复
    0
    • digitalsatoriD 离线
      digitalsatoriD 离线
      digitalsatori 管理员
      写于 最后由 编辑
      #2

      出库单上有Partner对象,也就是收货人。收货人上有对应的名称,电话,地址。如果要在picking对象上显示Partner对象上的字段,可以定义related字段,然后在tree视图中指定显示这些字段就可以了。

      【上海先安科技】(tony AT openerp.cn)

      1 条回复 最后回复
      0
      • 风 离线
        风 离线
        风飞花
        写于 最后由 风飞花 编辑
        #3

        是需要在代码里边加吗?
        还有,https://www.cnblogs.com/SamNicole1809/archive/2019/06/03/10968113.html这个连接中的说的在models目录中创建sale_order_extension.ph,是指在~\odoo\addons\sale目录下的那个models吗?:anguished_face:

        1 条回复 最后回复
        0
        • digitalsatoriD 离线
          digitalsatoriD 离线
          digitalsatori 管理员
          写于 最后由 编辑
          #4

          对Odoo的修改是不建议在Odoo已有代码中修改的。我们需要用创建自己的模块,并继承原有的Model,这样就可以做修改了。所以对你的第二个问题的回答是:“不是,你需要创建你自己的addon”

          【上海先安科技】(tony AT openerp.cn)

          1 条回复 最后回复
          0
          • 风 离线
            风 离线
            风飞花
            写于 最后由 风飞花 编辑
            #5

            我在addons_path添加了custom-addons,然后在里边建了sale_my文件夹,这个文件夹包含的文件结构如下:

            models
            ---- __init__.py
            ----sale_order_extension.py
            views
            ----sale_order_extension.xml
            __manifest__.py
            

            各自代码如下,基本按照https://www.cnblogs.com/SamNicole1809/archive/2019/06/03/10968113.html里边说明填入代码,后边我在对应的位置看不到新加的字段,,**是哪里出问题了吗?:anguished_face: **(下边图片中红圈的都点击过了)
            微信图片1.png
            微信图片2.png

            __init__.py代码如下:
            
            # -*- coding: utf-8 -*-
            
            from . import sale_order_extension
            

            sale_order_extension.py代码如下

            # -*- coding:utf-8 -*-
            """销售模块扩展"""
            
            from odoo import fields, models
            
            # 销售模块扩展
            class SaleOrderExtension(models.Model):
                """销售模块扩展"""
                _inherit = 'sale.order'
            
                # 销售员
                x_salesman = fields.Many2one(
                    'res.users',
                    string='销售员',
                    related='partner_id.user_id'
                )
            

            sale_order_extension.xml代码如下:

            <?xml version="1.0" encoding="UTF-8" ?>
            <odoo>
            
                <record id="view_order_form_modify" model="ir.ui.view">
                    <field name="name">view.order.form.modify</field>
                    <field name="model">sale.order</field>
                    <field name="inherit_id" ref="sale.view_order_form"/>
                    <field name="arch" type="xml">
                        <!-- 增加``销售员``字段 -->
                        <xpath expr="//group/group/field[@name='partner_id']"
                               position="after"
                        >
                            <field name="x_salesman" />
                        </xpath>
                    </field>
                </record>
            <record id="view_order_tree_modify" model="ir.ui.view">
                    <field name="name">view.order.form.modify</field>
                    <field name="model">sale.order</field>
                    <field name="inherit_id" ref="sale.view_quotation_tree_with_onboarding"/>
                    <field name="arch" type="xml">
                        <!-- 增加``创建人``字段 -->
                        <xpath expr="//field[@name='date_order']"
                               position="after"
                        >
                            <field name="create_uid" />
                        </xpath>
                    </field>
             </record>
            
            </odoo>
            
            __manifest__.py代码如下:
            
            # -*- coding: utf-8 -*-
            {
                'version': '0.1',
                # any module necessary for this one to work correctly
                'depends': ['base', 'sale',],
                # always loaded
                'data': [
                # 'security/ir.model.access.csv',
                'sale_order_extension.xml',
                ],
            }
            
            1 条回复 最后回复
            0
            • digitalsatoriD 离线
              digitalsatoriD 离线
              digitalsatori 管理员
              写于 最后由 编辑
              #6

              你的sale_my/__init__.py有这样的内容吗?

              from . import models
              

              你的sale_order_extension.xml是在views目录下,在manifest文件里没有指定views路径

              【上海先安科技】(tony AT openerp.cn)

              1 条回复 最后回复
              0
              • 风 离线
                风 离线
                风飞花
                写于 最后由 风飞花 编辑
                #7

                @风飞花 在 在调拨的tree视图中添加收货人姓名电话和地址,怎么添加? 中说:
                文件结构如下:

                models
                models/__init__.py
                models/sale_order_extension.py
                views
                views/sale_order_extension.xml
                __init__.py
                __manifest__.py
                

                各自代码如下,然后还是按照上贴途中那几个都点击一下,也是没有结果显示:anguished_face: :

                models/ __init__.py代码如下:
                
                # -*- coding: utf-8 -*-
                
                from . import sale_order_extension
                

                models/ sale_order_extension.py代码如下:

                # -*- coding:utf-8 -*-
                """销售模块扩展"""
                
                from odoo import fields, models
                
                # 销售模块扩展
                class SaleOrderExtension(models.Model):
                    """销售模块扩展"""
                    _inherit = 'sale.order'
                
                    # 销售员
                    x_salesman = fields.Many2one(
                        'res.users',
                        string='销售员',
                        related='partner_id.user_id'
                    )
                

                views/sale_order_extension.xml代码如下:

                <?xml version="1.0" encoding="UTF-8" ?>
                <odoo>
                
                    <record id="view_order_form_modify" model="ir.ui.view">
                        <field name="name">view.order.form.modify</field>
                        <field name="model">sale.order</field>
                        <field name="inherit_id" ref="sale.view_order_form"/>
                        <field name="arch" type="xml">
                            <!-- 增加``销售员``字段 -->
                            <xpath expr="//group/group/field[@name='partner_id']"
                                   position="after"
                            >
                                <field name="x_salesman" />
                            </xpath>
                        </field>
                    </record>
                <record id="view_order_tree_modify" model="ir.ui.view">
                        <field name="name">view.order.form.modify</field>
                        <field name="model">sale.order</field>
                        <field name="inherit_id" ref="sale.view_quotation_tree_with_onboarding"/>
                        <field name="arch" type="xml">
                            <!-- 增加``创建人``字段 -->
                            <xpath expr="//field[@name='date_order']"
                                   position="after"
                            >
                                <field name="create_uid" />
                            </xpath>
                        </field>
                 </record>
                
                </odoo>
                
                __manifest__.py代码如下:
                
                # -*- coding: utf-8 -*-
                {
                    'version': '0.1',
                    'depends': ['base', 'sale',],
                    'data': [
                    'views/sale_order_extension.xml',
                    ],
                }
                
                __init__.py代码如下
                
                from . import models
                
                1 条回复 最后回复
                0
                • digitalsatoriD 离线
                  digitalsatoriD 离线
                  digitalsatori 管理员
                  写于 最后由 编辑
                  #8

                  好象,似乎,你没有安装自己的模块啊。你的__manifest__.py里缺少类似'name': 'My Sale Extension'

                  【上海先安科技】(tony AT openerp.cn)

                  风 1 条回复 最后回复
                  0
                  • 风 离线
                    风 离线
                    风飞花
                    在 回复了 digitalsatori 最后由 风飞花 编辑
                    #9

                    @digitalsatori

                    __manifest__.py代码修改如下,不过还是看不到效果,在应用里边也没有增加东西
                    
                    # -*- coding: utf-8 -*-
                    {
                        'name':'测试',
                        'description':'sale的form、tree、kanban模块显示内容的扩展',
                        'version': '1.0',
                        'license': 'LGPL-3',
                        'depends': ['base', 'sale',],
                        'data': [
                            'views/sale_order_extension.xml',
                        ],
                    }
                    
                    1 条回复 最后回复
                    0
                    • digitalsatoriD 离线
                      digitalsatoriD 离线
                      digitalsatori 管理员
                      写于 最后由 编辑
                      #10

                      所以你的模块的路径是 custom-addons/sale_my
                      custom-addons添加到了odoo的配置文件中的addons_path中了?

                      你是如何启动Odoo的,在启动参数中有没有用-c xxxxx.conf指向你上面的配置文件?

                      如果代码和配置都对的情况下,点击刷新本地模块列表按钮后,去掉默认的应用(App)过滤条件后就可以搜索sale_my(你的Odoo模块名)

                      找到模块后点击“安装”按钮,没有报错的话,你就应该成功了,检查你的修改结果。

                      【上海先安科技】(tony AT openerp.cn)

                      风 1 条回复 最后回复
                      0
                      • 风 离线
                        风 离线
                        风飞花
                        在 回复了 digitalsatori 最后由 风飞花 编辑
                        #11

                        @digitalsatori 在 在调拨的tree视图中添加收货人姓名电话和地址,怎么添加? 中说:

                        你是如何启动Odoo的,在启动参数中有没有用-c xxxxx.conf指向你上面的配置文件?

                        我就是在windows中下载官网一健安装程序安装,这样启动参数怎么修改

                        1 条回复 最后回复
                        0
                        • digitalsatoriD 离线
                          digitalsatoriD 离线
                          digitalsatori 管理员
                          写于 最后由 编辑
                          #12

                          我在addons_path添加了custom-addons,然后在里边建了sale_my文件夹

                          你是这样说的,所以你将custom-addons添加在哪里了?

                          我没有在Windows下装过Odoo,不太清楚默认的配置文件的位置,网上说是在 C:\Program Files (x86)\Odoo 11.0\server\odoo.conf 不知道对不对。

                          【上海先安科技】(tony AT openerp.cn)

                          风 1 条回复 最后回复
                          0
                          • 风 离线
                            风 离线
                            风飞花
                            在 回复了 digitalsatori 最后由 编辑
                            #13

                            @digitalsatori

                            就是下边这么配置的,,后边那个是添加的,前边那个是默认的
                            custom-addons文件夹也是放在server文件夹下边
                            addons_path = d:\Program Files\Odoo12\server\odoo\addons,d:\Program Files\Odoo12\server\custom-addons

                            1 条回复 最后回复
                            0
                            • digitalsatoriD 离线
                              digitalsatoriD 离线
                              digitalsatori 管理员
                              写于 最后由 编辑
                              #14

                              你的设置应该都没问题。搜你的模块:sale_my的时候需要去掉那个默认的“应用”过滤规则,如下图:

                              应用_-_Odoo.png

                              【上海先安科技】(tony AT openerp.cn)

                              风 1 条回复 最后回复
                              0
                              • 风 离线
                                风 离线
                                风飞花
                                在 回复了 digitalsatori 最后由 风飞花 编辑
                                #15

                                @digitalsatori
                                不知道什么问题,第三方APP都刷出来了,,sale_my就是没出来,我就算吧这个文件夹放到程序默认的odoo\addons里边也刷不出来(估计应该是哪里有问题)

                                先不管了,,也就是说要想https://www.cnblogs.com/SamNicole1809/archive/2019/06/03/10968113.html里边说的增加字段,或者是说想在库存的tree中增加收货人姓名、电话、地址等都是要自定义一个模块,然后related字段,并显示的吧?(没办法在视图字段那边直接添加是吧)

                                1 条回复 最后回复
                                0
                                • digitalsatoriD 离线
                                  digitalsatoriD 离线
                                  digitalsatori 管理员
                                  写于 最后由 编辑
                                  #16

                                  建议你还是看官方文档吧:
                                  https://www.odoo.com/documentation/12.0/howtos/backend.html

                                  网上东一块西一块的文章好多都有问题的。

                                  【上海先安科技】(tony AT openerp.cn)

                                  风 1 条回复 最后回复
                                  0
                                  • 风 离线
                                    风 离线
                                    风飞花
                                    在 回复了 digitalsatori 最后由 风飞花 编辑
                                    #17

                                    @digitalsatori
                                    老是看到教材中用命令行创建模块,,Windows中怎么用命令行,我输入odoo-bin等,都说不是内部命令什么的

                                    是直接打开windows的cmd,输入下边代码就可执行吗?

                                    比如下边代码:

                                    $ odoo-bin scaffold <module name> <where to put it>
                                    
                                    
                                    1 条回复 最后回复
                                    0
                                    • digitalsatoriD 离线
                                      digitalsatoriD 离线
                                      digitalsatori 管理员
                                      写于 最后由 编辑
                                      #18

                                      windows下的odoo-bin是在d:\Program Files\Odoo12\server\目录下的。你可以把这个目录加到环境目录下,这样就不需要每次都要输入完整路径了。

                                      另外Windows下建议使用PowerShell。不过最好还是在Linux下搞开发。

                                      【上海先安科技】(tony AT openerp.cn)

                                      1 条回复 最后回复
                                      0
                                      • 风 离线
                                        风 离线
                                        风飞花
                                        写于 最后由 编辑
                                        #19

                                        1569717160(1).png

                                        我这么用命令,,发现都是不行的;怎么感觉别人简单的,,我这便都有问题😧

                                        1 条回复 最后回复
                                        0
                                        • digitalsatoriD 离线
                                          digitalsatoriD 离线
                                          digitalsatori 管理员
                                          写于 最后由 编辑
                                          #20

                                          windows下应该是odoo-bin.exe吧,你要看这个执行文件在windows下的名字啊。

                                          【上海先安科技】(tony AT openerp.cn)

                                          1 条回复 最后回复
                                          0

                                          • 登录

                                          • 没有帐号? 注册

                                          • 登录或注册以进行搜索。
                                          • 第一个帖子
                                            最后一个帖子
                                          0
                                          • 版块
                                          • 标签
                                          • 热门
                                          • 用户
                                          • 群组