Analytic partners fixed

bzr revid: rde-ddf0d57dde04b9fc7d3dbf30dca1eabd01ce25e3
This commit is contained in:
rde 2007-01-23 14:50:03 +00:00
parent 39fd7891b8
commit bb28fc4f55
2 changed files with 22 additions and 10 deletions

View File

@ -44,6 +44,8 @@
<paraStyle name="P8" fontName="Times-Roman" alignment="CENTER"/>
<paraStyle name="P9" fontName="Times-Roman"/>
<paraStyle name="P10" fontName="Times-Roman" fontSize="11.0" leading="14"/>
<paraStyle name="P11" fontName="Times-Roman" fontSize="11.0" leading="14"/>
<paraStyle name="P12" fontName="Times-Roman" fontSize="11.0" leading="14"/>
<paraStyle name="Standard" fontName="Times-Roman"/>
<paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
@ -107,12 +109,13 @@
<para style="Table Contents">Address</para>
</td>
<td>
<para style="Table Contents">Inforrmation</para>
<para style="Table Contents">Information</para>
</td>
</tr>
<tr>
<td>
<para style="P10"><font face="Times-Roman">[[ repeatIn(p.address, 'a') ]] </font>[[ a.name ]]</para>
<para style="P11">[[ a.function ]]</para>
</td>
<td>
<para style="P10">[[ a.street ]] [[ a.street2 ]]</para>
@ -123,6 +126,7 @@
<para style="P10"><font face="Times-Roman">Tel</font> : [[ a.phone ]]</para>
<para style="P10"><font face="Times-Roman">Fax</font> : [[ a.fax ]]</para>
<para style="P10"><font face="Times-Roman">Mobile</font> : [[ a.mobile ]]</para>
<para style="P12">Mail<font face="Times-Roman"> : [[ a.email ]]</font></para>
</td>
</tr>
</blockTable>

View File

@ -3,19 +3,27 @@ import time
from report import report_sxw
class analytic_partners_report(report_sxw.rml_parse):
# o must be an instance of analytic_partners_account_analytic_account.
# contacts_by_partners_by_account returns a list of categories. Each
# category contains a list of partner names, each partner name contains
# a list of partner contacts. This list reflects the selected partners
# contacts for the selected analytic account.
def contacts_by_partners_by_categories(self, o):
categs = {}
# o must be an instance of
# analytic_partners_account_analytic_account.
def _init_dict(self, o):
self.partners_by_account.clear()
for a in o.address_ids:
p = a.partner_id
for c in p.category_id:
self.partners_by_account.setdefault(c.name, []).append(a)
if not p.category_id:
self.partners_by_account.setdefault('Non classifie', []).append(a)
def __init__(self, cr, uid, name, context):
# self.partners_by_account is a dictionnary where keys are category
# names and values are lists of partner_id.
self.partners_by_account={}
super(analytic_partners_report, self).__init__(cr, uid, name, context)
self.localcontext.update( {
'time' : time,
'contacts_by_partners_by_categories' : self.contacts_by_partners_by_categories,
'_init_dict' : self._init_dict,
'partners_by_account' : self.partners_by_account,
} )
report_sxw.report_sxw(