Odoo 中文社区

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Popular
    • Users
    • Groups

    Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

    由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解

    本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!

    开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

    如果您登录系统碰到问题,请在微信公众号留言:

    onchange时字段只读不保存的问题

    Odoo 新手求助
    5
    17
    6181
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      Kowky last edited by

      做了一个字段A onchange出字段B,同时将B设置了只读属性;结果发现修改A时候 B的值发生了变化 但是保存不上,就是没有写入数据库;

      1 Reply Last reply Reply Quote 0
      • H
        hui last edited by

        字段A onchange出现字段B,是在页面用attr设置的吗,不是的话,可以贴出来代码看看吗?

        看你的要求我觉得字段A onchange出字段在页面attr的invisible设置可行,至于后面的修改A,B发生了变化,而且写入不了数据库,需要看看代码.

        K 2 Replies Last reply Reply Quote 0
        • 稀
          稀里哗啦whf last edited by

          你要先理解B在界面上设置readonly的实质作用,你其实可以换一下思路,设置B不可编辑或者隐藏,要么就干脆换成compute A

          K 1 Reply Last reply Reply Quote 0
          • K
            Kowky last edited by

            0_1504247587554_6fc88428-67cf-4bf3-b514-5f540942f5fe-image.png

            1 Reply Last reply Reply Quote 0
            • K
              Kowky @hui last edited by

              @1234567 根据产品名称控制明细行的所有数据,而有些字段是只读的。当onchange以后值是可以正常可取的,当点击保存后字段并未存储到数据库

              H 1 Reply Last reply Reply Quote 0
              • K
                Kowky @稀里哗啦whf last edited by

                @稀里哗啦whf 计算字段也尝试了,因为我依赖的是产品名称字段onchange明细行的,因为计算字段默认为只读状态。会导致我整张单据都无法操作。

                1 Reply Last reply Reply Quote 0
                • K
                  Kowky last edited by

                  0_1504248245081_a5e3c895-8e4b-4485-98f7-0325a9a92136-image.png

                  1 Reply Last reply Reply Quote 0
                  • K
                    Kowky @hui last edited by

                    @1234567 尝试了一下atrrs过滤,效果一样,在未只读之前是没问题的,当点击保存时值仍然没有保存住。

                    1 Reply Last reply Reply Quote 0
                    • H
                      hui @Kowky last edited by

                      @袭流苏2amor
                      我觉得那需要看看你@api.change('product_name'),以后视图onchange的字段显示如果正确,那需要看看数据类型和名称跟数据库是否匹配,可以在控制台打印出来看看,如果打印处理的数据也是错的,就不是写入的问题了.

                      K 1 Reply Last reply Reply Quote 0
                      • K
                        Kowky @hui last edited by

                        @1234567 数据都没有问题,换了一种处理方式,将需要只读的三个字段通过depends的方式做成计算字段了
                        0_1504252142479_5876072c-2d3e-4712-b9c1-9788790a0ab0-image.png 目前问题已解决,万分感谢您百忙之中提供思路。谢谢!

                        H 2 Replies Last reply Reply Quote 0
                        • H
                          hui @Kowky last edited by

                          @袭流苏2amor

                          哈哈,我水平有限,没帮上忙,解决就好,估计还是没有理解你的需求.哈哈

                          K 1 Reply Last reply Reply Quote 0
                          • K
                            Kowky @hui last edited by

                            @1234567 没事没事,万分感谢!共同学习吗,onchange变化关联字段的时候确实会遇到这个问题。

                            1 Reply Last reply Reply Quote 0
                            • H
                              hui @Kowky last edited by

                              @袭流苏2amor
                              你好,我也遇到这个问题,我觉得是onchange的好处是可以实时看到变化的效果,还有问题就是,如果视图中onchange后的字段设为只读,有时候保存可以看到,有时候看不到的;我用compute的话,只能在保存的话才能看见变化后的结果,用户体验不是很好。

                              1 Reply Last reply Reply Quote 0
                              • digitalsatori
                                digitalsatori 管理员 last edited by

                                @1234567 @袭流苏2amor onchange 不能修改readonly的字段不是问题是设计如此。
                                如果有这样的需求应该采用function字段

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

                                E 1 Reply Last reply Reply Quote 0
                                • E
                                  eric2017 @digitalsatori last edited by

                                  @digitalsatori function字段是什么?如果方便,给个例子或网址,谢谢!

                                  digitalsatori 1 Reply Last reply Reply Quote 0
                                  • digitalsatori
                                    digitalsatori 管理员 @eric2017 last edited by

                                    @eric2017 就是compute字段。参见:http://www.odoo.com/documentation/10.0/reference/orm.html#computed-fields

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

                                    1 Reply Last reply Reply Quote 1
                                    • K
                                      Kowky last edited by

                                      @digitalsatori 在 onchange时字段只读不保存的问题 中说:

                                      compute

                                      谢谢回复, 万分感谢

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post