콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
1 회신
11272 화면

in .py file--

class hotel_folio(osv.osv):


         _name = 'hotel.folio'
        _description = 'hotel folio new'
        _columns = {
            'sale_lines':fields.one2many('hotel.sale.line', 'folio_id', ondelete='cascade'),
            }

hotel_folio()

    class hotel_sale_line(osv.osv):

        _name = 'hotel.sale.line'
        _description = "Sale Line"
        _columns = {
                'order_line': fields.one2many('sale.order', 'order_line', 'Order Lines'),
                'folio_id':fields.many2one('hotel.folio'),
                }

hotel_sale_line()

And in .xml file--

                        <field name="sale_lines" colspan="4" nolabel="1">
                            <form string="Sale Order Line">
                            <separator string="Sale Order"/>
                            <field name="order_line" select="1" colspan="4" nolabel="1"/>                               
                            </form>
                            <tree string="Sale Order Line">
                            <field name="order_line" select="1"/>                               
                            </tree>
                        </field>

the error is---

File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server.\openerp\osv\orm.py", line 4469, in create File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server.\openerp\osv\fields.py", line 557, in set File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server\openerp\addons\sale_stock\sale_stock.py", line 75, in create File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server\openerp\addons\sale\sale.py", line 337, in create File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server\openerp\addons\mail\mail_thread.py", line 242, in create File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server.\openerp\osv\orm.py", line 4469, in create File "C:\Program Files\OpenERP 7.0-20130627-231102\Server\server.\openerp\osv\fields.py", line 554, in set TypeError: 'long' object is not iterable

아바타
취소
베스트 답변

Hi,

  1. the ondelete attribure isn't in the right place
  2. we don't use select="1" in one2many fields
  3. You should create the relation id field (order_line) in sale.order object

Try this for your python file:

class hotel_folio(osv.osv):
         _name = 'hotel.folio'
        _description = 'hotel folio new'
        _columns = {
            'sale_lines':fields.one2many('hotel.sale.line', 'folio_id','Lines' ),
            }

hotel_folio()

class hotel_sale_line(osv.osv):

        _name = 'hotel.sale.line'
        _description = "Sale Line"
        _columns = {
                'order_line': fields.one2many('sale.order', 'order_line', 'Order Lines'),
                'folio_id':fields.many2one('hotel.folio','Related Folio', ondelete='cascade'),
                }
hotel_sale_line()
아바타
취소
작성자

in sale.order, the relation was established already like this--------------------------- 'order_line': fields.one2many('sale.order.line', 'order_id', 'Order Lines', readonly=True, states={'draft': [('readonly', False)], 'sent': [('readonly', False)]}),

This relation is between sale.order and sale.order.line. Your need is not clear, you may want that your 'hotel.folio' has many sale.order.line !!

관련 게시물 답글 화면 활동
0
3월 15
4853
1
3월 15
9132
1
10월 20
4916
1
5월 25
906
1
1월 25
1656