Laurent Mignon (ACSONE)
10 years ago
committed by
Stéphane Bidoul
8 changed files with 604 additions and 530 deletions
-
9mis_builder/__openerp__.py
-
161mis_builder/models/aep.py
-
820mis_builder/models/mis_builder.py
-
1mis_builder/report/__init__.py
-
66mis_builder/report/report_mis_report_instance.py
-
55mis_builder/report/report_mis_report_instance.xml
-
4mis_builder/tests/__init__.py
-
18mis_builder/views/mis_builder.xml
820
mis_builder/models/mis_builder.py
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -1,66 +0,0 @@ |
|||
# -*- encoding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# mis_builder module for Odoo, Management Information System Builder |
|||
# Copyright (C) 2014-2015 ACSONE SA/NV (<http://acsone.eu>) |
|||
# |
|||
# This file is a part of mis_builder |
|||
# |
|||
# mis_builder is free software: you can redistribute it and/or modify |
|||
# it under the terms of the GNU Affero General Public License v3 or later |
|||
# as published by the Free Software Foundation, either version 3 of the |
|||
# License, or (at your option) any later version. |
|||
# |
|||
# mis_builder is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU Affero General Public License v3 or later for more details. |
|||
# |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# v3 or later along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
|
|||
import logging |
|||
|
|||
from openerp import api, models |
|||
|
|||
_logger = logging.getLogger(__name__) |
|||
|
|||
|
|||
class ReportMisReportInstance(models.AbstractModel): |
|||
|
|||
_name = 'report.mis_builder.report_mis_report_instance' |
|||
|
|||
@api.multi |
|||
def render_html(self, data=None): |
|||
docs = self.env['mis.report.instance'].browse(self._ids) |
|||
docs_computed = {} |
|||
for doc in docs: |
|||
docs_computed[doc.id] = doc.compute() |
|||
docargs = { |
|||
'doc_ids': self._ids, |
|||
'doc_model': 'mis.report.instance', |
|||
'docs': docs, |
|||
'docs_computed': docs_computed, |
|||
} |
|||
return self.env['report'].\ |
|||
render('mis_builder.report_mis_report_instance', docargs) |
|||
|
|||
|
|||
class Report(models.Model): |
|||
_inherit = "report" |
|||
|
|||
@api.v7 |
|||
def get_pdf(self, cr, uid, ids, report_name, html=None, data=None, |
|||
context=None): |
|||
report = self._get_report_from_name(cr, uid, report_name) |
|||
obj = self.pool[report.model].browse(cr, uid, ids, |
|||
context=context)[0] |
|||
context = context.copy() |
|||
if hasattr(obj, 'landscape_pdf') and obj.landscape_pdf: |
|||
context.update({'landscape': True}) |
|||
return super(Report, self).get_pdf(cr, uid, ids, report_name, |
|||
html=html, data=data, |
|||
context=context) |
@ -1,55 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<openerp> |
|||
<data> |
|||
|
|||
<template id="report_mis_report_instance"> |
|||
<t t-call="report.html_container"> |
|||
<t t-foreach="docs" t-as="o"> |
|||
<t t-call="report.internal_layout"> |
|||
<div class="page"> |
|||
<h2 t-field="o.name"></h2> |
|||
<table class="table table-condensed text-right"> |
|||
<thead> |
|||
<tr> |
|||
<t t-foreach="docs_computed[o.id]['header']" t-as="h"> |
|||
<th> |
|||
<div> |
|||
<t t-esc="h_value['kpi_name']"/> |
|||
</div> |
|||
</th> |
|||
<th t-foreach="h_value['cols']" t-as="col"> |
|||
<div> |
|||
<t t-esc="col['name']"/> |
|||
</div> |
|||
<div> |
|||
<t t-esc="col['date']"/> |
|||
</div> |
|||
</th> |
|||
</t> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
<tr t-foreach="docs_computed[o.id]['content']" t-as="c"> |
|||
<td t-att-style="c_value['default_style']"> |
|||
<div> |
|||
<t t-esc="c_value['kpi_name']"/> |
|||
</div> |
|||
</td> |
|||
<t t-foreach="c_value['cols']" t-as="value"> |
|||
<td t-att-style="c_value['default_style']"> |
|||
<div t-att-style="value_value.get('style')"> |
|||
<t t-esc="value_value['val_r']"/> |
|||
</div> |
|||
</td> |
|||
</t> |
|||
</tr> |
|||
</tbody> |
|||
</table> |
|||
</div> |
|||
</t> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
|
|||
</data> |
|||
</openerp> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue