diff --git a/bin/addons/base/module/report/ir_module_reference.rml b/bin/addons/base/module/report/ir_module_reference.rml
index 1e09766e3e6..6f428d079c6 100644
--- a/bin/addons/base/module/report/ir_module_reference.rml
+++ b/bin/addons/base/module/report/ir_module_reference.rml
@@ -233,6 +233,12 @@
Object: [[ object.model ]] [[ objdoc(object.model) ]]
+
+ |
+ [[ repeatIn(objdoc2(object.model), 'sline') ]]
+ [[ sline ]]
+ |
+
diff --git a/bin/addons/base/module/report/ir_module_reference_print.py b/bin/addons/base/module/report/ir_module_reference_print.py
index 92029014bac..14f23a57541 100644
--- a/bin/addons/base/module/report/ir_module_reference_print.py
+++ b/bin/addons/base/module/report/ir_module_reference_print.py
@@ -30,11 +30,38 @@ class ir_module_reference_print(report_sxw.rml_parse):
'time': time,
'findobj': self._object_find,
'objdoc': self._object_doc,
+ 'objdoc2': self._object_doc2,
'findflds': self._fields_find,
})
def _object_doc(self, obj):
modobj = self.pool.get(obj)
- return modobj.__doc__
+ strdocs= modobj.__doc__
+ if not strdocs:
+ return None
+ else:
+ strdocs=strdocs.strip().splitlines(True)
+ res = ''
+ for stre in strdocs:
+ if not stre or stre.isspace():
+ break
+ res += stre
+ return res
+
+ def _object_doc2(self, obj):
+ modobj = self.pool.get(obj)
+ strdocs= modobj.__doc__
+ if not strdocs:
+ return None
+ else:
+ strdocs=strdocs.strip().splitlines(True)
+ res = []
+ fou = False
+ for stre in strdocs:
+ if fou:
+ res.append(stre.strip())
+ elif not stre or stre.isspace():
+ fou = True
+ return res
def _object_find(self, module):
ids2 = self.pool.get('ir.model.data').search(self.cr, self.uid, [('module','=',module), ('model','=','ir.model')])