插入一对多和一对多字段 [英] insert into one To many and many To one fields

查看:102
本文介绍了插入一对多和一对多字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用android odoo-mobile框架,这就是我要在createRecord()的帮助下在线插入记录的方式,现在我想在odoo数据库的manyTomany和oneTomany字段中插入记录.我不知道如何插入online.please帮助我. 谢谢!

I am using android odoo-mobile framework and this is how i am inserting a record online with the help of createRecord() now I want to insert record in manyTomany and oneTomany field in odoo database.I dont know how to insert it online.please help me. Thanks!

这就是我在线插入/创建新记录的方式.

this is how i am inserting/creating a new record online.

protected OdooResult doInBackground(Void... voids)
 {
     ORecordValues values = new ORecordValues();
     values.put("partner_id", Integer.parseInt(resPartnerArrayList.get(idc).get_id()));
     String UTCDate = toUTCTime(binding.qOrderDate.getText().toString())
      values.put("date_order", UTCDate);
      if(!expDate.isEmpty())
      {
         values.put("validity_date",binding.qExpirationDate.getText().toString());
      }
      if(!paymentTerms.isEmpty())
      {
         values.put("payment_term_id", Integer.parseInt
                                (paymentTermArrayList.get(idP).get_id()));
      }               
      if(!binding.qUntaxedAmount.getText().toString().isEmpty())
      {
         values.put("amount_untaxed",binding.qUntaxedAmount.getText().toString());
      }
      if(!binding.qTotal.getText().toString().isEmpty())
      {
         values.put("amount_total", binding.qTotal.getText().toString());
      }
      if(!binding.qTaxes.getText().toString().isEmpty())
      {
         values.put("amount_tax", binding.qTaxes.getText().toString());
      }
  return odoo.createRecord("sale.order", values);
}

推荐答案

这是为我工作的代码.

ORecordValues orderlineValues = new ORecordValues();
List<Integer> tax_id = new ArrayList<>();
for (int j = 0; j < finalOrderlineData.get(i).getTaxes().size(); j++)
{
    tax_id.add(Integer.parseInt(finalOrderlineData.get(i).getTaxes().get(j)));
}
List<Object> m2mRecords = new ArrayList<>();
m2mRecords.add(6);
m2mRecords.add(false);
m2mRecords.add(tax_id);
List<Object> manyToManyRecord = new ArrayList<>();
manyToManyRecord.add(m2mRecords);
orderlineValues.put("tax_id", manyToManyRecord);

这篇关于插入一对多和一对多字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆