我正在尝试将数据导入到显然位于下面的表单
我导入的数据是这样的
Customer Contract Start Date Contract End Date
ABC 13/02/12 12/05/14
12/05/14 14/04/16
12/08/16 14/06/18
XYZ 15/04/12 18/08/14
11/05/14 19/05/16
现在我的表单中有2条记录生成子记录,但第一条记录生成的ID为R001,第二条记录为R004。即对于每个导入记录,都会生成一个id(但不使用)。所以有间隔。但这是我已经确定用one2many导入表单值的方法。
现在我需要了解下面的
请指导我做必要的事。如果不清楚,请随时更新帖子。谢谢你的时间。
来自Odony的评论
我的 Register_sequence.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<!-- Sequences for stoc.installed.details (register) -->
<record id="seq_type_register" model="ir.sequence.type">
<field name="name">Register</field>
<field name="code">stock.installed_details</field>
</record>
<record id="seq_register" model="ir.sequence">
<field name="name">Register</field>
<field name="code">stock.installed_details</field>
<field name="prefix">Reg</field>
<field name="padding">3</field>
<field name="company_id" eval="False"/>
</record>
</data>
</openerp>
我的 Python文件
class installed_details(osv.osv):
_name = "stock.installed_details"
_description = "Installed Details"
_columns = {
'name': fields.char('Name', size=64),
'partner_id': fields.many2one('res.partner', 'Customer', required=True, help="Address of Hospital / Medical Centre."),
'product_id': fields.many2one('product.product', 'Product', select=True, domain=[('type', '<>', 'service')], states={'done': [('readonly', True)]}),
'contract_lines' : fields.one2many('contract.contract', 'register_id','Contract'),
}
def create(self, cr, uid, vals, context=None):
if vals.get('name', '/') == '/':
vals['name'] = self.pool.get('ir.sequence').get(cr, uid, 'stock.installed_details') or '/'
return super(Installed_details, self).create(cr, uid, vals, context=context)
installed_details()
class contract_contract(osv.osv):
_name = "contract.contract"
_description = "Contract"
_columns = {
'register_id': fields.many2one('stock.installed_details', 'Register'),
'contract_start_date': fields.date('Contract Start Date'),
'contract_end_date': fields.date('Contract End Date')
}
contract_contract()