Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何在Pos收据(Odoo13)中显示产品默认代码(内部参考)_Jquery_Xml_Odoo 13_Point Of Sale - Fatal编程技术网

Jquery 如何在Pos收据(Odoo13)中显示产品默认代码(内部参考)

Jquery 如何在Pos收据(Odoo13)中显示产品默认代码(内部参考),jquery,xml,odoo-13,point-of-sale,Jquery,Xml,Odoo 13,Point Of Sale,我想在pos收据中显示产品默认代码。我可以在models.js或其他文件中继承或编辑吗? 谢谢 修改解决方案: 要获得产品的其他字段访问权限,您需要在JS和XML模板中进行自定义 JS代码: odoo.define('ypour_app.your app', function (require) { "use strict"; var models = require('point_of_sale.models'); var OrderlineSuper = models.

我想在pos收据中显示产品默认代码。我可以在models.js或其他文件中继承或编辑吗? 谢谢

修改解决方案:

要获得产品的其他字段访问权限,您需要在
JS
XML
模板中进行自定义

JS代码:

odoo.define('ypour_app.your app', function (require) {
"use strict";

var models = require('point_of_sale.models');
var OrderlineSuper = models.Orderline;
models.Orderline = models.Orderline.extend({
   export_for_printing : function() {
        var data = OrderlineSuper.prototype.export_for_printing.call(this);
        // this.get_product() => you can have here all the product data [barcode/default_code/ etc.]
        data.product_default_code = this.get_product().default_code;
        return data;
    }
});
<t t-extend="OrderReceipt">
    <t t-jquery="t[t-foreach*='receipt.orderlines']" t-operation="append">
        <b>Default Code </b>: <t t-esc="line.product_default_code"/>
    </t>
</t>
}))

XML代码:

odoo.define('ypour_app.your app', function (require) {
"use strict";

var models = require('point_of_sale.models');
var OrderlineSuper = models.Orderline;
models.Orderline = models.Orderline.extend({
   export_for_printing : function() {
        var data = OrderlineSuper.prototype.export_for_printing.call(this);
        // this.get_product() => you can have here all the product data [barcode/default_code/ etc.]
        data.product_default_code = this.get_product().default_code;
        return data;
    }
});
<t t-extend="OrderReceipt">
    <t t-jquery="t[t-foreach*='receipt.orderlines']" t-operation="append">
        <b>Default Code </b>: <t t-esc="line.product_default_code"/>
    </t>
</t>

默认代码:

销售点上的静态/src/XML文件中有一个jquery模板,收据模板就在那里。您需要扩展该模板并添加自定义代码,它将出现在收据上。@Dipen Shah,我扩展了模板:OrderReceipt和我添加的;从模型product.product或product.template添加字段;我应该在models.js中添加它?我得到了错误:无法读取未定义的属性'default_code'。。。。尝试以下操作:TypeError:dict.line.get\u产品不是function@Ing我已经编辑了答案。您可以测试代码以供参考。