Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 供应商发票和账户类型_Python_Openerp_Accounting - Fatal编程技术网

Python 供应商发票和账户类型

Python 供应商发票和账户类型,python,openerp,accounting,Python,Openerp,Accounting,我成功地生成了供应商发票。 我现在的问题是,我不能支付我创建的发票(代码)。 这似乎是由于不正确的帐户被用于支付 错误是:如果状态没有从“开放”更改为“付费”,则什么也不会发生 但是,当我从演示数据手动将帐户更改为“X111111债权人(测试)”时,它将毫无问题地获得支付 这是我的密码: for commission in self.browse(cr, uid, ids, context=context): if commission.supplier_invoice.

我成功地生成了供应商发票。 我现在的问题是,我不能支付我创建的发票(代码)。 这似乎是由于不正确的帐户被用于支付

错误是:如果状态没有从“开放”更改为“付费”,则什么也不会发生 但是,当我从演示数据手动将帐户更改为“X111111债权人(测试)”时,它将毫无问题地获得支付

这是我的密码:

    for commission in self.browse(cr, uid, ids, context=context):
        if commission.supplier_invoice.id:
            continue
        journal_ids = self.pool.get('account.journal').search(cr, uid,
                                                              [('type', '=', 'purchase'),
                                                               ('company_id', '=',
                                                                commission.invoice.company_id.id)],
                                                              limit=1)
        if not journal_ids:
            raise osv.except_osv(_('Error!'),  # TODO change text message
                                 _('Please define sales journal for this company: "%s" (id:%d).') % (
                                     'dummy', 'dummy'))
        invoice_line = {
            'name': 'commission',
            'sequence': 5,
            'invoice_id': False,
            'account_id': commission.salesperson.partner_id.property_account_receivable.id,
            'price_unit': commission.commission_total,
            'quantity': 1.0,
        }

        invoice_line_id = self.pool.get('account.invoice.line').create(cr, uid, invoice_line, context=context)
        new_invoice = {
            'name': 'commission on sale',
            'type': 'in_invoice',
            'reference': '',
            'account_id': commission.salesperson.partner_id.property_account_receivable.id,
            'partner_id': commission.salesperson.partner_id.id,
            'journal_id': journal_ids[0],
            'invoice_line': [(6, 0, [invoice_line_id])],
            'currency_id': commission.invoice.currency_id.id,
            'comment': 'test',
            'fiscal_position': commission.salesperson.partner_id.property_account_position.id,
            'company_id': commission.invoice.company_id.id,
            'user_id': uid
        }
        invoice_id = self.pool.get('account.invoice').create(cr, uid, new_invoice, context=context)

        self.write(cr,
                   uid,
                   [commission.id],
                   {'supplier_invoice': invoice_id},
                   context=context)

关于发票创建

'account_id': commission.salesperson.partner_id.property_account_receivable.id
'account_id': commission.salesperson.partner_id.property_account_receivable.id,
在这里,您需要使用应付账款而不是应收账款,因为您要创建供应商发票。所以代码应该是这样的:

'account_id': commission.salesperson.partner_id.property_account_payable.id
关于发票行创建

'account_id': commission.salesperson.partner_id.property_account_receivable.id
'account_id': commission.salesperson.partner_id.property_account_receivable.id,

这里您需要使用产品或产品类别的费用帐户。

有什么问题?您希望发生什么?希望看到更多通用发票模板添加到此项目中: