콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
3 답글
6532 화면

Hello, here it is the line taht display the qty available in stock of a product in the product kanban view

<li t-if="record.type.raw_value == 'product'">On hand: <field name="qty_available"/> <field name="uom_id"/></li>

Is there a way to add a second line to display the stock in an another unit, by dividing the value <field name="qty_available"/> by the value of <field name="uom_id.factor"/>


JUST in the XML file !! ??


Thanks a lot.

 

아바타
취소
베스트 답변

I guess, yes. Have a look at the documentation - - https://www.odoo.com/documentation/11.0/reference/qweb.html#setting-variables

For the example have a look at https://github.com/odoo/odoo/blob/12.0/addons/project/views/project_rating_templates.xml – for instance at the template 'portal_project_rating_progressbar'

Besides, take into account that in kanban:

  1. In that case you should apply by raw_value like record.qty_available.raw_value

  2. To be used as raw value the field should be defined before the kanban tag (have a look at any core odoo kanban)


Finally, just to express my opinion: it doesn't seem really reasonable to make those calculations in xml, since you can calculate them in Python and store them in PostgreSQL. Otherwise, this calculation will take place any time you open your kanban for each record shown (after grouping there might be thousands of records). But that it is surely up to you :)


아바타
취소
작성자 베스트 답변

Hi Pujara Geet, thanks for your answer, but i don't really understand what you mean. Your code gave me a loop and all other existing units and display again the same Qty.


Maybe i don't explain very well what i want to do :

The "default" line of code in stock.product_template_kanban_stock_view

display for example :

On hand: 5,000 CARTON X8  (because the unit i define for this product is a box of 8 pieces)

and i want to display just under a second line 

On hand: 40,000 PIECES 

so i need in the XLM to make the math operation Qty*uom_id.factor to calculate 40.


아바타
취소
베스트 답변

In Your XML(e.g product.xml) File You can Use This Code:


        <record model="ir.ui.view" id="product_template_kanban_stock_view_inherit">
            <field name="name">Product Template Kanban Stock</field>
            <field name="model">product.template</field>
            <field name="inherit_id" ref="stock.product_template_kanban_stock_view"/>
            <field name="arch" type="xml">
                <xpath expr="//ul[1]/li[1]" position="after">
                  <li t-foreach="record.uom_id.raw_value" t-as='o'>
                    <field name="qty_available"/> by the value of <t t-esc="o.factor"/>
                  </li>
                </xpath>
            </field>
        </record>

아바타
취소