İçereği Atla
Menü
Bu soru işaretlendi
7 Cevaplar
10409 Görünümler

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?

Avatar
Vazgeç
Üretici

Note that I want to retrieve invoices in PDF format

En İyi Yanıt

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).

Avatar
Vazgeç

Do you have a working code example please?

Unfortunately, no :-/

En İyi Yanıt

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);

?>

Avatar
Vazgeç
En İyi Yanıt

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..

Avatar
Vazgeç
En İyi Yanıt

Hello


Did you manage to have it working


Would you mind sharing


Thanks

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Ara 19
2698
1
Oca 25
4150
1
Kas 23
4188
1
Mar 23
5670
2
Ara 19
15798