OpenERP XML-RPC PHP вставить в re.users с company_id

#php #openerp #xml-rpc #openerp-7

#php #odoo #xml-rpc #openerp-7

Вопрос:

Я пытаюсь вставить в res.users с помощью этого кода:

    $values= array(
        "name"=>new xmlrpcval($name,"string"),
        "login"=>new xmlrpcval($login,"string"),
        "password"=>new xmlrpcval($psw,"string"),
        "lang"=>new xmlrpcval("it_IT","string"),
        "company_id"= new xmlrpcval($company,"many2one");
    );

    echo $id= $this->create($values,"res.users");
  

Я использую пользователя со всеми возможными привилегиями.

Функция возвращает состояние -1, что означает, что у меня нет разрешения или формат не исправлен.

Это сработает, если я удалю поле company_id.

Комментарии:

1. У меня нет опыта работы с openerp, но вы могли бы выполнить некоторые базовые действия по устранению неполадок, либо (1) используя учетную запись пользователя, с которой вы работаете, попробовав insert, который, как известно, работает. (2) попытка вставки с учетной записью пользователя, которая, как известно, работает. Если нет другой проблемы, это должно помочь немного сузить кругозор.

Ответ №1:

попробуйте это,

Many2one создан ли int идентификатор хранилища записи. Итак company_id int , передайте в формате.

 $values= array(
    "name"=>new xmlrpcval($name,"string"),
    "login"=>new xmlrpcval($login,"string"),
    "password"=>new xmlrpcval($psw,"string"),
    "lang"=>new xmlrpcval("it_IT","string"),
    "company_id"= new xmlrpcval($company,"int");
);

echo $id= $this->create($values,"res.users");