저장 버튼을 클릭하면 양식 다운로드 모델의 form_serial_no 필드에있는 시퀀스를 만들려고합니다. 이 form_serial_no 필드는 동일한 models.py 파일에서 companyname 모델의 company_short_code 필드를 선택하고 7 자리 숫자 (예 : CHN0000001)로 채 웁니다. 여기서 CHN은 company_short_code 필드의 값이고 0000001은 레코드의 첫 번째 시퀀스입니다. 내가 formdownload 테이블 form_serial_no 필드 생성에 대한 기록이없는 검사 할 때동일한 모델 파일에서 다른 클래스의 필드 값을 사용하여 시퀀스 생성
models.py 코드
class CompanyName(models.Model):
_name = 'companyname'
_rec_name = 'company_name'
company_name = fields.Char(string="Company Name", required=True)
company_short_code = fields.Char(string="Company short code", required=True)
class FormDownload(models.Model):
_name = 'formdownload'
name = fields.Many2one('companyname', string="Company Name", ondelete='cascade',
required=True)
form_serial_no = fields.Char(string="Form Serial No", readonly=True)
status = fields.Boolean(string="Status", default=False)
@api.model
def create(self, vals):
vals['form_serial_no'] = vals['name']
if vals:
vals['form_serial_no'] = self.env['ir.sequence'].get('formdownload')
return super(FormDownload, self).create(vals)
sequences.xml 코드
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<!-- Sequence for form download serial number -->
<record id="ref_code_form_serial_no" model="ir.sequence.type">
<field name="name">Sequence for form download serial number</field>
<field name="code">formdownload.form_serial_no</field>
</record>
<record id="seq_form_serial_no" model="ir.sequence">
<field name="name">Sequence for form download serial number</field>
<field name="code">formdownload.form_serial_no</field>
<field name="prefix">company_short_code</field>
<field name="padding">7</field>
<field name="company_id" eval="False"/>
</record>
</data>
</openerp>
: 다음은 내 코드 조각입니다. 친절하게 나를 조사하도록 도와주세요.
귀하의 회신에 감사드립니다. Emipro, 귀하의 조언에 따라 해냈습니다 ...하지만 여전히 똑같습니다. – John