编程错误:无法调整类型'帐户.account'奥多v8

2024-06-01 22:59:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个方法:

@api.multi
@api.depends('order_picking', 'order_picking.isbn', 'contract_worksheet', 'state')
def accounting_scenarios(self):
    for record in self:
        if not len(record.transporter):
            raise Warning('Please Enter Transporter !')
        elif not len(record.transporter.transp_transit):
            raise Warning('Please assign transit account to the transporter !')
        if record.state in ('awaitingraw'): #('cancel', 'done')
            record.temp = record.contract_worksheet.total_alles - record.contract_worksheet.total_totals
            acc_move = self.env['account.move'] 
            move_lines = [
                (0, 0, {
                    'name': 'name', # a label so accountant can understand where this line come from
                    'debit': record.temp or 0.0, # amount of debit
                    'credit': 0, # amount of credit
                    'account_id': record.transporter.transp_transit, 
                    'date': date,
                    'partner_id': record.transporter, 
                    #'currency_id': currency_id or (account.currency_id.id or False),
                }),
            ]

            journal_id = False
            if record.transporter.transp_transit:
                journals = self.env['account.journal'].search([
                    ('default_debit_account_id', '=', record.transporter.transp_transit.id)
                ])
                if journals:
                    journal_id = journals[0].id
                    acc_move.create({
                    #'period_id': period_id, #Fiscal period
                        'journal_id': journal_id, 
                        'date': fields.Date.today(),
                        'state': 'draft',
                        'line_id': move_lines, 
                    })
        elif record.state in ('work_in_progress'):
            record.temp2 = record.contract_worksheet.total_totals
        elif record.state in ('delivered'):
            record.transporter.transp_transit.debit = record.contract_worksheet.total_alles

我已经意识到debitcredit字段的问题,问题是日记账没有账户(transp_transit)作为默认借方或贷方账户。在

不管怎样,现在它似乎在尝试做account.move,但它给我带来了这样一个问题:

^{pr2}$

有什么想法吗?在

编辑

我班上有这个领域:

transporter = fields.Many2one('res.partner', string="Transporter", domain="[('type_of_supplier','=','transporter')]")

res.partner(转运体)上:

transp_transit = fields.Many2one('account.account', string='Transporter Transit Account')

Tags: inselfidmoveifaccountrecordjournal
1条回答
网友
1楼 · 发布于 2024-06-01 22:59:18

当您传递要创建或写入的值时,请确保没有为多个字段传递object,请传递id

          'partner_id': record.transporter.id

相关问题 更多 >