Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.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
如何在Odoo 12中使用Python XML-RPC注册付款_Python_Api_Odoo_Payment_Xml Rpc - Fatal编程技术网

如何在Odoo 12中使用Python XML-RPC注册付款

如何在Odoo 12中使用Python XML-RPC注册付款,python,api,odoo,payment,xml-rpc,Python,Api,Odoo,Payment,Xml Rpc,首先,我创建了函数: def invoiceRegisterPayment(self,register_payment_row): confirm_result = self.ODOO_OBJECT.execute_kw( self.DATA, self.UID, self.PASS, 'account.payment', 'action_validate_invoice_paymen

首先,我创建了函数:

def invoiceRegisterPayment(self,register_payment_row):        
    confirm_result = self.ODOO_OBJECT.execute_kw(
        self.DATA, 
        self.UID, 
        self.PASS, 
        'account.payment', 
        'action_validate_invoice_payment', 
        register_payment_row)        
    return confirm_result
然后我传递了以下参数:

register_payment_row = [
    [payment_id],
    {
        "active_id":invoice_id,
        "active_ids":[invoice_id],
        "active_model": "account.invoice",
        "default_invoice_ids":[[4,invoice_id,None]],
        "journal_type":"sale",
        "lang":"en_US",
        "search_disable_custom_filters": True,
        "type": "out_invoice",
        "tz": False,
        "uid": 2
    } ]
但它显示了以下错误:“应该只调用此方法来处理单个发票的付款。”

这是注册表\付款\行的打印:

[[67], {'active_id': 119, 'active_ids': [119], 'active_model': 'account.invoice', 'default_invoice_ids': [4, 119, None], 'journal_type': 'sale', 'lang': 'en_US', 'search_disable_custom_filters': True, 'type': 'out_invoice', 'tz': False, 'uid': 2}]

请尝试以下数据结构并通过创建方法account.payment模型

 { invoice_ids: [ [ 4, "Invoice Id", 'None' ] ],
  default_invoice_ids: [ [ 4, "Invoice Id", 'None' ] ],
  amount: 'Amount',
  payment_date: '2019-05-21 02:55:52',
  payment_type: 'inbound',
  has_invoices: true,
  currency_id: 1,
  journal_id: 6,
  payment_method_id: 1,
  partner_id: 226,
  partner_type: 'customer',
  communication: 'INV/2019/0141/44',
  name: 'INV/2019/0141/44' }

尝试通过从中提取
[payment\u id],
register\u payment\u row
作为字典传递,并将
[payment\u id],
添加到
self.ODOO\u对象。在
register\u payment\u row
之前执行\u kw()
仍然会给我相同的错误定义invoiceRegisterPayment(sel,payment\u-payment\u-row):confirm_result=self.ODOO_OBJECT.execute_kw(self.DATA,self.UID,self.PASS,'account.payment','action_validate_invoice_payment',[payment_id,register_payment_row])return confirm_result与我在action_validate_invoice_payment_payment方法中如何传递建议的数据结构有相同的问题。