Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
7 Відповіді
10037 Переглядів

Odoo version 10 and below had an API endpoint (/xmlrpc/2/report) for retrieving invoices.

This endpoint has been removed in Odoo 11 so is there another way to retrieve invoices programmatically?

Аватар
Відмінити
Автор

Note that I want to retrieve invoices in PDF format

Найкраща відповідь

I would try to use /xmlrpc/2/object with model `ir.actions.report` and method `render_qweb_pdf`. Bear in mind that you'll need a `ir.actions.report` record, because `render_qweb_pdf` isn't a "model method" (in OOP class method).

Аватар
Відмінити

Do you have a working code example please?

Unfortunately, no :-/

Найкраща відповідь

Hello,

It works for me with this script : 


<?php


$url = "url";
$db = "db";

$username = "username";
$password = "password";

if (function_exists('spl_autoload_register')) {
spl_autoload_register(function($classname){
$classfile = rtrim(__DIR__, '/') .'/'. str_replace('\\', '/', $classname) .'.php';

if (file_exists($classfile)){
require_once $classfile;
}
else {
echo $classname . ' => '. $classfile .'<br />';
exit('Une erreur est survenue...');
}
});
}

require_once('Ripcord/Ripcord.php');
$common = \Ripcord\Ripcord::client("$url/xmlrpc/2/common");
$uid = $common->authenticate($db, $username, $password, array());
$models = \Ripcord\Ripcord::client("$url/xmlrpc/2/object");

$invoice_ids = $models->execute_kw($db, $uid, $password, 'account.invoice', 'search', array(
array(
array('name', '=', '1')
)
));
$invoice_id = $invoice_ids[0];

$ctx = array('active_model' => 'account.invoice', 'active_id' => $invoice_id);
$token = $models->execute_kw($db, $uid, $password, 'portal.share', 'default_get', [[]], array('context' => $ctx))['share_link'];
$token = explode('access_token=', $token)[1];
$dl_url = "$url/my/invoices/$invoice_id?report_type=pdf&download=true&access_token=$token";
print_r($dl_url);

?>

Аватар
Відмінити
Найкраща відповідь

Anyone managed to get it to work? I also want to access the Invoice PDF using the Odoo 12 API. Any working PHP example would be very helpful!

Please help..

Аватар
Відмінити
Найкраща відповідь

Hello


Did you manage to have it working


Would you mind sharing


Thanks

Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
1
груд. 19
2358
1
січ. 25
3705
1
лист. 23
3793
1
бер. 23
5358
2
груд. 19
15375