跳至内容
菜单
此问题已终结
1006 查看

Hi, 
I am using Odoo 17 and have integrated Odoo into my Laravel Website. I am able to get all the Inovices and relevent details, but some how I am not able to get the PDF file for the invoice. 

public function getPdfInvoice(Invoice $invoice, $entityID) { // Authenticate and setup headers $this->setHeaders($entityID);

// Get the reference ID for the invoice $invoice_id = $invoice->reference_id;

// Determine the report type based on the invoice status if ($invoice->status == 1) { $report_name = 'account.report_invoice_with_payments'; // For paid invoices } else { $report_name = 'account.report_invoice'; // For unpaid invoices }

// Use the 'execute_report' method to generate the PDF $params = [ $this->encoder->encode($this->db), $this->encoder->encode($this->uid), $this->encoder->encode($this->password), $this->encoder->encode('report'), $this->encoder->encode('render_report'), $this->encoder->encode([$report_name, [$invoice_id]]) ];

$request = new Request('execute_kw', $params); $response = $this->models->send($request); Log::info("Odoo getPdfInvoice", ['response' => $response]);

// Check for errors in the response if ($response->faultCode()) { throw new \Exception('Error fetching PDF for invoice: ' . $response->faultString()); }

// Check if the response is valid and contains PDF data if (empty($response->value()->scalarval())) { throw new \Exception('Empty response, unable to fetch PDF'); }

// Decode the PDF binary data $pdfContent = base64_decode($response->value()->scalarval());

if (!$pdfContent) { throw new \Exception('Error fetching PDF for invoice: ' . $response->faultString()); } else { return $pdfContent; } }

I am always getting Object report doesn't exist

kindly check and help me out on this.

形象
丢弃
相关帖文 回复 查看 活动
0
12月 24
590
1
6月 24
1534
0
1月 25
420
11
10月 24
26440
2
8月 24
34