Sök…


Anmärkningar

'depends': ['web',....]

Anpassad widget för numeriska fält att använda i TreeView

Nedanstående widget visar hur man formaterar enskilda celler i en TreeView-kolumn på villkor beroende på fältets värde i den specifika cellen. Om värdet på fältet är negativt visas det i röd färg och minussymbolen kommer att döljas, annars visas det i normal färg.

En widget ska skrivas i JavaScript, låter använda custom_widget_name som ett namn för en ny widget, och your_module_name är ett tekniskt namn på din modul (samma som din moduls rotkatalognamn)

Uunder static / src / js / folder i din modul lägg till javascript-fil (säg static / src / js / custom_widget .js) med en anpassad widget i den:

 openerp.your_module_name = function (instance) {

    instance.web.list.columns.add('field.custom_widget_name', 'instance.your_module_name.custom_widget_name');

    instance.your_module_name.custom_widget_name = instance.web.list.Column.extend({
        _format: function (row_data, options) {
            res = this._super.apply(this, arguments);
            var amount = parseFloat(res);
            if (amount < 0){
                return "<font color='#ff0000'>"+(-amount)+"</font>";
            }
            return res
        }
    });
    //
    //here you can add more widgets if you need, as above...
    //
};

ovanstående widget kan användas i en listvy för fält av typen float och den tillämpar anpassade regler enligt följande:

  • Negativa siffror:
    • Visas i rött.
    • Minussymbol (ett '-' tecken) är "dold".
  • För positiva nummer används standardlayout.

Det här exemplet widget kan tillämpas på ett fält i en trädvy av Odoo. Du kan använda widget som denna för en kolumn som du behöver använda de anpassade reglerna för:

. . .
<tree >
    . . .
    <field name="some_field" widget="my_widget" />
    . . .
</tree>
. . .


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow