[MERGE]
[odoo/odoo.git] / addons / account / report / account_profit_loss.rml
1 <?xml version="1.0"?>
2 <document filename="test.pdf">
3   <template pageSize="(595.0,842.0)" title="Profit and Loss" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
4     <pageTemplate id="first">
5       <frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
6     </pageTemplate>
7   </template>
8   <stylesheet>
9     <blockTableStyle id="Standard_Outline">
10       <blockAlignment value="LEFT"/>
11       <blockValign value="TOP"/>
12     </blockTableStyle>
13     <blockTableStyle id="Table_Heading">
14       <blockAlignment value="LEFT"/>
15       <blockValign value="TOP"/>
16     </blockTableStyle>
17     <blockTableStyle id="Table_Company_Name">
18       <blockAlignment value="LEFT"/>
19       <blockValign value="TOP"/>
20     </blockTableStyle>
21     <blockTableStyle id="Table_Date_from_To">
22       <blockAlignment value="LEFT"/>
23       <blockValign value="TOP"/>
24     </blockTableStyle>
25     <blockTableStyle id="Table_Account_Line_Title">
26       <blockAlignment value="LEFT"/>
27       <blockValign value="TOP"/>
28       <lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
29       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,1" stop="-1,-1"/>
30     </blockTableStyle>
31      <blockTableStyle id="Table3">
32       <blockAlignment value="LEFT"/>
33       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
34     </blockTableStyle>
35     <blockTableStyle id="Table6">
36       <blockAlignment value="LEFT"/>
37       <blockValign value="TOP"/>
38     </blockTableStyle>
39     <blockTableStyle id="Table_Net_Profit_Loss">
40       <blockAlignment value="LEFT"/>
41       <blockValign value="TOP"/>
42       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,0" stop="-1,-1"/>
43     </blockTableStyle>
44     <blockTableStyle id="Table2">
45       <blockAlignment value="LEFT"/>
46       <blockValign value="TOP"/>
47       <lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
48       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,1" stop="-1,-1"/>
49     </blockTableStyle>
50     <blockTableStyle id="Table3">
51       <blockAlignment value="LEFT"/>
52       <blockValign value="TOP"/>
53       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
54     </blockTableStyle>
55     <blockTableStyle id="Table4">
56       <blockAlignment value="LEFT"/>
57       <blockValign value="TOP"/>
58       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,0" stop="-1,-1"/>
59     </blockTableStyle>
60     <blockTableStyle id="Table_Final_Result">
61       <blockAlignment value="LEFT"/>
62       <blockValign value="TOP"/>
63       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
64       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
65       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
66       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
67       <lineStyle kind="LINEAFTER" colorName="#cccccc" start="1,0" stop="1,-1"/>
68       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
69       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
70     </blockTableStyle>
71    <blockTableStyle id="Table2_header">
72       <blockAlignment value="LEFT"/>
73       <blockValign value="TOP"/>
74     <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,0" stop="-1,0"/>
75       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
76       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
77       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
78       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
79       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
80       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
81       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
82       <lineStyle kind="LINEAFTER" colorName="#cccccc" start="2,0" stop="2,-1"/>
83       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
84       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
85       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
86       <lineStyle kind="LINEAFTER" colorName="#cccccc" start="3,0" stop="3,-1"/>
87       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
88       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
89       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="4,0" stop="4,-1"/>
90       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="4,0" stop="4,0"/>
91       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="4,-1" stop="4,-1"/>
92       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="5,0" stop="5,-1"/>
93       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="5,0" stop="5,0"/>
94       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="5,-1" stop="5,-1"/>
95       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="6,0" stop="6,-1"/>
96       <lineStyle kind="LINEAFTER" colorName="#cccccc" start="6,0" stop="6,-1"/>
97       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="6,0" stop="6,0"/>
98       <lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
99       <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
100       <lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
101       <lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
102     </blockTableStyle>
103     <initialize>
104       <paraStyle name="all" alignment="justify"/>
105     </initialize>
106     <paraStyle name="P1" rightIndent="2.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
107     <paraStyle name="P2" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
108     <paraStyle name="Standard" fontName="Times-Roman"/>
109     <paraStyle name="Heading" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="12.0" spaceAfter="6.0"/>
110     <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
111     <paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
112     <paraStyle name="Caption" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" spaceBefore="6.0" spaceAfter="6.0"/>
113     <paraStyle name="Index" fontName="Helvetica" fontSize="9.0" leading="11"/>
114     <paraStyle name="Footer" fontName="Times-Roman"/>
115     <paraStyle name="Table Contents" fontName="Times-Roman"/>
116     <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/>
117     <paraStyle name="Horizontal Line" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
118     <paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
119     <paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
120     <paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
121     <paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
122     <paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
123     <paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
124     <paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
125     <paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
126     <paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
127     <paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
128     <paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
129     <paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
130     <paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
131     <paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
132     <paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
133     <paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
134     <paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
135     <paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
136     <paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
137     <paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
138     <paraStyle name="terp_default_2" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
139   </stylesheet>
140   <images/>
141   <story>
142     <blockTable colWidths="539.0" style="Table_Company_Name">
143       <tr>
144         <td>
145           <para style="terp_header_Centre">Profit And Loss</para>
146         </td>
147       </tr>
148     </blockTable>
149
150     <para style="P2">[[ get_data(data) or removeParentNode('para')]]</para>
151         <para style="Standard">
152       <font color="white"> </font>
153     </para>
154       <blockTable colWidths="125.0,100.0,140.0,80.0,90.0" style="Table2_header">
155       <tr>
156         <td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
157         <td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
158         <td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
159                 <td><para style="terp_tblheader_General_Centre">Display Account</para></td>
160         <td><para style="terp_tblheader_General_Centre">Target Moves</para></td>
161       </tr>
162         <tr>
163            <td><para style="terp_default_Centre_8">[[ get_account(data) or removeParentNode('para') ]]</para></td>
164        <td><para style="terp_default_Centre_8">[[ get_fiscalyear(data)  or '' ]]</para></td>
165         <td><para style="terp_default_Centre_8">[[ get_filter(data)=='No Filter' and get_filter(data) or removeParentNode('para') ]] </para>
166                 <blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
167                                 <tr>
168                        <td><para style="terp_tblheader_General_Centre">Start Date</para></td>
169                                 <td><para style="terp_tblheader_General_Centre">End Date</para></td>
170                         </tr>
171                         <tr>
172                                 <td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
173                                 <td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
174                         </tr>
175                 </blockTable>
176                 <blockTable colWidths="65.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
177                                 <tr>
178                                 <td><para style="terp_tblheader_General_Centre">Start Period</para></td>
179                                 <td><para style="terp_tblheader_General_Centre">End Period</para></td>
180                         </tr>
181                         <tr>
182                                 <td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
183                                 <td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
184                         </tr>
185                  </blockTable>
186                 </td>
187                 <td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or  (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
188                 <td><para style="terp_default_Centre_8">[[ get_target_move(data) ]] </para></td>
189         </tr>
190         </blockTable>
191     <para style="Standard">
192       <font color="white"> </font>
193     </para>
194     <para style="Standard">
195       <font color="white"> </font>
196     </para>
197     <blockTable colWidths="100.0,326.0,113.0" style="Table_Account_Line_Title" repeatRows="1">
198       <tr>
199         <td>
200           <para style="terp_default_Bold_9">Code</para>
201         </td>
202         <td>
203           <para style="terp_default_Bold_9">Expenses</para>
204         </td>
205         <td>
206           <para style="terp_tblheader_Details_Right">Balance</para>
207         </td>
208       </tr>
209       <tr>
210         <td>
211           <para style="terp_default_9">
212             <font face="Times-Roman">[[ repeatIn(get_lines_another('expense'),'a' ) ]] </font>[[ a.code ]]<font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'}))  or removeParentNode('font') ]]</font>
213           </para>
214         </td>
215         <td>
216           <para style="terp_default_9">
217             <font color="white">[[  '. '*(a.level-1) ]]</font><font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'}))  or removeParentNode('font') ]][[ a.name ]]</font>
218           </para>
219         </td>
220          <td>
221           <para style="terp_default_Right_9"><font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'}))  or removeParentNode('font') ]]</font><font>[[ formatLang(abs(a.balance)) ]] [[ company.currency_id.symbol ]]</font></para>
222         </td>
223       </tr>
224     </blockTable>
225     <blockTable colWidths="100.0,326.0,113.0" style="Table_Net_Profit_Loss">
226       <tr>
227         <td>
228           <para style="terp_default_Bold_9"></para>
229         </td>
230         <td>
231           <para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Profit' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
232         </td>
233         <td>
234           <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and  formatLang(abs(final_result()['balance'])) ]] [[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and company.currency_id.symbol ]]</para>
235         </td>
236       </tr>
237     </blockTable>
238     <blockTable colWidths="426.0,113.0" style="Table_Net_Profit_Loss">
239       <tr>
240         <td>
241           <para style="terp_default_Bold_9">Total:([[ get_currency(data) ]])</para>
242         </td>
243         <td>
244           <para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) ]] [[ company.currency_id.symbol ]]</u></para>
245         </td>
246       </tr>
247     </blockTable>
248      <condPageBreak height="20cm"/>
249     <para style="terp_default_Right_9_Bold">
250       <font color="white"> </font>
251     </para>
252     <blockTable colWidths="100.0,326.0,113.0" style="Table2" repeatRows="1">
253       <tr>
254         <td>
255           <para style="terp_default_Bold_9">Code</para>
256         </td>
257         <td>
258           <para style="terp_default_Bold_9">Incomes</para>
259         </td>
260         <td>
261           <para style="P1">Balance</para>
262         </td>
263       </tr>
264       <tr>
265         <td>
266           <para style="terp_default_9">
267             <font face="Times-Roman">[[ repeatIn(get_lines_another('income'),'a') ]] </font>[[ a.code ]]<font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'}))  or removeParentNode('font') ]]</font>
268           </para>
269         </td>
270         <td>
271           <para style="terp_default_9">
272             <font color="white">[[  '. '*(a.level-1) ]]</font><font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'}))  or removeParentNode('font') ]][[ a.name ]]</font>
273           </para>
274         </td>
275         <td>
276           <para style="terp_default_Right_9"><font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'}))  or removeParentNode('font') ]]</font><font>[[ formatLang(abs(a.balance)) ]] [[ company.currency_id.symbol ]]</font></para>
277         </td>
278       </tr>
279     </blockTable>
280     <blockTable colWidths="100.0,326.0,113.0" style="Table4">
281       <tr>
282         <td>
283           <para style="terp_default_Bold_9"></para>
284         </td>
285         <td>
286           <para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Loss' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
287         </td>
288         <td>
289           <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and  formatLang(abs(final_result()['balance'])) ]] [[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and company.currency_id.symbol ]]</para>
290         </td>
291       </tr>
292     </blockTable>
293     <blockTable colWidths="426.0,113.0" style="Table4">
294       <tr>
295         <td>
296           <para style="terp_default_Bold_9">Total:</para>
297         </td>
298         <td>
299           <para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) ]] [[ company.currency_id.symbol ]]</u></para>
300         </td>
301       </tr>
302     </blockTable>
303     <para style="Standard">
304       <font color="white"> </font>
305     </para>
306     <para style="terp_default_Right_9_Bold">
307       <font color="white"> </font>
308     </para>
309   </story>
310 </document>