l10n_ch: dirty workaround for bvr_report, when no bank is set
[odoo/odoo.git] / addons / l10n_ch / report / bvr_report.rml
1 <?xml version="1.0"?>
2 <document filename="test.pdf">
3   <docinit>
4   </docinit>
5   <template pageSize="(210.0mm,297.0mm)" title="BVR" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
6     <pageTemplate id="first">
7           <pageGraphics>
8             <!-- You Logo - Change X,Y,Width and Height -->
9       <image x="1.3cm" y="27.6cm" height="40.0" >[[company.logo or removeParentNode('image')]]</image>
10             <setFont name="Helvetica" size="8"/>
11             <fill color="black"/>
12             <stroke color="black"/>
13             <lines>1.3cm 27.7cm 20cm 27.7cm</lines>
14
15             <drawRightString x="20cm" y="27.8cm">[[ company.rml_header1 ]] </drawRightString>
16             <drawString x="1.3cm" y="27.2cm">[[ company.partner_id.name ]]</drawString>
17             <drawString x="1.3cm" y="26.8cm">[[ company.partner_id.address and company.partner_id.address[0].street or  '' ]]</drawString>
18             <drawString x="1.3cm" y="26.4cm">[[ company.partner_id.address and company.partner_id.address[0].zip or '' ]] [[ company.partner_id.address and company.partner_id.address[0].city or '' ]] - [[ company.partner_id.address and company.partner_id.address[0].country_id and company.partner_id.address[0].country_id.name  or '']]</drawString>
19             <drawString x="1.3cm" y="26.0cm">Phone:</drawString>
20             <drawRightString x="7cm" y="26.0cm">[[ company.partner_id.address and company.partner_id.address[0].phone or '' ]]</drawRightString>
21             <drawString x="1.3cm" y="25.6cm">Mail:</drawString>
22             <drawRightString x="7cm" y="25.6cm">[[ company.partner_id.address and company.partner_id.address[0].email or '' ]]</drawRightString>
23             <lines>1.3cm 25.5cm 7cm 25.5cm</lines>
24         </pageGraphics>
25
26       <frame id="first" x1="24.0" y1="111.5mm" width="190mm" height="142mm" last="1"/>
27       <frame id="Frame1"
28                 expr="{'height':str(111+(company.bvr_delta_vert or 0.0))+'mm', 'x1': str((company.bvr_delta_horz or 0.0))+'mm'}"
29                 x1="0mm"
30                 y1="-5"
31                 width="210mm"
32                 height="111mm"/>
33     </pageTemplate>
34   </template>
35
36
37   <stylesheet>
38     <blockTableStyle id="Standard_Outline">
39       <blockAlignment value="LEFT"/>
40       <blockValign value="TOP"/>
41     </blockTableStyle>
42     <blockTableStyle id="Table1">
43       <blockAlignment value="LEFT"/>
44       <blockValign value="TOP"/>
45     </blockTableStyle>
46     <blockTableStyle id="Table2">
47       <blockAlignment value="LEFT"/>
48       <blockValign value="TOP"/>
49     </blockTableStyle>
50     <initialize>
51       <paraStyle name="all" alignment="justify"/>
52     </initialize>
53     <paraStyle name="P1" fontName="Times-Roman" fontSize="11.0" leading="14"/>
54     <paraStyle name="P2" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="LEFT"/>
55     <paraStyle name="PBVR" fontName="ocrb" fontSize="11.0" leading="14" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
56     <paraStyle name="P4" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
57     <paraStyle name="P5" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
58     <paraStyle name="P6" fontName="ocrb" fontSize="11.0" leading="14" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
59     <paraStyle name="P7" fontName="Courier-Bold" fontSize="12.0" leading="15" alignment="LEFT"/>
60     <paraStyle name="P8" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="6.0"/>
61     <paraStyle name="P9" fontName="Times-Roman" fontSize="12.0" leading="15" spaceBefore="0.0" spaceAfter="6.0"/>
62     <paraStyle name="P10" fontName="Times-Roman" fontSize="11.0" leading="14"/>
63     <paraStyle name="P11" fontName="Times-Roman" fontSize="11.0" leading="14" spaceBefore="0.0" spaceAfter="6.0"/>
64     <paraStyle name="Standard" fontName="Times-Roman"/>
65     <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
66     <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
67     <paraStyle name="Table Contents" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
68     <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
69     <paraStyle name="Caption" fontName="Times-Roman" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
70     <paraStyle name="Frame contents" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
71     <paraStyle name="Index" fontName="Times-Roman"/>
72   </stylesheet>
73   <story>
74     <para style="P8">[[ repeatIn(objects,'o') ]]<font face="Times-Roman">[[ setLang(o.partner_id.lang) ]]</font></para>
75     <blockTable colWidths="264.0,264.0" style="Table2">
76       <tr>
77         <td>
78           <para style="P9">
79             <font color="white"> </font>
80           </para>
81         </td>
82         <td>
83           <para style="P10">[[ o.partner_id.name ]] [[ o.partner_id.title or '' ]]</para>
84           <para style="P10">[[ o.address_invoice_id.title or '' ]] [[ o.address_invoice_id.name ]]</para>
85           <para style="P10">[[ o.address_invoice_id.street ]]</para>
86           <para style="P10">[[ o.address_invoice_id.street2 or '' ]]</para>
87           <para style="P10">[[ o.address_invoice_id.zip or '' ]] [[ o.address_invoice_id.city or '' ]]</para>
88           <para style="P10">[[ o.address_invoice_id.state_id and o.address_invoice_id.state_id.name or '' ]]</para>
89           <para style="P10">[[ o.address_invoice_id.country_id and o.address_invoice_id.country_id.name or '' ]]</para>
90         </td>
91       </tr>
92     </blockTable>
93     <para style="P11">
94       <font color="white"> </font>
95     </para>
96     <para style="P11"><font face="Helvetica-Bold">Subject: </font>Invoice - [[ o.number ]]</para>
97     <para style="P11">
98       <font color="white"> </font>
99     </para>
100     <para style="P11">Dear customer,</para>
101     <para style="P11">Here is the BVR to allow you to pay the invoice ' <font face="Times-Roman">[[ o.name ]]</font>', reference:<font face="Times-Roman"> [[ o.number ]].</font></para>
102     <para style="P11">Thanks,</para>
103     <para style="P11">
104       <font color="white"> </font>
105     </para>
106     <para style="P11">[[ user.signature ]]</para>
107     <currentFrame name="Frame1"/>
108         <!--
109                 Width: 2.3inch, 5.9inch
110                 Height: 4*1/6 inch
111         -->
112         <illustration width="210mm" height="106mm">
113                 <setFont name="Helvetica" size="11"/>
114         <drawString x="2mm" y="93mm">[[ o.partner_bank_id and o.partner_bank_id.printBank and o.partner_bank_id.bank and o.partner_bank_id.bank.name or '' ]]</drawString>
115                 <drawString x="2mm" y="88mm">[[ o.partner_bank_id and o.partner_bank_id.printBank and o.partner_bank_id.bank and o.partner_bank_id.bank.zip or '']] [[ o.partner_bank_id and o.partner_bank_id.printBank and o.partner_bank_id.bank and o.partner_bank_id.bank.city or '']]</drawString>
116
117                 <drawString x="62mm" y="93mm">[[ o.partner_bank_id and o.partner_bank_id.printBank and o.partner_bank_id.bank and o.partner_bank_id.bank.name or '' ]]</drawString>
118                 <drawString x="62mm" y="88mm">[[ o.partner_bank_id and o.partner_bank_id.printBank and o.partner_bank_id.bank and o.partner_bank_id.bank.zip or '']] [[ o.partner_bank_id and o.partner_bank_id.printBank and o.partner_bank_id.bank and o.partner_bank_id.bank.city or '']]</drawString>
119
120                 <drawString x="2mm" y="78mm">  [[ user.company_id.partner_id.name ]]</drawString>
121                 <drawString x="2mm" y="73mm">  [[ user.company_id.partner_id.address[0].street ]]</drawString>
122                 <drawString x="2mm" y="68mm">  [[ (user.company_id.partner_id.address[0].street2 or '')]]</drawString>
123                 <drawString x="2mm" y="63mm">  [[ user.company_id.partner_id.address[0].zip ]] [[ user.company_id.partner_id.address[0].city ]]</drawString>
124
125                 <drawString x="62mm" y="78mm">[[ user.company_id.partner_id.name ]]</drawString>
126                 <drawString x="62mm" y="73mm">[[ user.company_id.partner_id.address[0].street ]]</drawString>
127                 <drawString x="62mm" y="68mm">[[ (user.company_id.partner_id.address[0].street2 or '')]]</drawString>
128                 <drawString x="62mm" y="63mm">[[ user.company_id.partner_id.address[0].zip ]] [[ user.company_id.partner_id.address[0].city ]]</drawString>
129
130                 <setFont name="ocrb" size="9"/>
131
132                 <drawString x="2mm" y="35mm">  [[ o.partner_id.name ]]</drawString>
133                 <drawString x="2mm" y="30mm">  [[ o.address_invoice_id.street ]]</drawString>
134                 <drawString x="2mm" y="25mm">  [[ (o.address_invoice_id.street2 or '')]]</drawString>
135                 <drawString x="2mm" y="20mm">  [[ o.address_invoice_id.zip ]] [[ o.address_invoice_id.city ]]</drawString>
136
137                 <drawString x="2mm" y="40mm">  [[ _get_ref(o) ]]</drawString>
138
139                 <drawString x="126mm" y="50mm">[[ o.partner_id.name ]]</drawString>
140                 <drawString x="126mm" y="45mm">[[ o.address_invoice_id.street ]]</drawString>
141                 <drawString x="126mm" y="40mm">[[ (o.address_invoice_id.street2 or '')]]</drawString>
142                 <drawString x="126mm" y="35mm">[[ o.address_invoice_id.zip ]] [[ o.address_invoice_id.city ]]</drawString>
143
144
145                 <setFont name="ocrb" size="11"/>
146                 <drawString x="124mm" y="67mm">[[ _space(_get_ref(o)) ]]</drawString>
147
148                 <setFont name="ocrb" size="12"/>
149         <drawRightString x="52 mm" y="59.3mm">[[ o.partner_bank_id and o.partner_bank_id.printAccount and o.partner_bank_id.bvr_number or '' ]]</drawRightString>
150         <drawRightString x="112mm" y="59.3mm">[[ o.partner_bank_id and o.partner_bank_id.printAccount and o.partner_bank_id.bvr_number or '' ]]</drawRightString>
151                 <drawRightString x="42mm" y="50mm">[[ _space(('%.2f' % o.amount_total)[:-3], 1) + ' ' ]]</drawRightString>
152                 <drawRightString x="104mm" y="50mm">[[ _space(('%.2f' % o.amount_total)[:-3], 1) + ' ' ]]</drawRightString>
153         <drawRightString x="114 mm" y="59.3mm">[[ o.partner_bank_id and o.partner_bank_id.printAccount and o.partner_bank_id.bvr_number or '' ]]</drawRightString>
154                 <drawRightString x="58mm" y="50mm">[[ _space(('%.2f' % o.amount_total)[-2:], 1) + ' ' ]]</drawRightString>
155                 <drawRightString x="119mm" y="50mm">[[ _space(('%.2f' % o.amount_total)[-2:], 1) + ' ' ]]</drawRightString>
156
157
158                 <!--
159                         Exact value: y=17.6mm
160                 -->
161
162                 <setFont name="ocrb" size="11.5"/>
163         <drawRightString x="195mm" y="15mm">[[mod10r('01'+str('%.2f' % o.amount_total).replace('.','').rjust(10,'0'))]]&gt;[[ _get_ref(o) ]]+ [[ bvr_format(o)]]&gt;</drawRightString>
164         </illustration>
165   </story>
166 </document>