Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
1 Ответить
2889 Представления

Hello,

I have a custom report and in this I would like to see data for the move lines whose stock.picking Status is Done.

Below is the code, can anyone help me add the picking state in the code.

Thanks


# -*- coding: utf-8 -*-
from odoo import api, models

class ReportSaleOrderLot(models.AbstractModel):
_name = 'report.abc_sale_order_expiry_lot'

@api.model
def get_report_values(self, docids, data=None):
sale_order_report = self.env['ir.actions.report']._get_report_from_name('abc_sale_order_expiry_lot')
order_id = self.env['sale.order'].browse(docids)
product_categ = []
for line in order_id.order_line:
for move in line.move_ids:
for move_line in move.move_line_ids:
product_categ.append(move_line.product_id.categ_id or '')
# product_categ = [line.product_id.categ_id for line in order_id.order_line]
return {
'doc_ids': docids,
'doc_model': sale_order_report.model,
'docs': order_id,
'product_categ': set(product_categ),​

Аватар
Отменить
Лучший ответ

You can do it as follows:

for move in line.move_ids:
if move.picking_id.state == 'done':
for move_line in move.move_line_ids:
product_categ.append(move_line.product_id.categ_id or '')​

I hope it works for you

Аватар
Отменить
Related Posts Ответы Просмотры Активность
0
мар. 15
4349
1
нояб. 24
18980
0
окт. 24
1824
0
авг. 24
1626
0
янв. 24
2107