Improvement of the L10n_fr account_chart
authorpinky <>
Thu, 14 Dec 2006 14:35:24 +0000 (14:35 +0000)
committerpinky <>
Thu, 14 Dec 2006 14:35:24 +0000 (14:35 +0000)
Dashboards
Type in PO orders

bzr revid: pinky-d9b12f1707823e9b9a46ffee459fd90aedce8e3e

14 files changed:
addons/account/project/project.py
addons/account/project/project_view.xml
addons/board_sale/board_sale_view.xml
addons/hr_timesheet_invoice/hr_timesheet_invoice.py
addons/l10n_ca-qc/__terp__.py
addons/l10n_fr/__terp__.py
addons/l10n_fr/account_pcg_france.xml
addons/purchase/report/order.rml
addons/report_timesheet/__init__.py [new file with mode: 0644]
addons/report_timesheet/__terp__.py [new file with mode: 0644]
addons/report_timesheet/report_timesheet.py [new file with mode: 0644]
addons/report_timesheet/report_timesheet_view.xml [new file with mode: 0644]
addons/sale/report/order.rml
addons/sale/sale.py

index 12c2648..9b931f9 100644 (file)
@@ -114,6 +114,7 @@ class account_analytic_account(osv.osv):
                'quantity_max': fields.float('Maximal quantity'),
                'partner_id' : fields.many2one('res.partner', 'Associated partner'),
                'contact_id' : fields.many2one('res.partner.address', 'Contact'),
+               'user_id' : fields.many2one('res.users', 'Account Manager'),
                'date_start': fields.date('Date Start'),
                'date': fields.date('Date End'),
                'stats_ids': fields.one2many('report.hr.timesheet.invoice.journal', 'account_id', string='Statistics', readonly=True),
index 17048c4..092da10 100644 (file)
@@ -56,6 +56,7 @@
                                                        <field name="date" select="1" />
                                                        <newline/>
                                                        <field name="quantity_max" />
+                                                       <field name="user_id" />
                                                        <separator string="Note" colspan="4" />
                                                        <field name="description" colspan="4" nolabel="1" />
                                                </page>
index 1cad6ce..7ee9ccf 100644 (file)
@@ -8,9 +8,14 @@
                        <field name="type">form</field>
                        <field name="arch" type="xml">
                                <form string="Sales manager board">
-                                       <hpaned>
+                                       <hpaned position="100">
                                                <child1>
-                                                       <action string="Your open request quotation" name="%(sale.action_order_tree10)d" colspan="3"/>
+                                                       <action
+                                                               string="Your open request quotation"
+                                                               name="%(sale.action_order_tree10)d"
+                                                               colspan="3"
+                                                               height="200"
+                                                               width="510"/>
                                                        <action string="Top ten sales of the month" name="%(report_sale.action_order_sale_list)d" colspan="3"/>
                                                        <action string="Sales of the month" name="%(sale.action_order_tree5)d" colspan="3"/>
                                                </child1>
@@ -33,6 +38,6 @@
                        <field name="view_id" ref="board_sales_manager_form"/>
                </record>
 
-               <menuitem name="Board/Sales Manager" action="open_board_sales_manager" sequence="1" id="menu_board_sales_manager"/>
+               <menuitem name="Dashboards/Sales Manager" action="open_board_sales_manager" sequence="1" id="menu_board_sales_manager"/>
        </data>
 </terp>
index 352ec0c..8c4d8d6 100644 (file)
@@ -32,7 +32,7 @@ from osv import fields, osv
 
 class hr_timesheet_invoice_factor(osv.osv):
        _name = "hr_timesheet_invoice.factor"
-       _description = "This class handle the types of invoicing, like 50% for customer"
+       _description = "Invoice rate"
        _columns = {
                'name': fields.char('Internal name', size=128, required=True),
                'customer_name': fields.char('Visible name', size=128),
index ad1729a..49e6c1c 100644 (file)
@@ -1,5 +1,5 @@
 {
-       "name" : "Localisation for Quebec",
+       "name" : "Canada - Quebec",
        "version" : "1.0",
        "author" : "Tiny",
        "category" : "Localisation/Account charts",
index b20c2a7..a33aa7d 100644 (file)
@@ -1,5 +1,5 @@
 {
-       "name" : "Localisation for France",
+       "name" : "France",
        "version" : "1.0",
        "author" : "Tiny",
        "category" : "Localisation/Account charts",
index 75cc918..e3e4e2f 100644 (file)
        <field name="type">payable</field>
        <field name="parent_id" eval="[(6,0,[plan363])]"/>
 </record>
-<record model="account.account" id="account.a_pay">
+<record model="account.account" id="plan400">
        <field name="code">400</field>
        <field name="name">Fournisseurs et comptes rattachés </field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">payable</field>
        <field name="parent_id" eval="[(6,0,[plan364])]"/>
 </record>
-<record model="account.account" id="plan366">
+<record model="account.account" id="plan401">
        <field name="code">401</field>
        <field name="name">Fournisseurs</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">payable</field>
-       <field name="parent_id" eval="[(6,0,[plan364])]"/>
+       <field name="parent_id" eval="[(6,0,[plan400])]"/>
 </record>
-<record model="account.account" id="plan367">
+<record model="account.account" id="account.a_pay">
        <field name="code">4011</field>
        <field name="name">Fournisseurs - Achats de biens et prestations de services</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">payable</field>
-       <field name="parent_id" eval="[(6,0,[plan366])]"/>
+       <field name="parent_id" eval="[(6,0,[plan401])]"/>
 </record>
 <record model="account.account" id="plan368">
        <field name="code">4017</field>
        <field name="name">Fournisseurs - Retenues de garantie</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">payable</field>
-       <field name="parent_id" eval="[(6,0,[plan366])]"/>
+       <field name="parent_id" eval="[(6,0,[plan400])]"/>
 </record>
 <record model="account.account" id="plan369">
        <field name="code">403</field>
        <field name="type">receivable</field>
        <field name="parent_id" eval="[(6,0,[plan363])]"/>
 </record>
-<record model="account.account" id="account.a_recv">
+<record model="account.account" id="plan410">
        <field name="code">410</field>
        <field name="name">Clients et comptes rattachés </field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">receivable</field>
        <field name="parent_id" eval="[(6,0,[plan385])]"/>
 </record>
-<record model="account.account" id="plan387">
+<record model="account.account" id="plan411">
        <field name="code">411</field>
        <field name="name">Clients</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">receivable</field>
-       <field name="parent_id" eval="[(6,0,[plan385])]"/>
+       <field name="parent_id" eval="[(6,0,[plan410])]"/>
 </record>
-<record model="account.account" id="plan388">
+<record model="account.account" id="account.a_recv">
        <field name="code">4111</field>
        <field name="name">Clients - Ventes de biens ou de prestations de services</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">receivable</field>
-       <field name="parent_id" eval="[(6,0,[plan387])]"/>
+       <field name="parent_id" eval="[(6,0,[plan411])]"/>
 </record>
 <record model="account.account" id="plan389">
        <field name="code">4117</field>
        <field name="name">Clients - Retenues de garantie</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">receivable</field>
-       <field name="parent_id" eval="[(6,0,[plan387])]"/>
+       <field name="parent_id" eval="[(6,0,[plan411])]"/>
 </record>
 <record model="account.account" id="plan390">
        <field name="code">413</field>
        <field name="type">receivable</field>
        <field name="parent_id" eval="[(6,0,[plan363])]"/>
 </record>
-<record model="account.account" id="plan401">
+<record model="account.account" id="plan421pp">
        <field name="code">421</field>
        <field name="name">Personnel - Rémunérations dues</field>
        <field name="currency_id" ref="base.EUR"/>
        <field name="type">receivable</field>
        <field name="parent_id" eval="[(6,0,[plan409])]"/>
 </record>
-<record model="account.account" id="plan411">
+<record model="account.account" id="plan411b">
        <field name="code">4284</field>
        <field name="name">Dettes provisionnées pour participation des salariés aux résultats</field>
        <field name="currency_id" ref="base.EUR"/>
index 10c9991..6c71547 100644 (file)
       <blockTable colWidths="194.0,65.0,52.0,65.0,64.0,69.0" style="Tableau3">
         <tr>
           <td>
-            <para style="P16">[[ line.code ]]</para>
+            <para style="P16">[[ line.product_id and line.product_id.default_code or '' ]]</para>
             <para style="P16">[[ line.name ]]</para>
           </td>
           <td>
diff --git a/addons/report_timesheet/__init__.py b/addons/report_timesheet/__init__.py
new file mode 100644 (file)
index 0000000..8aa10ca
--- /dev/null
@@ -0,0 +1,30 @@
+##############################################################################
+#
+# Copyright (c) 2004-2006 TINY SPRL. (http://tiny.be) All Rights Reserved.
+#
+# $Id: timesheet.py 1005 2005-07-25 08:41:42Z nicoe $
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsability of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# garantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program 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 General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+##############################################################################
+
+import report_timesheet
diff --git a/addons/report_timesheet/__terp__.py b/addons/report_timesheet/__terp__.py
new file mode 100644 (file)
index 0000000..e202431
--- /dev/null
@@ -0,0 +1,13 @@
+{
+       "name" : "Timesheet - Reporting",
+       "version" : "1.0",
+       "author" : "Tiny",
+       "website" : "http://tinyerp.com",
+       "depends" : ["hr_timesheet",'hr_timesheet_invoice'],
+       "category" : "Generic Modules/Human ressources",
+       "init_xml" : [],
+       "demo_xml" : [],
+       "update_xml" : ["report_timesheet_view.xml"],
+       "active": False,
+       "installable": True
+}
diff --git a/addons/report_timesheet/report_timesheet.py b/addons/report_timesheet/report_timesheet.py
new file mode 100644 (file)
index 0000000..005b88f
--- /dev/null
@@ -0,0 +1,99 @@
+##############################################################################
+#
+# Copyright (c) 2004-2006 TINY SPRL. (http://tiny.be) All Rights Reserved.
+#
+# $Id: sale.py 1005 2005-07-25 08:41:42Z nicoe $
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsability of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# garantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program 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 General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+##############################################################################
+
+from osv import fields,osv
+
+class report_timesheet_user(osv.osv):
+       _name = "report_timesheet.user"
+       _description = "Timesheet per day"
+       _auto = False
+       _columns = {
+               'name': fields.date('Date', readonly=True),
+               'user_id':fields.many2one('res.users', 'User', readonly=True, relate=True),
+               'quantity': fields.float('Quantity', readonly=True),
+               'cost': fields.float('Cost', readonly=True)
+       }
+       _order = 'name desc,user_id desc'
+       def init(self, cr):
+               cr.execute("""
+                       create or replace view report_timesheet_user as (
+                               select
+                                       min(l.id) as id,
+                                       l.date as name,
+                                       l.user_id,
+                                       sum(l.unit_amount) as quantity,
+                                       sum(l.amount) as cost
+                               from
+                                       account_analytic_line l
+                               where
+                                       user_id is not null
+                               group by l.date, l.user_id
+                       )
+               """)
+report_timesheet_user()
+
+class report_timesheet_invoice(osv.osv):
+       _name = "report_timesheet.invoice"
+       _description = "Costs to invoice"
+       _auto = False
+       _columns = {
+               'user_id':fields.many2one('res.users', 'User', readonly=True, relate=True),
+               'project_id':fields.many2one('res.users', 'User', readonly=True, relate=True),
+               'manager_id':fields.many2one('res.users', 'User', readonly=True, relate=True),
+               'quantity': fields.float('Quantity', readonly=True),
+               'amount_invoice': fields.float('To invoice', readonly=True)
+       }
+       _rec_name = 'user_id'
+       _order = 'name desc,user_id desc'
+       def init(self, cr):
+               cr.execute("""
+                       create or replace view report_timesheet_invoice as (
+                               select
+                                       min(l.id) as id,
+                                       l.user_id as user_id,
+                                       l.account_id as account_id,
+                                       a.user_id as manager_id,
+                                       sum(l.unit_amount) as quantity,
+                                       sum(l.unit_amount * t.list_price) as revenue
+                               from account_analytic_line l
+                                       left join hr_timesheet_invoice_factor f on (l.to_invoice=f.id)
+                                       left join account_analytic_account a on (l.account_id=a.id)
+                                       left join product_product p on (l.to_invoice=f.id)
+                                       left join product_template t on (l.to_invoice=f.id)
+                               where
+                                       l.to_invoice is not null and
+                                       l.invoice_id is null
+                               group by
+                                       l.user_id,
+                                       l.account_id,
+                                       a.user_id
+                       )
+               """)
+report_timesheet_invoice()
+
diff --git a/addons/report_timesheet/report_timesheet_view.xml b/addons/report_timesheet/report_timesheet_view.xml
new file mode 100644 (file)
index 0000000..83d905d
--- /dev/null
@@ -0,0 +1,142 @@
+<?xml version="1.0"?>
+<terp>
+<data>
+
+       #
+       # Statistics report on timesheet by user
+       #
+
+       <record model="ir.ui.view" id="view_timesheet_user_graph">
+               <field name="name">report_timesheet.user.graph</field>
+               <field name="model">report_timesheet.user</field>
+               <field name="type">graph</field>
+               <field name="arch" type="xml">
+                       <graph string="Timesheet by user" type="bar">
+                               <field name="name" group="True"/>
+                               <field name="quantity" operator="+"/>
+                       </graph>
+               </field>
+       </record>
+
+
+       <record model="ir.ui.view" id="view_timesheet_user_form">
+               <field name="name">report_timesheet.timesheet.user.form</field>
+               <field name="model">report_timesheet.user</field>
+               <field name="type">form</field>
+               <field name="arch" type="xml">
+                       <form string="Timesheet by user">
+                               <field name="name" select="1"/>
+                               <field name="user_id" select="1"/>
+                       </form>
+               </field>
+       </record>
+
+
+       <record model="ir.ui.view" id="view_timesheet_user_tree">
+               <field name="name">report_timesheet.timesheet.user.tree</field>
+               <field name="model">report_timesheet.user</field>
+               <field name="type">tree</field>
+               <field name="arch" type="xml">
+                       <tree string="Timesheet by user">
+                               <field name="name"/>
+                               <field name="user_id"/>
+                               <field name="quantity"/>
+                               <field name="cost"/>
+                       </tree>
+               </field>
+       </record>
+
+       <record model="ir.actions.act_window" id="action_timesheet_user_stat">
+               <field name="name">report_timesheet.user.tree</field>
+               <field name="res_model">report_timesheet.user</field>
+               <field name="view_type">form</field>
+               <field name="view_mode">tree,graph</field>
+               <field name="domain">[('name','&gt;=',time.strftime('%Y-%m-01'))]</field>
+       </record>
+       <menuitem 
+               name="Human Resources/Reporting/This Month/Timesheet by user"
+               action="action_timesheet_user_stat"
+               id="menu_report_timesheet_user"/>
+
+       <record model="ir.actions.act_window" id="action_timesheet_user_stat_all">
+               <field name="name">report_timesheet.user.tree.all</field>
+               <field name="res_model">report_timesheet.user</field>
+               <field name="view_type">form</field>
+               <field name="view_mode">tree,graph</field>
+       </record>
+       <menuitem 
+               name="Human Resources/Reporting/All Months/Timesheet by user"
+               action="action_timesheet_user_stat_all"
+               id="menu_report_timesheet_user_all"/>
+
+       #
+       # Statistics report on timesheets to invoice
+       #
+
+       <record model="ir.ui.view" id="view_timesheet_invoice_graph">
+               <field name="name">report_timesheet.invoice.graph</field>
+               <field name="model">report_timesheet.invoice</field>
+               <field name="type">graph</field>
+               <field name="arch" type="xml">
+                       <graph string="Timesheet by invoice">
+                               <field name="project_id" group="True"/>
+                               <field name="amount_invoice" operator="+"/>
+                       </graph>
+               </field>
+       </record>
+
+
+       <record model="ir.ui.view" id="view_timesheet_invoice_form">
+               <field name="name">report_timesheet.timesheet.invoice.form</field>
+               <field name="model">report_timesheet.invoice</field>
+               <field name="type">form</field>
+               <field name="arch" type="xml">
+                       <form string="Timesheet by invoice">
+                               <field name="project_id" select="1"/>
+                               <field name="manager_id" select="1"/>
+                               <field name="user_id" select="1"/>
+                       </form>
+               </field>
+       </record>
+
+
+       <record model="ir.ui.view" id="view_timesheet_invoice_tree">
+               <field name="name">report_timesheet.timesheet.invoice.tree</field>
+               <field name="model">report_timesheet.invoice</field>
+               <field name="type">tree</field>
+               <field name="arch" type="xml">
+                       <tree string="Timesheets to invoice">
+                               <field name="user_id"/>
+                               <field name="project_id"/>
+                               <field name="manager_id"/>
+                               <field name="quantity"/>
+                               <field name="amount_invoice"/>
+                       </tree>
+               </field>
+       </record>
+
+       <record model="ir.actions.act_window" id="action_timesheet_invoice_stat_all">
+               <field name="name">report_timesheet.invoice.tree.all</field>
+               <field name="res_model">report_timesheet.invoice</field>
+               <field name="view_type">form</field>
+               <field name="view_mode">tree,graph</field>
+       </record>
+       <menuitem 
+               name="Human Resources/Reporting/All Months/Timesheet by invoice"
+               action="action_timesheet_invoice_stat_all"
+               id="menu_report_timesheet_invoice_all"/>
+
+       <record model="ir.actions.act_window" id="action_timesheet_invoice_stat_my">
+               <field name="name">report_timesheet.invoice.tree</field>
+               <field name="res_model">report_timesheet.invoice</field>
+               <field name="view_type">form</field>
+               <field name="view_mode">tree,graph</field>
+               <field name="domain">[('manager_id','=',uid)]</field>
+       </record>
+       <menuitem 
+               name="Human Resources/Reporting/This Month/My timesheets to invoice"
+               action="action_timesheet_invoice_stat_my"
+               id="menu_report_timesheet_invoice_my"/>
+
+</data>
+</terp>
index 66b7145..7e33c8d 100644 (file)
@@ -24,7 +24,6 @@
       <blockBackground colorName="#e6e6e6" start="3,0" stop="3,0"/>
       <blockBackground colorName="#e6e6e6" start="4,0" stop="4,0"/>
       <blockBackground colorName="#e6e6e6" start="5,0" stop="5,0"/>
-      <blockBackground colorName="#e6e6e6" start="6,0" stop="6,0"/>
     </blockTableStyle>
     <blockTableStyle id="Tableau3">
       <blockAlignment value="LEFT"/>
     <paraStyle name="P12" fontName="Times-Roman" fontSize="11.0" leading="14"/>
     <paraStyle name="P13" fontName="Times-Bold" fontSize="8.0" leading="10"/>
     <paraStyle name="P14" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="CENTER"/>
-    <paraStyle name="P15" fontName="Times-BoldItalic" fontSize="6.0" leading="8" alignment="LEFT"/>
-    <paraStyle name="P16" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="LEFT"/>
-    <paraStyle name="P17" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="CENTER"/>
-    <paraStyle name="P18" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="RIGHT"/>
-    <paraStyle name="P19" fontName="Times-BoldItalic" fontSize="9.0" leading="11" alignment="LEFT"/>
-    <paraStyle name="P20" fontName="Times-Italic" fontSize="9.0" leading="11" alignment="LEFT"/>
-    <paraStyle name="P21" fontName="Times-Roman" fontSize="7.0" leading="9"/>
-    <paraStyle name="P22" fontName="Times-Bold" fontSize="9.0" leading="11" alignment="RIGHT"/>
-    <paraStyle name="P23" fontName="Times-Roman" fontSize="7.0" leading="9"/>
-    <paraStyle name="P24" fontName="Times-Bold" fontSize="9.0" leading="11" alignment="RIGHT"/>
-    <paraStyle name="P25" fontName="Times-Bold" fontSize="9.0" leading="11"/>
-    <paraStyle name="P26" fontName="Times-Roman" alignment="LEFT"/>
+    <paraStyle name="P15" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="RIGHT"/>
+    <paraStyle name="P16" fontName="Times-BoldItalic" fontSize="6.0" leading="8" alignment="LEFT"/>
+    <paraStyle name="P17" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="LEFT"/>
+    <paraStyle name="P18" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="CENTER"/>
+    <paraStyle name="P19" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="RIGHT"/>
+    <paraStyle name="P20" fontName="Times-BoldItalic" fontSize="9.0" leading="11" alignment="LEFT"/>
+    <paraStyle name="P21" fontName="Times-Italic" fontSize="9.0" leading="11" alignment="LEFT"/>
+    <paraStyle name="P22" fontName="Times-Roman" fontSize="7.0" leading="9"/>
+    <paraStyle name="P23" fontName="Times-Bold" fontSize="9.0" leading="11" alignment="RIGHT"/>
+    <paraStyle name="P24" fontName="Times-Roman" fontSize="7.0" leading="9"/>
+    <paraStyle name="P25" fontName="Times-Bold" fontSize="9.0" leading="11" alignment="RIGHT"/>
+    <paraStyle name="P26" fontName="Times-Bold" fontSize="9.0" leading="11"/>
     <paraStyle name="P27" fontName="Times-Roman" alignment="LEFT"/>
+    <paraStyle name="P28" fontName="Times-Roman" alignment="LEFT"/>
     <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"/>
           <para style="P9">
             <font color="white"> </font>
           </para>
-          <para style="P3">Tél. : [[ o.partner_order_id.phone or '' ]]</para>
+          <para style="P3">Tel. : [[ o.partner_order_id.phone or '' ]]</para>
           <para style="P3">Fax : [[ o.partner_order_id.fax or '' ]]</para>
-          <para style="P3">TVA : [[ o.partner_id.vat or '' ]]</para>
+          <para style="P3">VAT : [[ o.partner_id.vat or '' ]]</para>
         </td>
       </tr>
     </blockTable>
     <para style="P10">
       <font color="white"> </font>
     </para>
-    <blockTable colWidths="218.0,66.0,50.0,57.0,28.0,54.0,55.0" repeatRows="1" style="Tableau2">
+    <blockTable colWidths="270.0,63.0,56.0,32.0,52.0,55.0" repeatRows="1" style="Tableau2">
       <tr>
         <td>
           <para style="P13">Product Description</para>
           <para style="P14">Applicable Taxes</para>
         </td>
         <td>
-          <para style="P13">Delay</para>
-        </td>
-        <td>
-          <para style="P13">Qty</para>
+          <para style="P15">Qty</para>
         </td>
         <td>
           <para style="P13">Disc.</para>
       </tr>
     </blockTable>
     <section>
-      <para style="P15">[[ repeatIn(o.order_line,'line') ]]</para>
-      <blockTable colWidths="218.0,66.0,50.0,57.0,28.0,54.0,54.0" style="Tableau3">
+      <para style="P16">[[ repeatIn(o.order_line,'line') ]]</para>
+      <blockTable colWidths="270.0,63.0,56.0,32.0,52.0,54.0" style="Tableau3">
         <tr>
           <td>
-            <para style="P16">[[ line.name ]]</para>
-          </td>
-          <td>
-            <para style="P17">[[ ', '.join(map(lambda x: x.name, line.tax_id))]]</para>
+            <para style="P17">[[ line.name ]]</para>
           </td>
           <td>
-            <para style="P17">[[ line.delay ]]</para>
+            <para style="P18">[[ ', '.join(map(lambda x: x.name, line.tax_id))]]</para>
           </td>
           <td>
-            <para style="P18">[[ line.product_uos_qty or line.product_uom_qty ]] [[ line.product_uos and line.product_uos.name or line.product_uom.name ]]</para>
+            <para style="P19">[[ line.product_uos_qty or line.product_uom_qty ]] [[ line.product_uos and line.product_uos.name or line.product_uom.name ]]</para>
           </td>
           <td>
-            <para style="P16">[[ (line.discount and str(line.discount)+'%')or '' ]]</para>
+            <para style="P17">[[ (line.discount and str(line.discount)+'%')or '' ]]</para>
           </td>
           <td>
-            <para style="P18">[[ '%.2f' % line.price_unit ]]</para>
+            <para style="P19">[[ '%.2f' % line.price_unit ]]</para>
           </td>
           <td>
-            <para style="P18">[[ '%.2f' % line.price_subtotal ]]</para>
+            <para style="P19">[[ '%.2f' % line.price_subtotal ]]</para>
           </td>
         </tr>
       </blockTable>
       <blockTable colWidths="52.0,366.0,110.0" style="Tableau5">
         <tr>
           <td>
-            <para style="P19">[[ repeatIn((line.notes and [line.notes]) or [], 'l') ]]</para>
+            <para style="P20">[[ repeatIn((line.notes and [line.notes]) or [], 'l') ]]</para>
           </td>
           <td>
-            <para style="P20">[[ l ]] [[ setTag('para','xpre') ]]</para>
+            <para style="P21">[[ l ]] [[ setTag('para','xpre') ]]</para>
           </td>
           <td>
-            <para style="P19">
+            <para style="P20">
               <font color="white"> </font>
             </para>
           </td>
         </tr>
       </blockTable>
     </section>
-    <blockTable colWidths="348.0,69.0,110.0" style="Tableau6">
+    <blockTable colWidths="349.0,69.0,110.0" style="Tableau6">
       <tr>
         <td>
-          <para style="P21">
+          <para style="P22">
             <font color="white"> </font>
           </para>
         </td>
         <td>
-          <para style="P22">Net Total :</para>
+          <para style="P23">Net Total :</para>
         </td>
         <td>
-          <para style="P22">[[ '%.2f' % o.amount_untaxed ]] [[ o.pricelist_id.currency_id.name ]]</para>
+          <para style="P23">[[ '%.2f' % o.amount_untaxed ]] [[ o.pricelist_id.currency_id.name ]]</para>
         </td>
       </tr>
       <tr>
         <td>
-          <para style="P21">
+          <para style="P22">
             <font color="white"> </font>
           </para>
         </td>
         <td>
-          <para style="P22">Taxes :</para>
+          <para style="P23">Taxes :</para>
         </td>
         <td>
-          <para style="P22">[[ '%.2f' % o.amount_tax ]] [[ o.pricelist_id.currency_id.name ]]</para>
+          <para style="P23">[[ '%.2f' % o.amount_tax ]] [[ o.pricelist_id.currency_id.name ]]</para>
         </td>
       </tr>
       <tr>
         <td>
-          <para style="P23">
+          <para style="P24">
             <font color="white"> </font>
           </para>
         </td>
         <td>
-          <para style="P24">TOTAL :</para>
+          <para style="P25">TOTAL :</para>
         </td>
         <td>
-          <para style="P24">[[ '%.2f' % o.amount_total ]] [[ o.pricelist_id.currency_id.name ]]</para>
+          <para style="P25">[[ '%.2f' % o.amount_total ]] [[ o.pricelist_id.currency_id.name ]]</para>
         </td>
       </tr>
     </blockTable>
-    <para style="P25">
+    <para style="P26">
       <font color="white"> </font>
     </para>
     <blockTable colWidths="527.0" style="Tableau4">
       <tr>
         <td>
-          <para style="P26">[[ o.note or '' ]] [[ setTag('para','xpre') ]]</para>
+          <para style="P27">[[ o.note or '' ]] [[ setTag('para','xpre') ]]</para>
         </td>
       </tr>
       <tr>
         <td>
-          <para style="P26">[[ 'xpre' and o.partner_id.property_payment_term and o.partner_id.property_payment_term[1] ]] [[ setTag('para','xpre') ]]</para>
+          <para style="P27">[[ 'xpre' and o.partner_id.property_payment_term and o.partner_id.property_payment_term[1] ]] [[ setTag('para','xpre') ]]</para>
         </td>
       </tr>
     </blockTable>
-    <para style="P27">
+    <para style="P28">
       <font color="white"> </font>
     </para>
   </story>
index 483b3de..2567373 100644 (file)
@@ -488,7 +488,7 @@ class sale_order_line(osv.osv):
                'order_id': fields.many2one('sale.order', 'Order Ref', required=True, ondelete='cascade', select=True),
                'name': fields.char('Description', size=256, required=True, select=True),
                'sequence': fields.integer('Sequence'),
-               'delay': fields.float('Delay', required=True),
+               'delay': fields.float('Delivery Delay', required=True),
                'product_id': fields.many2one('product.product', 'Product', domain=[('sale_ok','=',True)], change_default=True, relate=True),
                'invoice_lines': fields.many2many('account.invoice.line', 'sale_order_line_invoice_rel', 'order_line_id','invoice_id', 'Invoice Lines', readonly=True),
                'invoiced': fields.boolean('Paid', readonly=True, select=True),