added edi_message field

This commit is contained in:
Marcos Sabater 2019-10-28 17:40:17 +01:00
parent 7c927223a7
commit bbb20d52ed
1 changed files with 10 additions and 2 deletions

View File

@ -41,7 +41,7 @@ class EdocumentTemplate(ModelView, ModelSQL):
class EdocumentMessage(ModelView, ModelSQL):
"""EDIFACT message"""
__name__ = 'edocument.message'
_rec_name = 'code'
rec_name = fields.Function(fields.Char('Record Name'), 'get_rec_name')
code = fields.Char('Code')
message = fields.Text('Message')
@ -49,6 +49,9 @@ class EdocumentMessage(ModelView, ModelSQL):
origin = fields.Reference('Origin', selection='get_origin',
required=True)
def get_rec_name(self, name):
return 'EW' + '{0:0>6}'.format(self.code)
@classmethod
def get_origin(cls):
IrModel = Pool().get('ir.model')
@ -82,6 +85,9 @@ class EdocumentMixin():
fields.Boolean('Processed'), 'get_edocument_processed',
searcher='search_edocument_processed')
edi_message = fields.Function(
fields.Char('EDI Code'), 'get_edi_message')
def get_edocument_processed(self, name=None):
return len(self.messages) > 0
@ -90,9 +96,11 @@ class EdocumentMixin():
exist = {
True: [('messages', '=', None)],
False: [('messages', '!=', None)]}
return exist[bool(clause[1] == '=') ^ bool(clause[2])]
def get_edi_message(self, name=None):
return self.messages[-1].rec_name if self.messages else ''
class EdocumentImportMixin(EdocumentMixin):