Я пытаюсь получить данные из Odoo 10, используя RipCord. Вот мой код:
function test_connect(){
require_once('ripcord/ripcord.php');
// Login information
$url = 'http://localhost:30080';
$url_auth = $url . '/xmlrp/common';
$url_exec = $url . '/xmlrpc/object';
$db = 'xxxx';
$username = '[email protected]';
$password = 'xxxx';
// Login
$common = ripcord::client("$url/xmlrpc/common");
//$common = ripcord::client($url_auth);
$uid = $common->authenticate($db, $username, $password, array());
$models = ripcord::client($url_exec);
include "config.php";
$sql = "SELECT so.id as id,
so.cust_id,
so.numb,
p.ktr,
p.store_id,
so.write_date,
p.store_name,
p.sales_id
FROM sales_order so
INNER JOIN store p on p.store_id = so.store_id
";
$exec = pg_query($sql);
while ($row = pg_fetch_array($exec)){
$query = pg_query(
"SELECT sod.product_id, sod.qty_sales, p.name
FROM sales_order_line sod
INNER JOIN product p on p.id = sod.product_id
WHERE sales_order_id = ".$row['id']
);
while ($data = pg_fetch_array($query)) {
$id = $models->execute_kw($db, $uid, $password,
'sale.order', 'create',
array(array(
'partner_id' => $row['store_id'],
'sales_id' => $row['sales_id'],
'order_line' => [array(
0, false, array(
'product_id' => $data['product_id'],
'name' => $data['name'],
'qty' => $data['quantity'])
)]
)));
var_dump($id);
}
}
}
Вот мой код config.php:
$config = pg_connect("host= 'http://localhost:8010' port='5432' dbname= 'xxxxxx' user='[email protected]' password='xxxxx' ") or die('Failed');
И я получаю такие ошибки:
Сообщение об ошибкеRipcord_ConfigurationException: библиотека PHP XMLRPC не установлена в Ripcord_Client -> __ construct () (строка 132 из D: \ usbwebserverlayerfarm \ root \ sites \ all \ modules \ addon \ feed_sync \ ripcord \ ripcord_client.php).
Сайт обнаружил непредвиденную ошибку. Пожалуйста, попробуйте позже.
Как я могу это исправить?
Задача ещё не решена.
Других решений пока нет …