Improvement of the L10n_fr account_chart

Dashboards
Type in PO orders

bzr revid: pinky-d9b12f1707823e9b9a46ffee459fd90aedce8e3e
This commit is contained in:
pinky 2006-12-14 14:35:24 +00:00
parent 3a304ded46
commit 3ef65d7f93
14 changed files with 355 additions and 70 deletions

View 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),

View 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>

View 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>

View 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),

View File

@ -1,5 +1,5 @@
{
"name" : "Localisation for Quebec",
"name" : "Canada - Quebec",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",

View File

@ -1,5 +1,5 @@
{
"name" : "Localisation for France",
"name" : "France",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",

View File

@ -2553,33 +2553,33 @@
<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>
@ -2700,33 +2700,33 @@
<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>
@ -2805,7 +2805,7 @@
<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"/>
@ -2875,7 +2875,7 @@
<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"/>

View File

@ -186,7 +186,7 @@
<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>

View File

@ -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

View File

@ -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
}

View File

@ -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()

View File

@ -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>

View 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"/>
@ -59,19 +58,20 @@
<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"/>
@ -117,9 +117,9 @@
<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>
@ -136,7 +136,7 @@
<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>
@ -145,10 +145,7 @@
<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>
@ -162,105 +159,102 @@
</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>
<para style="P17">[[ line.name ]]</para>
</td>
<td>
<para style="P17">[[ ', '.join(map(lambda x: x.name, line.tax_id))]]</para>
<para style="P18">[[ ', '.join(map(lambda x: x.name, line.tax_id))]]</para>
</td>
<td>
<para style="P17">[[ line.delay ]]</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="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="P17">[[ (line.discount and str(line.discount)+'%')or '' ]]</para>
</td>
<td>
<para style="P16">[[ (line.discount and str(line.discount)+'%')or '' ]]</para>
<para style="P19">[[ '%.2f' % line.price_unit ]]</para>
</td>
<td>
<para style="P18">[[ '%.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>

View 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),