Files
tryton/configuration.py
T
2017-01-26 10:49:18 +01:00

43 lines
1.6 KiB
Python

# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from trytond.model import ModelView, ModelSQL, ModelSingleton, fields
from trytond.pool import Pool
from trytond.pyson import Eval, Bool
__all__ = ['Configuration']
class Configuration(ModelSingleton, ModelSQL, ModelView):
'Sale Configuration'
__name__ = 'sale.configuration'
sale_sequence = fields.Property(fields.Many2One('ir.sequence',
'Sale Sequence', domain=[
('company', 'in',
[Eval('context', {}).get('company', -1), None]),
('code', '=', 'sale.sale'),
], required=True))
sale_invoice_method = fields.Property(fields.Selection(
'get_sale_invoice_methods', 'Sale Invoice Method',
states={
'required': Bool(Eval('context', {}).get('company')),
}))
sale_shipment_method = fields.Property(fields.Selection(
'get_sale_shipment_methods', 'Sale Shipment Method',
states={
'required': Bool(Eval('context', {}).get('company')),
}))
@classmethod
def get_sale_invoice_methods(cls):
pool = Pool()
Sale = pool.get('sale.sale')
field_name = 'invoice_method'
return Sale.fields_get([field_name])[field_name]['selection']
@classmethod
def get_sale_shipment_methods(cls):
pool = Pool()
Sale = pool.get('sale.sale')
field_name = 'shipment_method'
return Sale.fields_get([field_name])[field_name]['selection']