Odoo Help

Welcome!

This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

2

How to display the qty on hand for each entry in a Bill Of Materials?

By
simon
on 7/11/13, 5:45 AM 2,464 views

When viewing a BOM I would like to be able to see the quantity of hand for each product that comprises the said BOM. Essentially the objective is to display the stock holding for components that make up a given BOM.

It may be that this objective can be achieved by other means, in fact it can be done by creating a custom filter in the product view and simply recreating the same BOM as a series of filters, the problem of course being it is manual and does not update when the BOM is modified.

This question could be thought of as a question about changing the parameter displayed in a List View column if that is the best solution method to achieve the desired result.

Thanks!

1
Gabriel
On 7/12/13, 8:38 AM

Hi Simon,

Firstly you will need to add a related field in the mrp.bom object pointing toward the field 'qty_available' of the product.product object. Secondly you will need to add this new field in the tree view of mrp.bom.

According to how familiar you are with OpenERP and how you are using it you can do that either by the web interface in Settings/Database Structure and Settings/User Interface or by creating a new module.

Sorry but I am not so familiar with the web interface Database Structure menu. And so I could not find how to implement the related field this way. I am pretty sure it should be possible... Nevertheless you can still create a new python module with: your_module.py :

# -*- encoding: utf-8 -*-
from openerp.osv import fields, osv

class mrp_bom(osv.osv):
    _inherit = "mrp.bom"
    _columns = {
                'qty_available': fields.related('product_id', 'qty_available', type="float", relation="product.product", string="Qty on hand")}

and a your_module_view.xml:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>

        <record id="mrp_bom_component_qty_tree_view" model="ir.ui.view">
            <field name="name">mrp.bom.component.qty.tree</field>
            <field name="model">mrp.bom</field>
            <field name="inherit_id" ref="mrp.mrp_bom_component_tree_view" />
            <field name="sequence" eval="10" />
            <field name="arch" type="xml">
                <xpath expr="//field[@name='product_qty']" position="after">
                        <field name="qty_available" />
                </xpath>
            </field>
        </record>

    </data>
</openerp>

Hi. This is exactly what I'm also trying to do. The logic of what you say makes perfect sense, but I'm struggling to implement... I'm familiar with databases (MySQL) and interogating with php, but completely new to python and openerp. A few pointers wold be gratefully received! I've managed to customise views in settings / user interface / views for our own applications, but when I try to add my new database field into mrp.bom.form I get an error "Invalid XML code in Arch fields of View!", which makes me assume I've created the field in map.bom incorrectly. Any help gratefully received!!!

Trevor Wilson
on 7/13/13, 4:48 PM

Hi Gabriel, Very kind of you to add this information. Obviously the module update method is fundamentally a better method than through the web interface. For others reference in the field definition line I added 'store=False' explicitly as it seemed to not update the value otherwise. Also the view in question is actually the mrp_bom_form_view rather than the component tree, i.e. this is where the entry for each item making up a bom is shown, rather than the list of bom's

simon
on 7/17/13, 4:35 AM

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

1 follower(s)

Stats

Asked: 7/11/13, 5:45 AM
Seen: 2464 times
Last updated: 8/6/15, 10:01 AM