merging from the trunk
bzr revid: mga@tinyerp.com-20090326130257-idkmgdjx32ve21lp
This commit is contained in:
@@ -58,9 +58,11 @@ class account_report_bs(report_sxw.rml_parse):
|
||||
_total +=self.line_total(report,ctx)
|
||||
return _total
|
||||
|
||||
def lines(self, form, ids={}, done=None, level=1):
|
||||
if not ids:
|
||||
ids = self.ids
|
||||
def lines(self, form, ids={}, done=None, level=1, object=False):
|
||||
if object:
|
||||
ids = [object.id]
|
||||
elif not ids:
|
||||
ids = self.ids
|
||||
if not ids:
|
||||
return []
|
||||
if not done:
|
||||
@@ -76,7 +78,7 @@ class account_report_bs(report_sxw.rml_parse):
|
||||
def cmp_code(x, y):
|
||||
return cmp(x.code, y.code)
|
||||
report_objs.sort(cmp_code)
|
||||
|
||||
|
||||
for report_obj in report_objs:
|
||||
if report_obj.id in done:
|
||||
continue
|
||||
@@ -87,12 +89,12 @@ class account_report_bs(report_sxw.rml_parse):
|
||||
color_font = report_obj.color_font.name
|
||||
if report_obj.color_back:
|
||||
color_back = report_obj.color_back.name
|
||||
|
||||
res = {
|
||||
'code': report_obj.code,
|
||||
'name': report_obj.name,
|
||||
'level': level,
|
||||
'balance': self.line_total(report_obj.id,ctx),
|
||||
'parent_id':False,
|
||||
'color_font':color_font,
|
||||
'color_back':color_back,
|
||||
'font_style' : report_obj.font_style
|
||||
@@ -101,35 +103,55 @@ class account_report_bs(report_sxw.rml_parse):
|
||||
report_type = report_obj.report_type
|
||||
if report_type != 'only_obj':
|
||||
account_ids = self.pool.get('account.report.bs').read(self.cr,self.uid,[report_obj.id],['account_id'])[0]['account_id']
|
||||
for account_id in account_ids:
|
||||
res1 = self.check_child_id(account_id,level,ctx,report_type)
|
||||
result += res1
|
||||
|
||||
if report_type == 'acc_with_child':
|
||||
acc_ids = self.pool.get('account.account')._get_children_and_consol(self.cr, self.uid, account_ids )
|
||||
account_ids = acc_ids
|
||||
account_objs = self.pool.get('account.account').browse(self.cr,self.uid,account_ids,ctx)
|
||||
for acc_obj in account_objs:
|
||||
res1={}
|
||||
res1 = {
|
||||
'code': acc_obj.code,
|
||||
'name': acc_obj.name,
|
||||
'level': level+1,
|
||||
'balance': acc_obj.balance,
|
||||
'parent_id':acc_obj.parent_id,
|
||||
'color_font' : 'black',
|
||||
'color_back' :'white',
|
||||
'font_style' : 'Helvetica',
|
||||
}
|
||||
if acc_obj.parent_id:
|
||||
for r in result:
|
||||
if r['name']== acc_obj.parent_id.name:
|
||||
res1['level'] = r['level'] + 1
|
||||
break
|
||||
result.append(res1)
|
||||
#res1 = self.check_child_id(account_id,level,ctx,report_type)
|
||||
#result += res1
|
||||
if report_obj.child_id:
|
||||
ids2 = [(x.code,x.id) for x in report_obj.child_id]
|
||||
ids2.sort()
|
||||
result += self.lines(form, [x[1] for x in ids2], done, level+1)
|
||||
|
||||
result += self.lines(form,[x[1] for x in ids2], done, level+1,object=False)
|
||||
|
||||
return result
|
||||
|
||||
def check_child_id(self,account_id,level,ctx,report_type):
|
||||
account = self.pool.get('account.account').browse(self.cr,self.uid,[account_id],ctx)[0]
|
||||
result = []
|
||||
res = {
|
||||
'code': account.code,
|
||||
'name': account.name,
|
||||
'level': level+1,
|
||||
'balance': account.balance,
|
||||
'color_font' : 'black',
|
||||
'color_back' :'pink',
|
||||
'font_style' : 'Helvetica-BoldOblique',
|
||||
}
|
||||
result.append(res)
|
||||
if report_type != 'with_account':
|
||||
acc_child_id = self.pool.get('account.account').search(self.cr,self.uid,[('parent_id','=',[account_id]),('type','=','view')])
|
||||
for child_id in acc_child_id :
|
||||
result += self.check_child_id(child_id,level+1,ctx,report_type)
|
||||
return result
|
||||
# def check_child_id(self,account_id,level,ctx,report_type):
|
||||
# account = self.pool.get('account.account').browse(self.cr,self.uid,[account_id],ctx)[0]
|
||||
# result = []
|
||||
# res = {
|
||||
# 'code': account.code,
|
||||
# 'name': account.name,
|
||||
# 'level': level+1,
|
||||
# 'balance': account.balance,
|
||||
# 'color_font' : 'black',
|
||||
# 'color_back' :'white',
|
||||
# 'font_style' : 'Helvetica',
|
||||
# }
|
||||
# result.append(res)
|
||||
# if report_type != 'with_account':
|
||||
# acc_child_id = self.pool.get('account.account').search(self.cr,self.uid,[('parent_id','=',[account_id]),('type','=','view')])
|
||||
# for child_id in acc_child_id :
|
||||
# result += self.check_child_id(child_id,level+1,ctx,report_type)
|
||||
# return result
|
||||
|
||||
|
||||
|
||||
@@ -138,6 +160,8 @@ class account_report_bs(report_sxw.rml_parse):
|
||||
#
|
||||
# def _sum_debit(self):
|
||||
# return self.sum_debit
|
||||
|
||||
report_sxw.report_sxw('report.account.report.bs', 'account.report.bs', 'addons/account_reporting/report/account_report_bs.rml', parser=account_report_bs)
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
||||
@@ -13,9 +13,6 @@
|
||||
<blockTableStyle id="Table1">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<blockBackground colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table2">
|
||||
<blockAlignment value="LEFT"/>
|
||||
@@ -24,41 +21,52 @@
|
||||
<blockTableStyle id="Table7">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,1" stop="-1,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,2" stop="-1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,1" stop="-1,1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table4">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,0" stop="-1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="-1,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,2" stop="-1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,0" stop="-1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="-1,1"/>
|
||||
</blockTableStyle>
|
||||
<initialize>
|
||||
<paraStyle name="all" alignment="justify"/>
|
||||
</initialize>
|
||||
<paraStyle name="P1" fontName="Times-Roman" fontSize="15.0" leading="25" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P2" fontName="Times-Roman" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P3" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P4" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P5" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P6" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P7" fontName="Times-Roman" fontSize="6.0" leading="8" alignment="LEFT"/>
|
||||
<paraStyle name="P8" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="RIGHT"/>
|
||||
<paraStyle name="P9" fontName="Times-Roman" fontSize="8.0" leading="10"/>
|
||||
<paraStyle name="P10" fontName="Times-Roman" fontSize="9.0" leading="14" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P11" fontName="Times-Roman" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P12" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P13" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P14" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P15" fontName="Times-Roman" fontSize="20.0" leading="25" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P16" fontName="Times-Roman" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P17" fontName="Times-Roman" fontSize="9.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P18" fontName="Times-Roman" fontSize="9.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P19" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P20" fontName="Times-Roman" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Standard" fontName="Times-Roman"/>
|
||||
<paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Table Contents" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Caption" fontName="Times-Roman" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Index" fontName="Times-Roman"/>
|
||||
<paraStyle name="P1" fontName="Helvetica" fontSize="15.0" leading="25" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P2" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P3" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P4" fontName="Helvetica" fontSize="12.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P5" fontName="Helvetica" fontSize="12.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P6" fontName="Helvetica" fontSize="12.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P7" fontName="Helvetica" fontSize="6.0" leading="8" alignment="LEFT"/>
|
||||
<paraStyle name="P8" fontName="Helvetica" fontSize="12.0" leading="14" alignment="RIGHT"/>
|
||||
<paraStyle name="P9" fontName="Helvetica" fontSize="8.0" leading="10"/>
|
||||
<paraStyle name="P10" fontName="Helvetica" fontSize="9.0" leading="14" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P11" fontName="Helvetica" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P12" fontName="Helvetica" fontSize="12.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P12a" fontName="Helvetica" fontSize="12.0" leading="14" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P13" fontName="Helvetica" fontSize="12.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P14" fontName="Helvetica" fontSize="12.0" leading="14" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P15" fontName="Helvetica" fontSize="20.0" leading="25" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P16" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P17" fontName="Helvetica" fontSize="9.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P18" fontName="Helvetica" fontSize="9.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P19" fontName="Helvetica" fontSize="12.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P20" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Standard" fontName="Helvetica"/>
|
||||
<paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Table Contents" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Caption" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Index" fontName="Helvetica"/>
|
||||
</stylesheet>
|
||||
<story>
|
||||
<blockTable colWidths="143.0,226.0,156.0" repeatRows="1" style="Table1">
|
||||
@@ -98,10 +106,10 @@
|
||||
<blockTable colWidths="131.0,280.0,131.0" style="Table7">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P12" ><font color='blue'>Code</font></para>
|
||||
<para style="P12a" ><font color='blue'>Code</font></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P12"><font color='blue'>Account name</font></para>
|
||||
<para style="P12a"><font color='blue'>Account Name</font></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P13"><font color='blue'>Balance</font></para>
|
||||
@@ -111,13 +119,13 @@
|
||||
<blockTable colWidths="131.0,280.0,131.0" style="Table4">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">[[ repeatIn(lines(data['form']), 'a') ]]<font> [[ a['code'] ]] [[ a['font_style'] and (setTag('font','font',{'face':a['font_style'] })) ]] [[ a['color_font'] and ( setTag('font','font',{'color':a['color_font']})) ]] [[ a['color_back'] and ( setTag('para','para',{'backColor':a['color_back']})) ]]</font></para>
|
||||
<para style="P10">[[ repeatIn(lines(data['form'],object=o), 'a') ]]<font> [[ a['code'] ]] [[ (a['font_style']) and (setTag('font','font',{'face':a['font_style']})) or (a['level']==1 and (setTag('para','para',{'fontName':'Helvetica-Bold'}))) ]] [[ a['color_font'] and ( setTag('font','font',{'color':a['color_font']})) ]] [[ a['color_back'] and ( setTag('para','para',{'backColor':a['color_back']})) ]]</font></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P17"><font>[[ '.. .. '*(a['level']-1) ]] [[ a['name'] ]] [[ a['font_style'] and (setTag('font','font',{'face':a['font_style']})) ]] [[ a['color_font'] and ( setTag('font','font',{'color':a['color_font']})) ]] [[ a['color_back'] and ( setTag('para','para',{'backColor':a['color_back']})) ]]</font></para>
|
||||
<para style="P17"><font><font color="white">[[ '..'*(a['level']-1) ]]</font> [[ a['name'] ]] [[ (a['font_style']) and (setTag('font','font',{'face':a['font_style']})) or (a['level']==1 and (setTag('para','para',{'fontName':'Helvetica-Bold'}))) ]] [[ a['color_font'] and ( setTag('font','font',{'color':a['color_font']})) ]] [[ a['color_back'] and ( setTag('para','para',{'backColor':a['color_back']})) ]]</font></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P18"><font>[[ '%.2f'% a['balance'] ]] [[ a['font_style'] and (setTag('font','font', {'face':a['font_style'] })) ]] [[ a['color_font'] and ( setTag('font','font',{'color':a['color_font']})) ]] [[ a['color_back'] and ( setTag('para','para',{'backColor':a['color_back']})) ]]</font></para>
|
||||
<para style="P18"><font>[[ '%.2f'% a['balance'] ]] [[ (a['font_style']) and (setTag('font','font',{'face':a['font_style']})) or (a['level']==1 and (setTag('para','para',{'fontName':'Helvetica-Bold'}))) ]] [[ a['color_font'] and ( setTag('font','font',{'color':a['color_font']})) ]] [[ a['color_back'] and ( setTag('para','para',{'backColor':a['color_back']})) ]]</font></para>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
Reference in New Issue
Block a user