Skip to Content
Menu
This question has been flagged
4 Replies
1927 Views

It is possible to creating one Vendor Bill for two or more  different Purchase Orders, and how?

Thank you.

Avatar
Discard
Best Answer

Hi,

Yes, it is possible to create one Vendor Bill for two or more different Purchase Orders (POs) in Odoo. This can be done by following these steps:

1. Create and confirm the purchase orders that you want to include in the vendor bill. Ensure that the purchase orders are for the same vendor.2. If your workflow requires receiving products before billing, go ahead and receive the products for the purchase orders.3. Select the purchase orders you want to include in the vendor bill with the same customer.4. Select create vendor bill inside the Action menu.5. click Validate to confirm the vendor bill.

For example, refer the following image:


Hope it helps

Avatar
Discard
Author Best Answer

Thank you, when i try to Confirm the Bill i receive the following error.

RPC_ERROR

Odoo Server Error

Traceback (most recent call last):

File "/usr/lib/python3/dist-packages/odoo/http.py", line 1633, in _serve_db

return service_model.retrying(self._serve_ir_http, self.env)

File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 133, in retrying

result = func()

File "/usr/lib/python3/dist-packages/odoo/http.py", line 1660, in _serve_ir_http

response = self.dispatcher.dispatch(rule.endpoint, args)

File "/usr/lib/python3/dist-packages/odoo/http.py", line 1864, in dispatch

result = self.request.registry['ir.http']._dispatch(endpoint)

File "/usr/lib/python3/dist-packages/odoo/addons/website/models/ir_http.py", line 237, in _dispatch

response = super()._dispatch(endpoint)

File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_http.py", line 154, in _dispatch

result = endpoint(**request.params)

File "/usr/lib/python3/dist-packages/odoo/http.py", line 697, in route_wrapper

result = endpoint(self, *args, **params_ok)

File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/dataset.py", line 46, in call_button

action = self._call_kw(model, method, args, kwargs)

File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw

return call_kw(request.env[model], method, args, kwargs)

File "/usr/lib/python3/dist-packages/odoo/api.py", line 468, in call_kw

result = _call_kw_multi(method, model, args, kwargs)

File "/usr/lib/python3/dist-packages/odoo/api.py", line 453, in _call_kw_multi

result = method(recs, *args, **kwargs)

File "/mnt/extra-addons/bio_extra/models/account_move.py", line 12, in action_post

res = super().action_post()

File "/mnt/extra-addons/l10n_ro_account_edi_ubl/models/account_move.py", line 403, in action_post

res = super().action_post()

File "/usr/lib/python3/dist-packages/odoo/addons/sale/models/account_move.py", line 63, in action_post

res = super(AccountMove, self).action_post()

File "/usr/lib/python3/dist-packages/odoo/addons/account_accountant/models/account_move.py", line 24, in action_post

res = super().action_post()

File "/usr/lib/python3/dist-packages/odoo/addons/account/models/account_move.py", line 3842, in action_post

other_moves._post(soft=False)

File "/mnt/extra-addons/selferp_l10n_ua_vat/models/account_move.py", line 741, in _post

res = super()._post(soft=soft)

File "/usr/lib/python3/dist-packages/odoo/addons/stock_landed_costs/models/account_move.py", line 50, in _post

posted = super()._post(soft)

File "/usr/lib/python3/dist-packages/odoo/addons/account_asset/models/account_move.py", line 113, in _post

posted = super()._post(soft)

File "/usr/lib/python3/dist-packages/odoo/addons/sale/models/account_move.py", line 107, in _post

posted = super()._post(soft)

File "/usr/lib/python3/dist-packages/odoo/addons/purchase_stock/models/account_invoice.py", line 177, in _post

self._stock_account_anglo_saxon_reconcile_valuation()

File "/usr/lib/python3/dist-packages/odoo/addons/stock_account/models/account_move.py", line 225, in _stock_account_anglo_saxon_reconcile_valuation

(invoice_aml | correction_amls).with_context(no_exchange_difference=True).reconcile()

File "/mnt/extra-addons/selferp_l10n_ua_vat/models/account_move_line.py", line 248, in reconcile

self.check_linked_purchase_order()

File "/mnt/extra-addons/us_selferp_vat/models/account_move_line.py", line 96, in check_linked_purchase_order

record.linked_purchase_order_id = linked_purchase_order_id

File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1324, in _set_

write_value = self.convert_to_write(value, records)

File "/usr/lib/python3/dist-packages/odoo/fields.py", line 3022, in convert_to_write

return value.id

File "/usr/lib/python3/dist-packages/odoo/fields.py", line 5092, in _get_

raise ValueError("Expected singleton: %s" % record)

ValueError: Expected singleton: purchase.order(10115, 10143)

The above server error caused the following client error:

RPC_ERROR: Odoo Server Error

at makeErrorFromResponse 

at XMLHttpRequest.


I receive this , from what i understand the code say  1 PO – 1 VB.

What do you think?

Avatar
Discard

This error is from your custom addons, You can edit the code and iterate over the record., Check this to avoid singleton error in odoo
https://youtu.be/Rv44nFVn_5U?si=zp75Da9Z8FrgWQHd

Best Answer

When introducing the vendor bill, you can use the field "Auto-Complete" in order to get the lines from the purchase orders, as many times as you need.

Avatar
Discard
Best Answer

Select each of the Purchase Orders in the Auto-Complete field, one after the other, until all of the lines from every Purchase Order you want to Bill are added.

Avatar
Discard