如何在odoo中按顺序添加动态前缀
我正在尝试使用动态前缀实现一个序列,但我不能。 我无法将变量*.py传递给我的*.xml 我尝试使用上下文和域,但收到以下错误消息: AssertionError:Element odoo有额外的内容:记录,第4行 我的xml代码是:如何在odoo中按顺序添加动态前缀,odoo,odoo-11,Odoo,Odoo 11,我正在尝试使用动态前缀实现一个序列,但我不能。 我无法将变量*.py传递给我的*.xml 我尝试使用上下文和域,但收到以下错误消息: AssertionError:Element odoo有额外的内容:记录,第4行 我的xml代码是: <?xml version="1.0" encoding="utf-8"?> <odoo> <record id="seq_obra" model="ir.sequence"> <field name=
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="seq_obra" model="ir.sequence">
<field name="name">Secuencia Obra</field>
<field name="code">secuencia.obra</field>
<field name="prefix">%(prefijo)</field> <-- this is the variable that i want to read from my .py
<field name="padding">3</field>
</record>
我的密码是:
class Poscontrata(models.Model):
_name = 'poscontrata'
name = fields.Char(string='Descripcion', required=True)
sigla = fields.Char(required=True)
area_id = fields.Many2many('area', string='Area')
active = fields.Boolean(default=True)
@api.model
def create (self,values):
area_cod = values['area_id'][0][2]
ctd_area_dsc = len(area_cod)
for x in range(0, ctd_area_dsc):
prefijo = '-' + values['sigla'] + '-' + self.env['area'].search([('id', '=', area_cod[x])], limit=1).sigla + '-'
function_call_sequence_and_send_variable('secuencia.obra','prefijo') <-- this is the function that i need
return super (Poscontrata,self).create(values)
提前感谢试试这个:
name=self.env['ir.sequence']。在python函数中求解'your_sequence_code'时,只取序列的下一个数字,然后构造我的新名称 py中的Python函数:
@api.model
def create(self, vals):
correlativo_en_db = self.env['ir.sequence'].next_by_code('ruta.sequence')
numero_correlativo = re.findall("\d+", correlativo_en_db)[0]
fecha_entrega = vals['fecha']
correlativo = fecha_entrega + '/' + numero_correlativo
vals['name'] = correlativo
result = super(Ruta, self).create(vals)
我的Sequence记录XML:
<record id="seq_ruta" model="ir.sequence">
<field name="name">Ruta</field>
<field name="code">ruta.sequence</field>
<field name="prefix">X</field>
<field name="padding">2</field>
<field name="use_date_range">True</field>
<field name="company_id" eval="False"/>
</record>
为什么不尝试使用browseid而不是searchid=id,limit=1?您想做什么?如果要设置动态序列,则该序列已在设置中。