[IMP] merge

bzr revid: kjo@tinyerp.com-20110923131133-tzeypu8fta0ygiqx
This commit is contained in:
Kuldeep Joshi (OpenERP) 2011-09-23 18:41:33 +05:30
commit 0fab306a07
72 changed files with 3246 additions and 1486 deletions

View File

@ -98,6 +98,7 @@ module named account_voucher.
'wizard/account_reconcile_view.xml',
'wizard/account_reconcile_partner_process_view.xml',
'wizard/account_automatic_reconcile_view.xml',
'wizard/account_financial_report_view.xml',
'project/wizard/project_account_analytic_line_view.xml',
'account_end_fy.xml',
'account_invoice_view.xml',

View File

@ -139,7 +139,7 @@ class account_account_type(osv.osv):
'Balance' will generally be used for cash accounts.
'Detail' will copy each existing journal item of the previous year, even the reconciled ones.
'Unreconciled' will copy only the journal items that were unreconciled on the first day of the new fiscal year."""),
'sign': fields.selection([(-1, 'Negative'), (1, 'Positive')], 'Sign on Reports', required=True, help='Allows you to change the sign of the balance amount displayed in the reports, so that you can see positive figures instead of negative ones in expenses accounts.'),
'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
'report_type':fields.selection([
('none','/'),
('income','Profit & Loss (Income Accounts)'),
@ -2637,7 +2637,88 @@ class account_fiscal_position_account_template(osv.osv):
account_fiscal_position_account_template()
# Multi charts of Accounts wizard
# ---------------------------------------------------------
# Account Financial Report
# ---------------------------------------------------------
class account_financial_report(osv.osv):
_name = "account.financial.report"
_description = "Account Report"
def _get_level(self, cr, uid, ids, field_name, arg, context=None):
res = {}
for report in self.browse(cr, uid, ids, context=context):
level = 0
if report.parent_id:
level = report.parent_id.level + 1
res[report.id] = level
return res
def _get_children_by_order(self, cr, uid, ids, context=None):
res = []
for id in ids:
res.append(id)
ids2 = self.search(cr, uid, [('parent_id', '=', id)], order='sequence ASC', context=context)
res += self._get_children_by_order(cr, uid, ids2, context=context)
return res
def _get_balance(self, cr, uid, ids, name, args, context=None):
res = {}
res_all = {}
for report in self.browse(cr, uid, ids, context=context):
balance = 0.0
if report.id in res_all:
balance = res_all[report.id]
elif report.type == 'accounts':
# it's the sum of balance of the linked accounts
for a in report.account_ids:
balance += a.balance
elif report.type == 'account_report' and report.account_report_id:
# it's the amount of the linked report
res2 = self._get_balance(cr, uid, [report.account_report_id.id], 'balance', False, context=context)
res_all.update(res2)
for key, value in res2.items():
balance += value
elif report.type == 'sum':
# it's the sum of balance of the children of this account.report
#for child in report.children_ids:
res2 = self._get_balance(cr, uid, [rec.id for rec in report.children_ids], 'balance', False, context=context)
res_all.update(res2)
for key, value in res2.items():
balance += value
res[report.id] = balance
res_all[report.id] = balance
return res
_columns = {
'name': fields.char('Report Name', size=128, required=True),
'parent_id': fields.many2one('account.financial.report', 'Parent'),
'children_ids': fields.one2many('account.financial.report', 'parent_id', 'Account Report'),
'sequence': fields.integer('Sequence'),
'note': fields.text('Notes'),
'balance': fields.function(_get_balance, 'Balance'),
'level': fields.function(_get_level, string='Level', store=True, type='integer'),
'type': fields.selection([
('sum','View'),
('accounts','Accounts'),
('account_type','Account Type'),
('account_report','Report Value'),
],'Type'),
'account_ids': fields.many2many('account.account', 'account_account_financial_report', 'report_line_id', 'account_id', 'Accounts'),
'display_detail': fields.boolean('Display details', help='Display every account with its balance instead of the sum.'),
'account_report_id': fields.many2one('account.financial.report', 'Report Value'),
'account_type_ids': fields.many2many('account.account.type', 'account_account_financial_report_type', 'report_id', 'account_type_id', 'Account Types'),
}
_defaults = {
'type': 'sum',
}
account_financial_report()
# ---------------------------------------------------------
# Account generation from template wizards
# ---------------------------------------------------------
class wizard_multi_charts_accounts(osv.osv_memory):
"""

View File

@ -30,6 +30,7 @@
<menuitem id="base.menu_action_currency_form" parent="menu_configuration_misc" sequence="20"/>
<menuitem id="menu_finance_generic_reporting" name="Generic Reporting" parent="menu_finance_reporting" sequence="100"/>
<menuitem id="menu_finance_entries" name="Journal Entries" parent="menu_finance" sequence="5" groups="group_account_user,group_account_manager"/>
<menuitem id="menu_account_reports" name="Financial Reports" parent="menu_finance_accounting" sequence="18"/>
<menuitem id="account.menu_finance_recurrent_entries" name="Recurring Entries"
parent="menu_finance_periodical_processing" sequence="15"

View File

@ -749,6 +749,7 @@
<group col="2" colspan="2">
<separator string="Reporting Configuration" colspan="4"/>
<field name="report_type" select="2"/>
<field name="sign" />
</group>
<group col="2" colspan="2">
<separator string="Closing Method" colspan="4"/>
@ -2703,5 +2704,113 @@ action = pool.get('res.config').next(cr, uid, [], context)
parent="menu_finance_payables"
action="base.action_partner_supplier_form" sequence="100"/>
<!--
Account Reports
-->
<record id="view_account_financial_report_form" model="ir.ui.view">
<field name="name">account.financial.report.form</field>
<field name="model">account.financial.report</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Account Report">
<group col="6" colspan="4">
<field name="name"/>
<field name="parent_id"/>
<field name="sequence"/>
<field name="type"/>
</group>
<notebook colspan="4">
<page string="Report" attrs="{'invisible': [('state','!=','confirm')]}">
<field name="display_detail" attrs="{'invisible': [('type','!=','accounts')]}"/>
<newline/>
<field name="account_ids" nolabel="1" colspan="6" attrs="{'invisible': [('type', '!=', 'accounts')]}"/>
<newline/>
<field name="account_report_id" attrs="{'invisible': [('type', '!=', 'account_report')]}"/>
<newline/>
<field name="account_type_ids" nolabel="1" attrs="{'invisible': [('type', '!=', 'account_type')]}"/>
<newline/>
</page>
<page string="Notes" attrs="{'invisible': [('state','!=','confirm')]}">
<field name="note" nolabel="1" colspan="4"/>
</page>
</notebook>
</form>
</field>
</record>
<record id="view_account_financial_report_tree" model="ir.ui.view">
<field name="name">account.financial.report.tree</field>
<field name="model">account.financial.report</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Account Report">
<field name="name"/>
<field name="parent_id" invisible="1"/>
<field name="type"/>
<field name="account_report_id"/>
</tree>
</field>
</record>
<record id="view_account_financial_report_search" model="ir.ui.view">
<field name="name">account.financial.report.search</field>
<field name="model">account.financial.report</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Account Report">
<group>
<field name="name"/>
<field name="type"/>
<field name="account_report_id"/>
</group>
<newline/>
<group expand="0" string="Group By...">
<filter string="Parent Report" icon="terp-folder-orange" domain="" context="{'group_by':'parent_id'}"/>
<separator orientation="vertical"/>
<filter string="Report Type" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'type'}"/>
</group>
</search>
</field>
</record>
<record id="action_account_financial_report_tree" model="ir.actions.act_window">
<field name="name">Financial Reports</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">account.financial.report</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_account_financial_report_search"/>
<field name="view_id" ref="view_account_financial_report_tree"/>
<field name="help">Makes a generic system to draw financial reports easily.</field>
</record>
<menuitem id="menu_account_financial_reports_tree" name="Account Reports" parent="menu_account_reports" action="action_account_financial_report_tree"/>
<record id="view_account_report_tree_hierarchy" model="ir.ui.view">
<field name="name">account.report.hierarchy</field>
<field name="model">account.financial.report</field>
<field name="type">tree</field>
<field name="field_parent">children_ids</field>
<field name="arch" type="xml">
<tree string="Account Reports Hierarchy">
<field name="name"/>
<field name="type"/>
<field name="parent_id" invisible="1"/>
<field name="account_report_id"/>
</tree>
</field>
</record>
<record id="action_account_report_tree_hierarchy" model="ir.actions.act_window">
<field name="name">Financial Reports Hierarchy</field>
<field name="res_model">account.financial.report</field>
<field name="view_type">tree</field>
<field name="view_id" ref="view_account_report_tree_hierarchy"/>
<field name="domain">[('parent_id','=',False)]</field>
</record>
<menuitem id="menu_account_report_tree_hierarchy" name="Account Reports Hierarchy"
parent="menu_account_reports" action="action_account_report_tree_hierarchy"/>
</data>
</openerp>

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-09-05 23:09+0000\n"
"PO-Revision-Date: 2011-09-22 02:55+0000\n"
"Last-Translator: Majed Majbour <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-17 04:55+0000\n"
"X-Generator: Launchpad (build 13955)\n"
"X-Launchpad-Export-Date: 2011-09-22 04:48+0000\n"
"X-Generator: Launchpad (build 13996)\n"
#. module: account
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
@ -48,7 +48,7 @@ msgstr ""
#. module: account
#: field:account.installer.modules,account_voucher:0
msgid "Voucher Management"
msgstr ""
msgstr "إدارة القسائم"
#. module: account
#: view:account.account:0
@ -68,7 +68,7 @@ msgstr "متبقي"
#: code:addons/account/invoice.py:785
#, python-format
msgid "Please define sequence on invoice journal"
msgstr ""
msgstr "يرجى تحديد تسلسل على الفاتورة"
#. module: account
#: constraint:account.period:0
@ -134,7 +134,7 @@ msgstr "المدخلات المحاسبية -"
#: code:addons/account/account.py:1291
#, python-format
msgid "You can not delete posted movement: \"%s\"!"
msgstr ""
msgstr "لا يمكنك حذف حركة تم ترحيلها: \"%s\"!"
#. module: account
#: report:account.invoice:0
@ -173,6 +173,8 @@ msgid ""
"If the active field is set to False, it will allow you to hide the payment "
"term without removing it."
msgstr ""
"إذا تم تعيين الحقل النشط إلى خطأ ، فإنه سيسمح لك بإخفاء مدة السداد دون "
"إزالتها."
#. module: account
#: code:addons/account/invoice.py:1421

View File

@ -28,12 +28,17 @@ class account_fiscal_position(osv.osv):
_description = 'Fiscal Position'
_columns = {
'name': fields.char('Fiscal Position', size=64, required=True),
'active': fields.boolean('Active', help="By unchecking the active field, you may hide a fiscal position without deleting it."),
'company_id': fields.many2one('res.company', 'Company'),
'account_ids': fields.one2many('account.fiscal.position.account', 'position_id', 'Account Mapping'),
'tax_ids': fields.one2many('account.fiscal.position.tax', 'position_id', 'Tax Mapping'),
'note': fields.text('Notes', translate=True),
}
_defaults = {
'active': True,
}
def map_tax(self, cr, uid, fposition_id, taxes, context=None):
if not taxes:
return []

View File

@ -8,8 +8,11 @@
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Fiscal Position">
<field name="name" select="1"/>
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<group colspan="4" col="6">
<field name="name" select="1"/>
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<field name="active" groups="base.group_extended"/>
</group>
<separator string="Mapping" colspan="4"/>
<newline/>
<field name="tax_ids" colspan="2" widget="one2many_list" nolabel="1">

View File

@ -42,6 +42,7 @@ import account_analytic_entries_report
import account_balance_sheet
import account_profit_loss
import account_treasury_report
import account_financial_report
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -196,25 +196,25 @@
<para style="Total">Account Total</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_direction('6')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_direction('6'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_for_period('4')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_for_period('4'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_for_period('3')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_for_period('3'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_for_period('2')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_for_period('2'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_for_period('1')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_for_period('1'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_for_period('0')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_for_period('0'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="Total_right">[[ formatLang(get_total('5')) ]] [[ company.currency_id.symbol ]]</para>
<para style="Total_right">[[ formatLang(get_total('5'), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
@ -224,25 +224,25 @@
<para style="P2_content">[[ partner['name'] ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['direction']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['direction'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['4'])]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['4'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['3'])]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['3'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['2']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['2'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['1']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['1'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['0']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['0'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(partner['total']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(partner['total'], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -251,25 +251,25 @@
<para style="P2_content">[[ not_partner['name'] ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['direction']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['direction'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['4'])]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['4'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['3'])]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['3'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['2']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['2'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['1']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['1'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['0']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['0'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="content">[[ formatLang(not_partner['total']) ]] [[ company.currency_id.symbol ]]</para>
<para style="content">[[ formatLang(not_partner['total'], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>

View File

@ -296,7 +296,7 @@
<td><para style="P14"><font>[[ (a['type']&lt;&gt;'view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font color="white">[[ '..'*(a['level']-1) ]]</font><font>[[ a['name'] ]]</font> </para></td>
<td><para style="P3"><font>[[ (a['type']&lt;&gt;'view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit']) ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[formatLang(a['debit']) ]]</font></para></td>
<td><para style="P3"><font>[[ (a['type']&lt;&gt;'view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font')]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit']) ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['credit']) ]]</font> </para></td>
<td><para style="P3"><font>[[ (a['type']&lt;&gt;'view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['balance']) ]] [[ company.currency_id.symbol ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['balance']) ]] [[ company.currency_id.symbol ]]</font> </para></td>
<td><para style="P3"><font>[[ (a['type']&lt;&gt;'view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['balance'], currency_obj=company.currency_id) ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['balance'], currency = company.currency_id) ]]</font> </para></td>
</tr>
</blockTable>
<para style="P11">

View File

@ -136,7 +136,7 @@ class report_balancesheet_horizontal(report_sxw.rml_parse, common_report_header)
'code': account.code,
'name': account.name,
'level': account.level,
'balance':account.balance,
'balance': account.balance != 0 and account.balance * account.user_type.sign or account.balance,
'type': account.type,
}
currency = account.currency_id and account.currency_id or account.company_id.currency_id

View File

@ -240,8 +240,8 @@
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,a['level']))}) ]]
<td><para style="terp_level_3_code">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_code'}) ]]<i>[[ a['code'] ]]</i></para></td>
<td><para style="terp_level_3_name">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a['level']))+'_name'}) ]][[ a['name'] ]]</para></td>
<td>[[ (a['level'] &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_balance'}) ]][[ formatLang(a['balance']) ]] [[company.currency_id.symbol ]]</para></td>
<td>[[ a['level'] == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a['balance']) ]] [[company.currency_id.symbol ]]</u></para></td>
<td>[[ (a['level'] &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_balance'}) ]][[ formatLang(a['balance'], currency = company.currency_id) ]]</para></td>
<td>[[ a['level'] == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a['balance'], currency = company.currency_id) ]]</u></para></td>
</tr>
</blockTable>
<blockTable colWidths="426.0,113.0" style="Table_Net_Profit_Loss">
@ -250,7 +250,7 @@
<para style="terp_default_Bold_9">Balance:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr()) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr(), currency = company.currency_id) ]]</u></para>
</td>
</tr>
</blockTable>
@ -282,8 +282,8 @@
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,a['level']))}) ]]
<td><para style="terp_level_3_code">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_code'}) ]]<i>[[ a['code'] ]]</i></para></td>
<td><para style="terp_level_3_name">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a['level']))+'_name'}) ]][[ a['name'] ]]</para></td>
<td>[[ (a['level'] &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_balance'}) ]][[ formatLang(a['balance']) ]] [[company.currency_id.symbol ]]</para></td>
<td>[[ a['level'] == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a['balance']) ]] [[company.currency_id.symbol ]]</u></para></td>
<td>[[ (a['level'] &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a['type'] =='view' and a['level'] &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_balance'}) ]][[ formatLang(a['balance'], currency = company.currency_id) ]]</para></td>
<td>[[ a['level'] == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a['balance'], currency = company.currency_id) ]]</u></para></td>
</tr>
</blockTable>
<blockTable colWidths="426.0,113.0" style="Table_Net_Profit_Loss">
@ -292,7 +292,7 @@
<para style="terp_default_Bold_9">Balance:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr()) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr(), currency = company.currency_id) ]]</u></para>
</td>
</tr>
</blockTable>

View File

@ -207,7 +207,7 @@
</td>
<td>
<para style="terp_default_Right_9">
<font>[[ a['level1']&lt;4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(a['balance1']) ]] [[ company.currency_id.symbol ]]</font>
<font>[[ a['level1']&lt;4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(a['balance1'], currency_obj=company.currency_id) ]]</font>
</para>
</td>
<td>
@ -224,7 +224,7 @@
<td>
<para style="terp_default_Right_9">
<font>[[ ( a['level']&lt;4 or a['name']=='Net Profit') and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font>
<font>[[(a['code'] and a['name']) and formatLang(a['balance']) or removeParentNode('font')]] [[ company.currency_id.symbol ]]</font>
<font>[[(a['code'] and a['name']) and formatLang(a['balance'], currency_obj=company.currency_id) or removeParentNode('font')]]</font>
</para>
</td>
</tr>
@ -235,13 +235,13 @@
<para style="terp_default_Bold_9">Balance:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr()) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr(), currency_obj=company.currency_id) ) ]]</u></para>
</td>
<td>
<para style="terp_default_Bold_9">Balance:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr()) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr(), currency_obj=company.currency_id) ) ]]</u></para>
</td>
</tr>
</blockTable>

View File

@ -298,7 +298,7 @@
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit(o.period_id.id, o.journal_id.id)) ]] </para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)) ]] </para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id) ) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id), currency_obj=company.currency_id ) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="50.0,180.0,80.0,80.0,80.0,80.0" style="Table_Final_Total_currency">[[ display_currency(data) or removeParentNode('blockTable') ]]
@ -307,7 +307,7 @@
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit(o.period_id.id, o.journal_id.id)) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id) ) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id), currency_obj=company.currency_id ) ]]</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
</tr>
</blockTable>
@ -319,7 +319,7 @@
<td><para style="terp_default_9">[[ line['name'] ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit'])]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'], currency_obj=company.currency_id ) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="50.0,180.0,80.0,80.0,80.0,80.0" style="Table_Journal_Line_Content_currency">[[ display_currency(data) or removeParentNode('blockTable') ]]
@ -328,7 +328,7 @@
<td><para style="terp_default_9">[[ line['name'] ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit'])]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'], currency_obj=company.currency_id ) ]]</para></td>
<td><para style="terp_default_Right_9"><font>[[ (line['currency_id']==None or line['amount_currency']==None) and removeParentNode('font') ]] [[ formatLang(line['amount_currency'] ) ]] [[ line['currency_code'] or '' ]]</font></para></td>
</tr>
</blockTable>

View File

@ -0,0 +1,94 @@
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import time
from report import report_sxw
from common_report_header import common_report_header
from tools.translate import _
class report_account_common(report_sxw.rml_parse, common_report_header):
def __init__(self, cr, uid, name, context=None):
super(report_account_common, self).__init__(cr, uid, name, context=context)
self.localcontext.update( {
'get_lines': self.get_lines,
'time': time,
'get_fiscalyear': self._get_fiscalyear,
'get_account': self._get_account,
'get_start_period': self.get_start_period,
'get_end_period': self.get_end_period,
'get_filter': self._get_filter,
'get_start_date':self._get_start_date,
'get_end_date':self._get_end_date,
})
self.context = context
def set_context(self, objects, data, ids, report_type=None):
new_ids = ids
if (data['model'] == 'ir.ui.menu'):
new_ids = 'chart_account_id' in data['form'] and [data['form']['chart_account_id']] or []
objects = self.pool.get('account.account').browse(self.cr, self.uid, new_ids)
return super(report_account_common, self).set_context(objects, data, new_ids, report_type=report_type)
def get_lines(self, data):
lines = []
account_obj = self.pool.get('account.account')
currency_obj = self.pool.get('res.currency')
ids2 = self.pool.get('account.financial.report')._get_children_by_order(self.cr, self.uid, [data['form']['account_report_id'][0]], context=data['form']['used_context'])
for report in self.pool.get('account.financial.report').browse(self.cr, self.uid, ids2, context=data['form']['used_context']):
vals = {
'name': report.name,
'balance': report.balance,
'type': 'report',
'level': report.level,
}
if data['form']['enable_filter']:
vals['balance_cmp'] = self.pool.get('account.financial.report').browse(self.cr, self.uid, report.id, context=data['form']['comparison_context']).balance
lines.append(vals)
account_ids = []
if report.type == 'accounts' and report.display_detail and report.account_ids:
account_ids = account_obj._get_children_and_consol(self.cr, self.uid, [x.id for x in report.account_ids])
elif report.type == 'account_type' and report.account_type_ids:
account_ids = account_obj.search(self.cr, self.uid, [('user_type','in', [x.id for x in report.account_type_ids])])
if account_ids:
for account in account_obj.browse(self.cr, self.uid, account_ids, context=data['form']['used_context']):
if account.type != 'view':
flag = False
vals = {
'name': account.code + ' ' + account.name,
'balance': account.balance != 0 and account.balance * account.user_type.sign or account.balance,
'type': 'account',
'level': 6,
'account_type': account.type,
}
if not currency_obj.is_zero(self.cr, self.uid, account.company_id.currency_id, vals['balance']):
flag = True
if data['form']['enable_filter']:
vals['balance_cmp'] = account_obj.browse(self.cr, self.uid, account.id, context=data['form']['comparison_context']).balance
if not currency_obj.is_zero(self.cr, self.uid, account.company_id.currency_id, vals['balance_cmp']):
flag = True
if flag:
lines.append(vals)
return lines
report_sxw.report_sxw('report.account.financial.report', 'account.financial.report',
'addons/account/report/account_financial_report.rml', parser=report_account_common, header='internal')

View File

@ -0,0 +1,272 @@
<?xml version="1.0"?>
<document filename="Financial Report.pdf">
<template pageSize="(595.0,842.0)" title="Financial Report" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
</template>
<stylesheet>
<blockTableStyle id="Standard_Outline">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table_Heading">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table_Company_Name">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table_Date_from_To">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table_Account_Line_Title">
<blockAlignment value="LEFT"/>
<blockValign value="MIDDLE"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table_Net_Profit_Loss">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,0" stop="-1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table4">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,0" stop="-1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table_Final_Result">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table2_header">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,0" stop="-1,0"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="4,0" stop="4,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="4,0" stop="4,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="5,0" stop="5,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="5,0" stop="5,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="6,0" stop="6,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="6,0" stop="6,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="6,0" stop="6,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
<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"/>
<paraStyle name="P2" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Standard" fontName="Times-Roman"/>
<paraStyle name="Heading" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Caption" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Index" fontName="Helvetica" fontSize="9.0" leading="11"/>
<paraStyle name="Footer" fontName="Times-Roman"/>
<paraStyle name="Table Contents" fontName="Times-Roman"/>
<paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/>
<paraStyle name="Horizontal Line" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_2" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_0_name" fontName="Helvetica-Bold" fontSize="9.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_0_balance" fontName="Helvetica-Bold" fontSize="9.0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_1_name" fontName="Helvetica-Bold" fontSize="9.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_1_balance" fontName="Helvetica-Bold" fontSize="9.0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_2_name" fontName="Helvetica-Bold" fontSize="8.0" leftIndent="10.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_2_balance" fontName="Helvetica-Bold" fontSize="8.0" leftIndent=".0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_3_name" fontName="Helvetica-Bold" fontSize="8.0" leftIndent="20.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_3_balance" fontName="Helvetica-Bold" fontSize="8.0" leftIndent=".0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_4_name" fontName="Helvetica" fontSize="8.0" leftIndent="30.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_4_balance" fontName="Helvetica" fontSize="8.0" leftIndent="0.0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_5_name" fontName="Helvetica" fontSize="8.0" leftIndent="40.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_5_balance" fontName="Helvetica-Oblique" fontSize="8.0" leftIndent="0.0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_6_name" fontName="Helvetica" fontSize="8.0" leftIndent="50.0" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_level_6_balance" fontName="Helvetica" fontSize="8.0" leftIndent="0.0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<blockTableStyle id="Table1">
<blockTopPadding start="0,0" stop="-1,0" length="15"/>
<blockFont name="Helvetica-Bold" size="10.0" />
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,1" thickness="1"/>
</blockTableStyle>
<blockTableStyle id="Table2">
<blockTopPadding start="0,0" stop="-1,0" length="10"/>
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBELOW" colorName="#666666" start="1,1" stop="1,1"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table2_Report">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="GRID" colorName="#cccccc"/>
</blockTableStyle>
<blockTableStyle id="Table1_main">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
</stylesheet>
<images/>
<story>
<blockTable colWidths="539.0" style="Table_Company_Name">
<tr>
<td>
<para style="terp_header_Centre">[[ data['form']['account_report_id'][1] ]]</para>
</td>
</tr>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
<blockTable colWidths="163.0,163.0,163.0" style="Table2_header">
<tr>
<td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_account(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_fiscalyear(data) or '' ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_filter(data)=='No Filter' and get_filter(data) or removeParentNode('para') ]] </para>
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Date</para></td>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="65.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Period</para></td>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</td>
</tr>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
<para style="Standard">
<font color="white"> </font>
</para>
<blockTable colWidths="390.0,100.0" style="Table_Account_Line_Title">
[[ data['form']['enable_filter'] == 0 or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="terp_default_Bold_9">Name</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Balance</para>
</td>
</tr>
<tr style="Table1">
[[ repeatIn(get_lines(data), 'a') ]]
[[ (a.get('level') &lt;&gt; 0) or removeParentNode('tr') ]]
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,'level' in a and a.get('level') or 1))}) ]]
<td><para style="terp_level_1_name">[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_name'}) ]] [[ a.get('name') ]]</para></td>
<td>[[ a.get('level') == 4 or removeParentNode('td') ]]<para style="terp_level_1_balance"><u>[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]</u></para></td>
<td>[[ a.get('level') &lt;&gt; 4 or removeParentNode('td') ]]<para style="terp_level_1_balance">[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]</para></td>
</tr>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
<blockTable colWidths="263.0,100.0,100" style="Table_Account_Line_Title">
[[ data['form']['enable_filter'] == 1 or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="terp_default_Bold_9">Name</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Balance</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">[[ data['form']['label_filter'] ]]</para>
</td>
</tr>
<tr style="Table3">
[[ repeatIn(get_lines(data), 'a') ]]
[[ (a.get('level') &lt;&gt; 0) or removeParentNode('tr') ]]
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,'level' in a and a.get('level') or 1))}) ]]
<td><para style="terp_level_1_name">[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_name'}) ]] [[ a.get('name') ]]</para></td>
<td>[[ a.get('level') == 4 or removeParentNode('td') ]]<para style="terp_level_1_balance"><u>[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]</u></para></td>
<td>[[ a.get('level') &lt;&gt; 4 or removeParentNode('td') ]]<para style="terp_level_1_balance">[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]</para></td>
<td>[[ a.get('level') == 4 or removeParentNode('td') ]]<para style="terp_level_1_balance"><u>[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance_cmp'))]] [[company.currency_id.symbol]]</u></para></td>
<td>[[ a.get('level') &lt;&gt; 4 or removeParentNode('td') ]]<para style="terp_level_1_balance">[[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance_cmp'))]] [[company.currency_id.symbol]]</para></td>
</tr>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
</story>
</document>

View File

@ -273,7 +273,7 @@
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit()) ]] </para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit()- sum_credit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit()- sum_credit(), currency_obj=company.currency_id) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="100.0,100.0,73.0,80.0,80.0,80.0" style="Table_Journal_Title" repeatRows="1">[[ display_currency(data) or removeParentNode('blockTable') ]]
@ -290,7 +290,7 @@
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()- sum_debit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()- sum_debit(), currency_obj=company.currency_id) ]]</para></td>
</tr>
</blockTable>
@ -311,7 +311,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id), currency_obj=company.currency_id) ]] </para>
</td>
<td>
@ -337,7 +337,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)) ]] </para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -358,7 +358,7 @@
<para style="terp_default_Right_9">[[ formatLang(line['credit']) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'] ) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'], currency_obj=company.currency_id ) ]]</para>
</td>
</tr>
</blockTable>
@ -371,7 +371,7 @@
<td><para style="terp_default_9">[[ line['name'] ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit'] )]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'] ) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'], currency_obj=company.currency_id ) ]]</para></td>
<td><para style="terp_default_Right_9"><font>[[ (line['currency_id']==None or line['amount_currency']==None) and removeParentNode('font') ]] [[ formatLang(line['amount_currency'] ) ]] [[ line['currency_code'] or '' ]]</font></para></td>
</tr>
</blockTable>

View File

@ -476,10 +476,10 @@
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_account(o), digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account'),currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ o.currency_id and formatLang(sum_currency_amount_account(o), digits=get_digits(dp='Account')) + o.currency_id.symbol or '' ]]</para>
<para style="terp_default_Bold_9_Right">[[ o.currency_id and formatLang(sum_currency_amount_account(o), digits=get_digits(dp='Account'),currency_obj=o.currency_id) or '' ]]</para>
</td>
</tr>
</blockTable>
@ -515,7 +515,7 @@
<para style="terp_default_Right_8">[[ formatLang(line['credit'], digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang(line['progress'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang(line['progress'], digits=get_digits(dp='Account'),currency_obj=company.currency_id) ]] </para>
</td>
<td>
<para style="terp_default_Right_8"><font>[[ (line.has_key('currency_id') and line['currency_id']==None or line['amount_currency']==None) and removeParentNode('font') ]] [[ formatLang(line['amount_currency'])]] [[ line['currency_code'] or '']]</font></para>
@ -572,7 +572,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_account(o), digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account'),currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -608,7 +608,7 @@
<para style="terp_default_Right_8">[[ formatLang(line['credit'], digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang(line['progress'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang(line['progress'], digits=get_digits(dp='Account'),currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>

View File

@ -505,10 +505,10 @@
<para style="terp_default_Bold_7_Right">[[ formatLang(sum_credit_account(o), digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Bold_7_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_7_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account'), currency = company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_7_Right">[[ o.currency_id and formatLang(sum_currency_amount_account(o), digits=get_digits(dp='Account')) + o.currency_id.symbol or '' ]]</para>
<para style="terp_default_Bold_7_Right">[[ o.currency_id and formatLang(sum_currency_amount_account(o), digits=get_digits(dp='Account'),currency_obj=o.currency_id) or '' ]]</para>
</td>
</tr>
</blockTable>
@ -547,7 +547,7 @@
<para style="terp_default_Right_7">[[ formatLang(line['credit'], digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Right_7">[[ formatLang(line['progress'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_7">[[ formatLang(line['progress'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_7">[[ (line.has_key('currency_id') and line['currency_id']==None or line['amount_currency']==None) and removeParentNode('font') ]] [[ formatLang(line['amount_currency'])]] [[ line['currency_code'] or '']]</para>
@ -607,7 +607,7 @@
<para style="terp_default_Bold_7_Right">[[ formatLang(sum_credit_account(o), digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Bold_7_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_7_Right">[[ formatLang(sum_balance_account(o), digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -646,7 +646,7 @@
<para style="terp_default_Right_7">[[ formatLang(line['credit'], digits=get_digits(dp='Account')) ]]</para>
</td>
<td>
<para style="terp_default_Right_7">[[ formatLang(line['progress'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_7">[[ formatLang(line['progress'], digits=get_digits(dp='Account'),currency_obj=company.currency_id) ]] </para>
</td>
</tr>
</blockTable>

View File

@ -247,8 +247,8 @@
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P12">[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P12">[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P12">[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id), currency_obj=company.currency_id) ]]</para></td>
<td><para style="P12">[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id), currency_obj=company.currency_id) ]]</para></td>
</tr>
<para style="Standard"><font color="white">[[lines(o.period_id.id, o.journal_id.id) or removeParentNode('story') ]]</font></para>
<tr>
@ -258,8 +258,8 @@
<td><para style="terp_default_8">[[ line.account_id.code ]]</para></td>
<td><para style="terp_default_8">[[ line.partner_id and strip_name(line.partner_id.name,17) ]]</para></td>
<td><para style="terp_default_8">[[ strip_name(line.name,27) ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit, currency_obj=company.currency_id) ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit, currency_obj=company.currency_id) ]]</para></td>
</tr>
</blockTable>
@ -282,8 +282,8 @@
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P12">[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P12">[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P12">[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id), currency_obj=company.currency_id) ]]</para></td>
<td><para style="P12">[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id), currency_obj=company.currency_id) ]]</para></td>
<!-- given a period and a journal, the sum of debit will always be equal to the sum of credit, so there is no point to display it-->
<td><para style="P12"> <!--o.journal_id.currency and formatLang((sum_debit(o.period_id.id, o.journal_id.id) - sum_credit(o.period_id.id, o.journal_id.id))) ]] [[ o.journal_id.currency and o.journal_id.currency.symbol --></para></td>
</tr>
@ -295,9 +295,9 @@
<td><para style="terp_default_8">[[ line.account_id.code ]]</para></td>
<td><para style="terp_default_8">[[ line.partner_id and strip_name(line.partner_id.name,15) ]]</para></td>
<td><para style="terp_default_8">[[ strip_name(line.name,17) ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ line.currency_id and formatLang(line.amount_currency) or '' ]] [[ line.currency_id.symbol or '']]</para></td>
<td><para style="P8">[[ formatLang(line.debit, currency_obj=company.currency_id) ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit, currency_obj=company.currency_id) ]]</para></td>
<td><para style="P8">[[ line.currency_id and formatLang(line.amount_currency, currency_obj=line.currency_id) or '' ]]</para></td>
</tr>
</blockTable>
</story>

View File

@ -241,16 +241,16 @@
<td><para style="P8"></para></td>
<td><para style="P8"><u>[[ formatLang(sum_debit()) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_credit()) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang((sum_debit()-sum_credit())) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_litige()) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang((sum_debit()-sum_credit()), currency_obj=company.currency_id) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_litige(), currency_obj=company.currency_id) ]]</u></para></td>
</tr>
<tr>
<td><para style="P3">[[ repeatIn(lines(), 'a') ]]<font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font><font>[[ a['ref'] ]] [[ a['type']==3 and a['code'] ]]</font></para></td>
<td><para style="P3"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ a['name'] ]]</para></td>
<td><para style="P4"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ formatLang(a['debit']) ]]</para></td>
<td><para style="P4"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ formatLang(a['credit']) ]]</para></td>
<td><para style="P4"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ formatLang(a['balance']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ formatLang(a['enlitige'] or 0.0) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ formatLang(a['balance'], currency_obj=company.currency_id) ]]</para></td>
<td><para style="P4"><font>[[ (a['type']==3 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font>[[ formatLang(a['enlitige'] or 0.0, currency_obj=company.currency_id) ]]</para></td>
</tr>
</blockTable>
</story>

View File

@ -477,7 +477,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_credit_partner(p))) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p))) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p)), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -497,7 +497,7 @@
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][1]) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][2]) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][2], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -528,7 +528,7 @@
<para style="terp_default_Right_8">[[ formatLang((line['credit'])) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang((line['progress'])) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang((line['progress']), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -581,7 +581,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_credit_partner(p))) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p))) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p)), currency_obj=company.currency_id) ]] </para>
</td>
<td>
<para style="terp_default_Bold_9_Right">
@ -604,7 +604,7 @@
<para style="terp_default_Right_9">[[ formatLang(get_intial_balance(p)[0][1]) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(get_intial_balance(p)[0][2]) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(get_intial_balance(p)[0][2], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">
@ -640,7 +640,7 @@
<para style="terp_default_Right_8">[[ formatLang((line['credit'])) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang((line['progress'])) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang((line['progress']), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">

View File

@ -482,7 +482,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_credit_partner(p))) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p))) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p)), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -502,7 +502,7 @@
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][1]) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][2]) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][2], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -533,7 +533,7 @@
<para style="terp_default_Right_8">[[ formatLang((line['credit'])) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang((line['progress'])) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang((line['progress']), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -590,7 +590,7 @@
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_credit_partner(p))) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p))) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p)), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">
@ -613,7 +613,7 @@
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][1]) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][2]) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang(get_intial_balance(p)[0][2], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">
@ -649,7 +649,7 @@
<para style="terp_default_Right_8">[[ formatLang((line['credit'])) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang((line['progress'])) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang((line['progress']), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">

View File

@ -263,7 +263,7 @@
<para style="terp_default_Centre_9">[[ formatLang(l.discount, dp='Account') ]] </para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(l.price_subtotal, dp='Account') ]] [[ o.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(l.price_subtotal, dp='Account', currency_obj=o.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -309,7 +309,7 @@
<para style="terp_default_9">Net Total:</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, digits=get_digits(dp='Account')) ]] [[ o.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, digits=get_digits(dp='Account'), currency_obj=o.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -322,7 +322,7 @@
<para style="terp_default_9">Taxes:</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Account') ]] [[ o.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Account', currency_obj=o.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -335,7 +335,7 @@
<para style="terp_tblheader_Details">Total:</para>
</td>
<td>
<para style="terp_default_Bold_Right_9">[[ formatLang(o.amount_total, digits=get_digits(dp='Account')) ]] [[ o.currency_id.symbol ]]</para>
<para style="terp_default_Bold_Right_9">[[ formatLang(o.amount_total, digits=get_digits(dp='Account'), currency_obj=o.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -368,10 +368,10 @@
<para style="terp_default_8">[[ t.name ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ formatLang(t.base, dp='Account') ]] [[ o.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ formatLang(t.base, dp='Account', currency_obj=o.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_8">[[ (t.tax_code_id and t.tax_code_id.notprintable) and removeParentNode('blockTable') or '' ]] [[ formatLang(t.amount, digits=get_digits(dp='Account')) ]] [[ o.currency_id.symbol ]]</para>
<para style="terp_default_Right_8">[[ (t.tax_code_id and t.tax_code_id.notprintable) and removeParentNode('blockTable') or '' ]] [[ formatLang(t.amount, digits=get_digits(dp='Account'), currency_obj=o.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_8">

View File

@ -219,7 +219,7 @@
<para style="terp_default_Right_9">[[ (line['account_id']['type'] == 'receivable' and formatLang(line['credit']) or 0) or (line['account_id']['type'] == 'payable' and formatLang(line['debit'] * -1) or 0) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang((line['date_maturity'] &lt; time.strftime('%Y-%m-%d'))) and formatLang(line['debit'] - line['credit']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang((line['date_maturity'] &lt; time.strftime('%Y-%m-%d'))) and formatLang(line['debit'] - line['credit'], currency_obj=company.currency_id) ]</para>
</td>
<td>
<para style="terp_default_Centre_9">[[ line['blocked'] and 'X' or '' ]]</para>
@ -244,7 +244,7 @@
<para style="terp_default_Right_9">[[ formatLang((reduce(lambda x, y: x + ((y['account_id']['type'] == 'receivable' and y['credit'] or 0) or (y['account_id']['type'] == 'payable' and y['debit'] * -1 or 0)), getLines(o), 0))) ]] </para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang((reduce(lambda x, y: x + (y['debit'] - y['credit']), filter(lambda x: x['date_maturity'] &lt; time.strftime('%Y-%m-%d'), getLines(o)), 0))) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang((reduce(lambda x, y: x + (y['debit'] - y['credit']), filter(lambda x: x['date_maturity'] &lt; time.strftime('%Y-%m-%d'), getLines(o)), 0)), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_9">
@ -264,7 +264,7 @@
<para style="terp_default_Bold_9">Balance : </para>
</td>
<td>
<para style="terp_tblheader_Details_Right">[[ formatLang((reduce(lambda x, y: x +(y['debit'] - y['credit']), getLines(o), 0))) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_tblheader_Details_Right">[[ formatLang((reduce(lambda x, y: x +(y['debit'] - y['credit']), getLines(o), 0)), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_8">
@ -279,10 +279,10 @@
<para style="terp_default_9">
<font color="white"> </font>
</para>
<para style="terp_default_9">Total amount due: [[ formatLang((reduce(lambda x, y: x + (y['debit'] - y['credit']), getLines(o), 0))) ]] [[ company.currency_id.symbol ]].</para>
<para style="terp_default_9">Total amount due: [[ formatLang((reduce(lambda x, y: x + (y['debit'] - y['credit']), getLines(o), 0)), currency_obj=company.currency_id) ]].</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
</pto>
</story>
</document>
</document>

View File

@ -221,7 +221,7 @@
</para>
</td>
<td>
<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>
<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']), currency_obj=company.currency_id) ]]</font></para>
</td>
<td>
<para style="terp_default_9">
@ -234,7 +234,7 @@
</para>
</td>
<td>
<para style="terp_default_Right_9"><font>[[ a['level1']&lt;4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[(a['code1'] and a['name1']) and formatLang(abs(a['balance1'])) or removeParentNode('font') ]] [[ company.currency_id.symbol ]]</font></para>
<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>[[(a['code1'] and a['name1']) and formatLang(abs(a['balance1']), currency_obj=company.currency_id) or removeParentNode('font') ]]</font></para>
</td>
</tr>
</blockTable>
@ -247,7 +247,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Profit' and final_result()['type'] or '' ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and formatLang(abs(final_result()['balance'])) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and formatLang(abs(final_result()['balance']), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_9"></para>
@ -256,7 +256,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Loss' and final_result()['type'] or '' ]]</para>
</td>
<td>
<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>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and formatLang(abs(final_result()['balance']), currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -267,13 +267,13 @@
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr()), currency_obj=company.currency_id) ]]</u></para>
</td>
<td>
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr()), currency_obj=company.currency_id) ]]</u></para>
</td>
</tr>
</blockTable>

View File

@ -141,11 +141,15 @@ class report_pl_account_horizontal(report_sxw.rml_parse, common_report_header):
'code': cal_list['expense'][i].code,
'name': cal_list['expense'][i].name,
'level': cal_list['expense'][i].level,
'balance':cal_list['expense'][i].balance,
'balance': cal_list['expense'][i].balance != 0 and \
cal_list['expense'][i].balance * cal_list['expense'][i].user_type.sign or \
cal_list['expense'][i].balance,
'code1': cal_list['income'][i].code,
'name1': cal_list['income'][i].name,
'level1': cal_list['income'][i].level,
'balance1':cal_list['income'][i].balance,
'balance1': cal_list['income'][i].balance != 0 and \
cal_list['income'][i].balance * cal_list['income'][i].user_type.sign or \
cal_list['income'][i].balance,
}
self.result_temp.append(temp)
else:
@ -158,7 +162,9 @@ class report_pl_account_horizontal(report_sxw.rml_parse, common_report_header):
'code1': cal_list['income'][i].code,
'name1': cal_list['income'][i].name,
'level1': cal_list['income'][i].level,
'balance1':cal_list['income'][i].balance,
'balance1': cal_list['income'][i].balance != 0 and \
cal_list['income'][i].balance * cal_list['income'][i].user_type.sign \
or cal_list['income'][i].balance,
}
self.result_temp.append(temp)
if i < len(cal_list['expense']):
@ -166,7 +172,9 @@ class report_pl_account_horizontal(report_sxw.rml_parse, common_report_header):
'code': cal_list['expense'][i].code,
'name': cal_list['expense'][i].name,
'level': cal_list['expense'][i].level,
'balance':cal_list['expense'][i].balance,
'balance': cal_list['expense'][i].balance != 0 and \
cal_list['expense'][i].balance * cal_list['expense'][i].user_type.sign \
or cal_list['expense'][i].balance,
'code1': '',
'name1': '',
'level1': False,

View File

@ -228,8 +228,8 @@
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,a.level))}) ]]
<td><para style="terp_level_3_code">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_code'}) ]]<i>[[ a.code ]]</i></para></td>
<td><para style="terp_level_3_name">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.level))+'_name'}) ]][[ a.name ]]</para></td>
<td>[[ (a.level &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_balance'}) ]][[ formatLang(a.balance) ]] [[company.currency_id.symbol ]]</para></td>
<td>[[ a.level == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a.balance) ]] [[company.currency_id.symbol ]]</u></para></td>
<td>[[ (a.level &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_balance'}) ]][[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id.symbol)</para></td>
<td>[[ a.level == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]</u></para></td>
</tr>
</blockTable>
<blockTable colWidths="100.0,326.0,113.0" style="Table_Net_Profit_Loss">
@ -241,7 +241,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Profit' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and formatLang(final_result()['balance']) ]] [[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and formatLang(final_result()['balance'], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -251,7 +251,7 @@
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr()) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr(), currency_obj=company.currency_id) ]]</u></para>
</td>
</tr>
</blockTable>
@ -277,8 +277,8 @@
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,a.level))}) ]]
<td><para style="terp_level_3_code">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_code'}) ]]<i>[[ a.code ]]</i></para></td>
<td><para style="terp_level_3_name">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.level))+'_name'}) ]][[ a.name ]]</para></td>
<td>[[ (a.level &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_balance'}) ]][[ formatLang(a.balance) ]] [[company.currency_id.symbol ]]</para></td>
<td>[[ a.level == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a.balance) ]] [[company.currency_id.symbol ]]</u></para></td>
<td>[[ (a.level &lt;&gt;2) or removeParentNode('td') ]]<para style="terp_level_3_balance">[[ (a.type =='view' and a.level &gt;= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_balance'}) ]][[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]</para></td>
<td>[[ a.level == 2 or removeParentNode('td') ]]<para style="terp_level_2_balance"><u>[[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]</u></para></td>
</tr>
</blockTable>
<blockTable colWidths="100.0,326.0,113.0" style="Table4">
@ -290,7 +290,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Loss' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and formatLang(final_result()['balance']) ]] [[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and formatLang(final_result()['balance'], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -300,7 +300,7 @@
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr()) ]] [[ company.currency_id.symbol ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr(), currency_obj=company.currency_id) ]]</u></para>
</td>
</tr>
</blockTable>

View File

@ -129,10 +129,10 @@
<para style="terp_default_9">[[ line['name'] ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol]]</para>
<para style="terp_default_Right_9">[[ formatLang(line['debit'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol]]</para>
<para style="terp_default_Right_9">[[ formatLang(line['credit'], currency_obj=company.currency_id) ]]</para>
</td>
</tr>
</blockTable>
@ -141,4 +141,4 @@
</para>
</section>
</story>
</document>
</document>

View File

@ -153,7 +153,7 @@
<td><para style="P5"><font>[[ repeatIn(get_lines(data['form']['based_on'], data['form']['company_id']), 'o') ]]</font><font color="white">[[ (o['level']) ]]</font> <font>[[ (len(o['level'])&lt;5 and setTag('para','para',{'fontName':'Helvetica-Bold'})) or removeParentNode('font') ]]</font><font>[[ o['code'] ]] [[ o['name'] ]] </font></para></td>
<td><para style="P6"><font>[[ len(o['level'])&lt;5 and setTag('para','para',{'fontName':"Helvetica-Bold"}) or removeParentNode('font')]]</font><font>[[ o['type']=='view' and removeParentNode('font') ]][[ formatLang(o['debit']) ]]</font><font>[[ o['type']&lt;&gt;'view' and removeParentNode('font') ]][[ formatLang(o['debit']) ]]</font></para></td>
<td><para style="P6"><font>[[ len(o['level'])&lt;5 and setTag('para','para',{'fontName':"Helvetica-Bold"}) or removeParentNode('font')]]</font><font>[[ o['type']=='view' and removeParentNode('font') ]][[ formatLang(o['credit']) ]]</font><font>[[ o['type']&lt;&gt;'view' and removeParentNode('font') ]][[ formatLang(o['credit'])]]</font></para></td>
<td><para style="P6"><font>[[ len(o['level'])&lt;5 and setTag('para','para',{'fontName':"Helvetica-Bold"}) or removeParentNode('font')]]</font><font>[[ o['type']=='view' and removeParentNode('font') ]][[ formatLang(o['tax_amount']) ]] [[ company.currency_id.symbol ]]</font><font>[[ o['type']&lt;&gt;'view' and removeParentNode('font') ]][[ formatLang(o['tax_amount']) ]] [[ company.currency_id.symbol ]]</font> </para></td>
<td><para style="P6"><font>[[ len(o['level'])&lt;5 and setTag('para','para',{'fontName':"Helvetica-Bold"}) or removeParentNode('font')]]</font><font>[[ o['type']=='view' and removeParentNode('font') ]][[ formatLang(o['tax_amount'], currency_obj=company.currency_id) ]]</font><font>[[ o['type']&lt;&gt;'view' and removeParentNode('font') ]][[ formatLang(o['tax_amount'], currency_obj=company.currency_id) ]]</font> </para></td>
</tr>
</blockTable>
</story>

View File

@ -67,6 +67,7 @@
"access_account_fiscalyear_employee","account.fiscalyear employee","model_account_fiscalyear","base.group_user",1,0,0,0
"access_res_currency_account_manager","res.currency account manager","base.model_res_currency","group_account_manager",1,1,1,1
"access_res_currency_rate_account_manager","res.currency.rate account manager","base.model_res_currency_rate","group_account_manager",1,1,1,1
"access_res_currency_rate_type_account_manager","res.currency.rate.type account manager","base.model_res_currency_rate_type","group_account_manager",1,1,1,1
"access_account_invoice_user","account.invoice user","model_account_invoice","base.group_user",1,0,0,0
"access_account_invoice_user","account.invoice.line user","model_account_invoice_line","base.group_user",1,0,0,0
"access_account_payment_term_partner_manager","account.payment.term partner manager","model_account_payment_term","base.group_user",1,0,0,0
@ -127,4 +128,7 @@
"access_account_sequence_fiscal_year_sale_user","account.sequence.fiscalyear.sale.user","model_account_sequence_fiscalyear","base.group_sale_salesman",1,1,1,0
"access_account_sequence_fiscal_year_sale_manager","account.sequence.fiscalyear.sale.manager","model_account_sequence_fiscalyear","base.group_sale_manager",1,1,1,1
"access_account_treasury_report_manager","account.treasury.report.manager","model_account_treasury_report","account.group_account_manager",1,0,0,0
"access_account_financial_report","account.financial.report","model_account_financial_report","account.group_account_user",1,1,1,1
"access_account_financial_report_invoice","account.financial.report invoice","model_account_financial_report","account.group_account_invoice",1,0,0,0
"access_account_financial_report_manager","account.financial.report","model_account_financial_report","account.group_account_manager",1,1,1,1

1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
67 access_account_fiscalyear_employee account.fiscalyear employee model_account_fiscalyear base.group_user 1 0 0 0
68 access_res_currency_account_manager res.currency account manager base.model_res_currency group_account_manager 1 1 1 1
69 access_res_currency_rate_account_manager res.currency.rate account manager base.model_res_currency_rate group_account_manager 1 1 1 1
70 access_res_currency_rate_type_account_manager res.currency.rate.type account manager base.model_res_currency_rate_type group_account_manager 1 1 1 1
71 access_account_invoice_user account.invoice user model_account_invoice base.group_user 1 0 0 0
72 access_account_invoice_user account.invoice.line user model_account_invoice_line base.group_user 1 0 0 0
73 access_account_payment_term_partner_manager account.payment.term partner manager model_account_payment_term base.group_user 1 0 0 0
128 access_account_sequence_fiscal_year_sale_user account.sequence.fiscalyear.sale.user model_account_sequence_fiscalyear base.group_sale_salesman 1 1 1 0
129 access_account_sequence_fiscal_year_sale_manager account.sequence.fiscalyear.sale.manager model_account_sequence_fiscalyear base.group_sale_manager 1 1 1 1
130 access_account_treasury_report_manager account.treasury.report.manager model_account_treasury_report account.group_account_manager 1 0 0 0
131 access_account_financial_report account.financial.report model_account_financial_report account.group_account_user 1 1 1 1
132 access_account_financial_report_invoice account.financial.report invoice model_account_financial_report account.group_account_invoice 1 0 0 0
133 access_account_financial_report_manager account.financial.report model_account_financial_report account.group_account_manager 1 1 1 1
134

View File

@ -47,6 +47,7 @@ import account_open_closed_fiscalyear
import account_invoice_state
import account_chart
import account_tax_chart
import account_financial_report
#TODO: remove this file no moe used
# also remove related view fiel

View File

@ -0,0 +1,86 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from osv import fields, osv
class accounting_report(osv.osv_memory):
_name = "accounting.report"
_inherit = "account.common.report"
_description = "Accounting Report"
_columns = {
'enable_filter': fields.boolean('Enable Comparison'),
'account_report_id': fields.many2one('account.financial.report', 'Account Reports', required=True),
'label_filter': fields.char('Column Label', size=32, help="This label will be displayed on report to show the balance computed for the given comparison filter."),
'fiscalyear_id_cmp': fields.many2one('account.fiscalyear', 'Fiscal Year', help='Keep empty for all open fiscal year'),
'filter_cmp': fields.selection([('filter_no', 'No Filters'), ('filter_date', 'Date'), ('filter_period', 'Periods')], "Filter by", required=True),
'period_from_cmp': fields.many2one('account.period', 'Start Period'),
'period_to_cmp': fields.many2one('account.period', 'End Period'),
'date_from_cmp': fields.date("Start Date"),
'date_to_cmp': fields.date("End Date"),
}
_defaults = {
'filter_cmp': 'filter_no',
'target_move': 'posted',
}
def _build_comparison_context(self, cr, uid, ids, data, context=None):
if context is None:
context = {}
result = {}
result['fiscalyear'] = 'fiscalyear_id_cmp' in data['form'] and data['form']['fiscalyear_id_cmp'] or False
result['journal_ids'] = 'journal_ids' in data['form'] and data['form']['journal_ids'] or False
result['chart_account_id'] = 'chart_account_id' in data['form'] and data['form']['chart_account_id'] or False
if data['form']['filter_cmp'] == 'filter_date':
result['date_from'] = data['form']['date_from_cmp']
result['date_to'] = data['form']['date_to_cmp']
elif data['form']['filter_cmp'] == 'filter_period':
if not data['form']['period_from_cmp'] or not data['form']['period_to_cmp']:
raise osv.except_osv(_('Error'),_('Select a starting and an ending period'))
result['period_from'] = data['form']['period_from_cmp']
result['period_to'] = data['form']['period_to_cmp']
return result
def check_report(self, cr, uid, ids, context=None):
if context is None:
context = {}
res = super(accounting_report, self).check_report(cr, uid, ids, context=context)
data = {}
data['form'] = self.read(cr, uid, ids, ['account_report_id', 'date_from_cmp', 'date_to_cmp', 'fiscalyear_id_cmp', 'journal_ids', 'period_from_cmp', 'period_to_cmp', 'filter_cmp', 'chart_account_id', 'target_move'], context=context)[0]
for field in ['fiscalyear_id_cmp', 'chart_account_id', 'period_from_cmp', 'period_to_cmp', 'account_report_id']:
if isinstance(data['form'][field], tuple):
data['form'][field] = data['form'][field][0]
comparison_context = self._build_comparison_context(cr, uid, ids, data, context=context)
res['datas']['form']['comparison_context'] = comparison_context
return res
def _print_report(self, cr, uid, ids, data, context=None):
data['form'].update(self.read(cr, uid, ids, ['date_from_cmp', 'date_to_cmp', 'fiscalyear_id_cmp', 'period_from_cmp', 'period_to_cmp', 'filter_cmp', 'account_report_id', 'enable_filter', 'label_filter'], context=context)[0])
return {
'type': 'ir.actions.report.xml',
'report_name': 'account.financial.report',
'datas': data,
}
accounting_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="accounting_report_view" model="ir.ui.view">
<field name="name">Accounting Report</field>
<field name="model">accounting.report</field>
<field name="type">form</field>
<field name="inherit_id" ref="account.account_common_report_view"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='target_move']" position="after">
<field name="account_report_id" domain="[('parent_id','=',False)]"/>
<field name="enable_filter"/>
</xpath>
<xpath expr="//notebook/page[@string='Filters']" position="after">
<page string="Comparison" attrs="{'invisible': [('enable_filter','=',False)]}">
<field name="label_filter" attrs="{'required': [('enable_filter', '=', True)]}"/>
<field name="fiscalyear_id_cmp"/><newline/>
<field name="filter_cmp"/>
<separator string="Dates" colspan="4"/>
<field name="date_from_cmp" attrs="{'readonly':[('filter_cmp', '!=', 'filter_date')], 'required':[('filter_cmp', '=', 'filter_date')]}" colspan="4"/>
<field name="date_to_cmp" attrs="{'readonly':[('filter_cmp', '!=', 'filter_date')], 'required':[('filter_cmp', '=', 'filter_date')]}" colspan="4"/>
<separator string="Periods" colspan="4"/>
<field name="period_from_cmp" domain="[('fiscalyear_id', '=', fiscalyear_id_cmp)]" attrs="{'readonly':[('filter_cmp','!=','filter_period')], 'required':[('filter_cmp', '=', 'filter_period')]}" colspan="4"/>
<field name="period_to_cmp" domain="[('fiscalyear_id', '=', fiscalyear_id_cmp)]" attrs="{'readonly':[('filter_cmp','!=','filter_period')], 'required':[('filter_cmp', '=', 'filter_period')]}" colspan="4"/>
</page>
</xpath>
<xpath expr="//notebook/page[@string='Journals']" position="replace">
</xpath>
</field>
</record>
<record id="action_account_report" model="ir.actions.act_window">
<field name="name">Financial Reports</field>
<field name="res_model">accounting.report</field>
<field name="type">ir.actions.act_window</field>
<field name="view_type">form</field>
<field name="view_mode">form</field>
<field name="view_id" ref="accounting_report_view"/>
<field name="target">new</field>
</record>
<menuitem icon="STOCK_PRINT"
name="Financial Report"
action="action_account_report"
groups="group_account_user,group_account_manager"
id="menu_account_report"
parent="final_accounting_reports"
sequence="100"/>
</data>
</openerp>

View File

@ -110,7 +110,7 @@ class account_move_line_reconcile_writeoff(osv.osv_memory):
It opens the write off wizard form, in that user can define the journal, account, analytic account for reconcile
"""
_name = 'account.move.line.reconcile.writeoff'
_description = 'Account move line reconcile'
_description = 'Account move line reconcile (writeoff)'
_columns = {
'journal_id': fields.many2one('account.journal','Write-Off Journal', required=True),
'writeoff_acc_id': fields.many2one('account.account','Write-Off account', required=True),

View File

@ -240,7 +240,7 @@
<para style="terp_default_Right_9">[[ formatLang(a['ref_qty']) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(a['ref_amt']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(a['ref_amt'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">100.00%</para>
@ -288,7 +288,7 @@
<para style="terp_default_Right_9">[[formatLang(a['qty']) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(a['amt']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(a['amt'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(a['perc']) ]]%</para>

View File

@ -185,13 +185,13 @@
<para style="terp_default_9"><font face="Helvetica" size="9.0" color="white">[['.....' *(a['status']-1) ]]</font><font face="Helvetica" size="8.0"> [[ (a['status']==1 and (setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ a['name'] ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['theo']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['theo'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['pln']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['pln'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['prac']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['prac'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Centre_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['perc']) ]]%</para>
@ -205,13 +205,13 @@
<para style="terp_tblheader_Details">[[ repeatIn(funct_total(data['form']),'b') ]] Total:</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_theo']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_theo'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_pln']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_pln'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_prac']) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_prac'], currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_tblheader_Details_Centre">[[ formatLang(b['tot_perc']) ]]%</para>
@ -223,4 +223,4 @@
</para>
</pto>
</story>
</document>
</document>

View File

@ -148,13 +148,13 @@
<para style="terp_default_9"><font color="white">[['.....' *(a['status']-1) ]]</font><font face="Helvetica">[[ (a['status']==1 and (setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] </font>[[ a['name'] ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['theo'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['theo'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] </font>[[ formatLang(a['pln'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] </font>[[ formatLang(a['pln'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] </font>[[ formatLang(a['prac'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] </font>[[ formatLang(a['prac'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] </font>[[ formatLang(a['perc'], digits=2) ]]%</para>
@ -168,13 +168,13 @@
<para style="terp_default_Bold_9"><font face="Helvetica">[[ repeatIn(funct_total(data['form']),'b') ]]</font>Total:</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_theo'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_theo'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]] </para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_pln'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_pln'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_prac'], digits=get_digits(dp='Account')) ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_prac'], digits=get_digits(dp='Account'), currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_perc'], digits=2) ]]%</para>

View File

@ -163,13 +163,13 @@
<para style="terp_default_9"><font face="Helvetica" size="10.0" color="white">[['.....' *(a['status']-1) ]]</font><font face="Helvetica" size="8.0">[[ (a['status']==1 and (setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ a['name'] ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['theo'], dp='Account') ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['theo'], dp='Account', currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['pln'], dp='Account') ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['pln'], dp='Account', currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['prac'], dp='Account') ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Right_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['prac'], dp='Account', currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Centre_9"><font face="Helvetica" size="8.0">[[ (a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]]</font> [[ formatLang(a['perc'],digits=2) ]]%</para>
@ -183,13 +183,13 @@
<para style="terp_tblheader_Details">[[ repeatIn(funct_total(data['form']),'b') ]] Total :</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_theo'], dp='Account') ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_theo'], dp='Account', currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_pln'], dp='Account') ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_pln'], dp='Account', currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_prac'], dp='Account') ]] [[ company.currency_id.symbol ]]</para>
<para style="terp_default_Bold_right_9">[[ formatLang(b['tot_prac'], dp='Account', currency_obj=company.currency_id) ]]</para>
</td>
<td>
<para style="terp_tblheader_Details_Centre">[[ formatLang(b['tot_perc'],digits=2) ]]%</para>

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-09-05 23:03+0000\n"
"Last-Translator: Majed Majbour <Unknown>\n"
"PO-Revision-Date: 2011-09-22 02:41+0000\n"
"Last-Translator: kifcaliph <kifcaliph@hotmail.com>\n"
"Language-Team: Arabic <ar@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n"
"X-Generator: Launchpad (build 13861)\n"
"X-Launchpad-Export-Date: 2011-09-22 04:48+0000\n"
"X-Generator: Launchpad (build 13996)\n"
#. module: analytic
#: field:account.analytic.account,child_ids:0
@ -25,7 +25,7 @@ msgstr "حساب فرعي"
#. module: analytic
#: field:account.analytic.account,name:0
msgid "Account Name"
msgstr ""
msgstr "اسم الحساب"
#. module: analytic
#: help:account.analytic.line,unit_amount:0
@ -44,12 +44,12 @@ msgstr ""
#. module: analytic
#: field:account.analytic.account,state:0
msgid "State"
msgstr ""
msgstr "المحافظة / الولاية"
#. module: analytic
#: field:account.analytic.account,user_id:0
msgid "Account Manager"
msgstr ""
msgstr "مدير المحاسبة"
#. module: analytic
#: selection:account.analytic.account,state:0
@ -114,7 +114,7 @@ msgstr "وصف"
#. module: analytic
#: selection:account.analytic.account,type:0
msgid "Normal"
msgstr ""
msgstr "عادي"
#. module: analytic
#: field:account.analytic.account,company_id:0
@ -185,7 +185,7 @@ msgstr "جهة الإتصال"
msgid ""
"Error! The currency has to be the same as the currency of the selected "
"company"
msgstr ""
msgstr "خطأ! العملة لابد و أن تكون مثل العملة للشركة المختارة"
#. module: analytic
#: selection:account.analytic.account,state:0
@ -208,11 +208,13 @@ msgid ""
"If you select the View Type, it means you won't allow to create journal "
"entries using that account."
msgstr ""
"اذا اخترت نوع العرض، فذلك يعني انك لن تسمح بإنشاء قيود اليومية بإستخدام ذلك "
"الحساب."
#. module: analytic
#: field:account.analytic.account,date:0
msgid "Date End"
msgstr ""
msgstr "نهاية التاريخ"
#. module: analytic
#: field:account.analytic.account,code:0

View File

@ -21,5 +21,4 @@
import base_vat
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -18,26 +18,34 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': 'Base VAT',
'name': 'VAT Number Validation',
'version': '1.0',
'category': 'Tools',
'category': 'Generic Modules/Base',
'category': 'Finance',
'complexity': "easy",
'description': """
Enable VAT Number for a partner and check its validity.
=======================================================
VAT validation for Partners' VAT numbers
========================================
After installing this module, values entered in the VAT field of Partners will
be validated for all supported countries. The country is inferred from the
2-letter country code that prefixes the VAT number, e.g. ``BE0477472701``
will be validated using the Belgian rules.
Supported countries currently include EU countries, and a few non-EU countries
such as Chile, Colombia, Mexico, Norway or Russia. For unsupported countries,
only the country code will be validated.
This module follows the methods stated at http://sima-pc.com/nif.php for
checking the validity of VAT Number assigned to partners in European countries.
""",
'author': 'OpenERP SA',
'depends': ['account'],
'website': 'http://www.openerp.com',
'update_xml': ['base_vat_view.xml'],
'data': ['base_vat_view.xml'],
'installable': True,
'active': False,
'certificate': '0084849360989',
'images': ['images/1_partner_vat.jpeg'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

File diff suppressed because it is too large Load Diff

View File

@ -1,21 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<data>
<record id="view_partner_form" model="ir.ui.view">
<field name="name">res.partner.vat.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="account.view_partner_property_form"/>
<field name="arch" type="xml">
<field name="property_account_payable" position="after">
<group colspan="2" col="6">
<field name="vat" on_change="vat_change(vat)" colspan="4" />
<field groups="base.group_extended" name="vat_subjected" colspan="1"/>
</group>
</field>
</field>
</record>
<record id="view_partner_form" model="ir.ui.view">
<field name="name">res.partner.vat.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="account.view_partner_property_form"/>
<field name="arch" type="xml">
<field name="property_account_payable" position="after">
<group colspan="2" col="6">
<field name="vat" on_change="vat_change(vat)" colspan="4" />
<field name="vat_subjected" colspan="1" groups="base.group_extended" />
</group>
</field>
</field>
</record>
</data>
</data>
</openerp>

View File

@ -44,7 +44,6 @@
<field eval="'Interest in Your New Product'" name="name"/>
<field eval="'(956) 293-2595'" name="phone"/>
</record>
<record id="crm_case_developingwebapplications0" model="crm.lead">
<field name="type_id" ref="crm.type_lead5"/>
<field eval="'2'" name="priority"/>
@ -266,12 +265,17 @@
<field name="user_id" ref="base.user_demo"/>
<field eval="'draft'" name="state"/>
<field eval="45000.0" name="planned_revenue"/>
<field eval="50" name="probability"/>
<field eval="35" name="probability"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field name="categ_id" ref="crm.categ_oppor3"/>
<field name="stage_id" ref="crm.stage_lead2"/>
<field eval="'Pricing Information of Onsite Intervention'" name="name"/>
<field eval="'Send price list regarding our interventions'" name="title_action"/>
<field name="partner_name">BalmerInc S.A.</field>
<field name="street">Rue des Palais 51, bte 33</field>
<field name="city">Bruxelles</field>
<field eval="1000" name="zip"/>
<field name="country_id" ref="base.be"/>
</record>
<record id="crm_case_rdroundfundingunits25" model="crm.lead">
<field eval="1" name="active"/>
@ -282,15 +286,65 @@
<field name="user_id" ref="base.user_demo"/>
<field eval="'draft'" name="state"/>
<field eval="30000.0" name="planned_revenue"/>
<field eval="75" name="probability"/>
<field eval="30" name="probability"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field name="categ_id" ref="crm.categ_oppor3"/>
<field name="stage_id" ref="crm.stage_lead2"/>
<field eval="'Interest in your Kitchen Design Project'" name="name"/>
<field eval="'Send Catalogue by E-Mail'" name="title_action"/>
<field name="partner_name">Lucie Vonck</field>
<field name="street">Chaussée de Namur</field>
<field name="city">Grand-Rosière</field>
<field eval="1367" name="zip"/>
<field name="country_id" ref="base.be"/>
</record>
<record id="crm_case_unifliege" model="crm.lead">
<field eval="1" name="active"/>
<field name="type">opportunity</field>
<field name="type_id" ref="crm.type_lead2"/>
<field name="partner_id" ref="base.res_partner_accent"/>
<field name="partner_address_id" ref="base.res_partner_address_accent"/>
<field eval="'3'" name="priority"/>
<field name="user_id" ref="base.user_root"/>
<field eval="'open'" name="state"/>
<field eval="2500.0" name="planned_revenue"/>
<field eval="25" name="probability"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field name="categ_id" ref="crm.categ_oppor6"/>
<field name="stage_id" ref="crm.stage_lead2"/>
<field eval="'Plan train our students on your product'" name="name"/>
<field eval="'Call to define real needs about training'" name="title_action"/>
<field eval="4000" name="zip"/>
<field name="partner_name">Université de Liège</field>
<field name="street">Place du 20Août</field>
<field name="city">Liège</field>
<field eval="75016" name="zip"/>
<field name="country_id" ref="base.be"/>
</record>
<record id="crm_case_bankwealthy2" model="crm.lead">
<field eval="1" name="active"/>
<field name="type">opportunity</field>
<field name="type_id" ref="crm.type_lead2"/>
<field name="partner_id" ref="base.res_partner_2"/>
<field name="partner_address_id" ref="base.res_partner_address_9"/>
<field eval="'3'" name="priority"/>
<field name="user_id" ref="base.user_root"/>
<field eval="'open'" name="state"/>
<field eval="462.0" name="planned_revenue"/>
<field eval="40" name="probability"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field name="categ_id" ref="crm.categ_oppor2"/>
<field name="stage_id" ref="crm.stage_lead2"/>
<field eval="'Plan to buy 66 keyboards and 66 mouses'" name="name"/>
<field eval="'Propose the kit keyboard+mouse'" name="title_action"/>
<field name="partner_name">Bank Wealthy and sons</field>
<field name="street">1 rue Rockfeller</field>
<field name="city">Paris</field>
<field eval="75016" name="zip"/>
<field name="country_id" ref="base.fr"/>
</record>
<record id="crm_case_mediapoleunits0" model="crm.lead">
<field eval="10" name="probability"/>
<field eval="100" name="probability"/>
<field name="partner_address_id" ref="base.res_partner_address_3"/>
<field eval="1" name="active"/>
<field name="type">opportunity</field>
@ -308,7 +362,7 @@
<field eval="'info@mycompany.net'" name="email_from"/>
</record>
<record id="crm_case_abcfuelcounits0" model="crm.lead">
<field eval="40" name="probability"/>
<field eval="80" name="probability"/>
<field name="partner_address_id" ref="base.res_partner_address_marcdubois0"/>
<field eval="1" name="active"/>
<field name="type">opportunity</field>
@ -324,6 +378,11 @@
<field eval="'Need new design for my website'" name="name"/>
<field eval="'info@opensides.be'" name="email_from"/>
<field eval="'Convert to quote'" name="title_action"/>
<field name="partner_name">Dubois sprl</field>
<field name="street">Avenue de la Liberté 56</field>
<field name="city">Brussels</field>
<field eval="1000" name="zip"/>
<field name="country_id" ref="base.be"/>
</record>
<record id="crm_case_dirtminingltdunits25" model="crm.lead">
<field eval="30" name="probability"/>
@ -370,6 +429,82 @@
<field name="stage_id" ref="crm.stage_lead2"/>
<field eval="'Plan to attend a training'" name="name"/>
<field eval="'Call to give info about next training session'" name="title_action"/>
<field name="partner_name">Axelor</field>
<field name="street">12 rue Albert Einstein</field>
<field name="city">Champs sur Marne</field>
<field eval="77420" name="zip"/>
<field name="country_id" ref="base.fr"/>
</record>
<record id="crm_case_construstazunits0" model="crm.lead">
<field eval="60" name="probability"/>
<field name="partner_address_id" ref="base.res_partner_address_thymbra"/>
<field eval="1" name="active"/>
<field name="type">opportunity</field>
<field name="type_id" ref="crm.type_lead1"/>
<field name="partner_id" ref="base.res_partner_thymbra"/>
<field eval="'3'" name="priority"/>
<field name="user_id" ref="base.user_root"/>
<field eval="'open'" name="state"/>
<field eval="'150000'" name="planned_revenue"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field name="categ_id" ref="crm.categ_oppor1"/>
<field name="stage_id" ref="crm.stage_lead3"/>
<field eval="'Need customize the solution'" name="name"/>
<field eval="'Conf call with technical service'" name="title_action"/>
<field name="partner_name">Thymbra</field>
<field name="street">Palermo, Capital Federal</field>
<field name="street2">C1414CMS Capital Federal</field>
<field name="city">Buenos Aires</field>
<field eval="1659" name="zip"/>
<field name="country_id" ref="base.ar"/>
</record>
<record id="crm_case_ericdubois4" model="crm.lead">
<field eval="65" name="probability"/>
<field name="partner_address_id" ref="base.res_partner_address_ericdubois0"/>
<field eval="1" name="active"/>
<field name="type">opportunity</field>
<field name="type_id" ref="crm.type_lead1"/>
<field name="partner_id" ref="base.res_partner_ericdubois0"/>
<field eval="'3'" name="priority"/>
<field name="user_id" ref="base.user_root"/>
<field eval="'open'" name="state"/>
<field eval="'1200'" name="planned_revenue"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field name="categ_id" ref="crm.categ_oppor1"/>
<field name="stage_id" ref="crm.stage_lead3"/>
<field eval="'Interest in your customizable PC'" name="name"/>
<field eval="'Ask for the good receprion of the proposition'" name="title_action"/>
<field name="partner_name">Eric Dubois</field>
<field name="street">Chaussée de Binche, 27</field>
<field name="city">Mons</field>
<field eval="7000" name="zip"/>
<field name="country_id" ref="base.be"/>
</record>
<record id="crm_case_fabiendupont" model="crm.lead">
<field name="partner_address_id" ref="base.res_partner_address_fabiendupont0"/>
<field eval="1" name="active"/>
<field name="type">opportunity</field>
<field name="type_id" ref="crm.type_lead1"/>
<field name="partner_id" ref="base.res_partner_fabiendupont0"/>
<field eval="'3'" name="priority"/>
<field name="user_id" ref="base.user_root"/>
<field eval="'draft'" name="state"/>
<field name="categ_id" ref="crm.categ_oppor4"/>
<field name="stage_id" ref="crm.stage_lead1"/>
<field eval="'Need more info about the onsite intervention'" name="name"/>
</record>
<record id="crm_case_shelvehouse" model="crm.lead">
<field name="partner_address_id" ref="base.res_partner_address_henrychard1"/>
<field eval="1" name="active"/>
<field name="type">opportunity</field>
<field name="type_id" ref="crm.type_lead1"/>
<field name="partner_id" ref="base.res_partner_theshelvehouse0"/>
<field eval="'3'" name="priority"/>
<field name="user_id" ref="base.user_demo"/>
<field eval="'draft'" name="state"/>
<field name="categ_id" ref="crm.categ_oppor4"/>
<field name="stage_id" ref="crm.stage_lead1"/>
<field eval="'Need more info about your pc2'" name="name"/>
</record>
</data>
</openerp>

View File

@ -341,7 +341,6 @@
<div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick">
<div class="oe_kanban_left">
<a string="Edit" icon="gtk-edit" type="edit"/>
<a string="Delete" icon="gtk-close" type="delete"/>
<a string="Change Color" icon="color-picker" type="color" name="color"/>
<a string="Send New Email" name="%(mail.action_email_compose_message_wizard)d" icon="terp-mail-message-new" type="action"/>
<a string="Schedule/Log Call" name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action"/>

View File

@ -2,4 +2,4 @@
"access_crm_claim_manager","crm.claim.manager","model_crm_claim","base.group_sale_manager",1,1,1,1
"access_crm_claim_user","crm.claim.user","model_crm_claim","base.group_sale_salesman",1,1,1,0
"access_crm_claim_report_manager","crm.claim.report.manager","model_crm_claim_report","base.group_sale_manager",1,1,1,1
"access_crm_claim_partner_manager","crm.claim.partner.manager","model_crm_claim","base.group_partner_manager",1,1,1,1
"access_crm_claim_partner_manager","crm.claim.partner.manager","model_crm_claim","base.group_partner_manager",1,0,0,0

1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_crm_claim_manager crm.claim.manager model_crm_claim base.group_sale_manager 1 1 1 1
3 access_crm_claim_user crm.claim.user model_crm_claim base.group_sale_salesman 1 1 1 0
4 access_crm_claim_report_manager crm.claim.report.manager model_crm_claim_report base.group_sale_manager 1 1 1 1
5 access_crm_claim_partner_manager crm.claim.partner.manager model_crm_claim base.group_partner_manager 1 1 0 1 0 1 0

View File

@ -4,119 +4,120 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Project-Id-Version: openeobject-addons\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2009-02-03 06:25+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"PO-Revision-Date: 2011-09-20 07:48+0000\n"
"Last-Translator: Jiří Hajda <robie@centrum.cz>\n"
"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-05 05:31+0000\n"
"X-Generator: Launchpad (build 13830)\n"
"X-Launchpad-Export-Date: 2011-09-21 04:50+0000\n"
"X-Generator: Launchpad (build 13996)\n"
"X-Poedit-Language: Czech\n"
#. module: hr_contract
#: view:hr.contract.wage.type:0
msgid "Hourly cost computation"
msgstr ""
msgstr "Výpočet hodinové ceny"
#. module: hr_contract
#: selection:hr.contract.wage.type,type:0
msgid "Gross"
msgstr ""
msgstr "Hrubého"
#. module: hr_contract
#: view:hr.contract:0
msgid "Trial Period"
msgstr ""
msgstr "Zkušební období"
#. module: hr_contract
#: field:hr.contract,trial_date_start:0
msgid "Trial Start Date"
msgstr ""
msgstr "Zkušební počáteční datum"
#. module: hr_contract
#: view:hr.contract:0
msgid "Passport"
msgstr ""
msgstr "Pas"
#. module: hr_contract
#: view:hr.employee:0
msgid "Medical Examination"
msgstr ""
msgstr "Zdravotní vyšetření"
#. module: hr_contract
#: field:hr.employee,vehicle:0
msgid "Company Vehicle"
msgstr ""
msgstr "Firemní vozidlo"
#. module: hr_contract
#: field:hr.contract.wage.type,name:0
msgid "Wage Type Name"
msgstr ""
msgstr "Jméno typu mzdy"
#. module: hr_contract
#: view:hr.employee:0
msgid "Miscellaneous"
msgstr ""
msgstr "Různé"
#. module: hr_contract
#: view:hr.contract:0
msgid "Current"
msgstr ""
msgstr "Aktuální"
#. module: hr_contract
#: field:hr.contract.wage.type,factor_type:0
msgid "Factor for hour cost"
msgstr ""
msgstr "Koeficient pro cenu hodiny"
#. module: hr_contract
#: view:hr.contract:0
msgid "Overpassed"
msgstr ""
msgstr "Uplynulý"
#. module: hr_contract
#: view:hr.contract.wage.type:0
msgid "Wage Types"
msgstr ""
msgstr "Typ mzdy"
#. module: hr_contract
#: field:hr.contract,department_id:0
msgid "Department"
msgstr ""
msgstr "Oddělení"
#. module: hr_contract
#: selection:hr.contract.wage.type,type:0
msgid "Basic"
msgstr ""
msgstr "Základní"
#. module: hr_contract
#: view:hr.contract:0
#: field:hr.contract,employee_id:0
#: model:ir.model,name:hr_contract.model_hr_employee
msgid "Employee"
msgstr ""
msgstr "Zaměstnanec"
#. module: hr_contract
#: selection:hr.contract.wage.type,type:0
msgid "Net"
msgstr ""
msgstr "Čistého"
#. module: hr_contract
#: model:ir.module.module,shortdesc:hr_contract.module_meta_information
msgid "Human Resources Contracts"
msgstr ""
msgstr "Smlouvy lidských zdrojů"
#. module: hr_contract
#: field:hr.contract.wage.type.period,factor_days:0
msgid "Hours in the period"
msgstr ""
msgstr "Hodin v období"
#. module: hr_contract
#: field:hr.employee,vehicle_distance:0
msgid "Home-Work Distance"
msgstr ""
msgstr "Vzdálenost z domu do práce"
#. module: hr_contract
#: view:hr.contract:0
@ -125,32 +126,32 @@ msgstr ""
#: model:ir.actions.act_window,name:hr_contract.action_hr_contract
#: model:ir.ui.menu,name:hr_contract.hr_menu_contract
msgid "Contracts"
msgstr ""
msgstr "Smlouvy"
#. module: hr_contract
#: view:hr.employee:0
msgid "Personal Info"
msgstr ""
msgstr "Osobní informace"
#. module: hr_contract
#: view:hr.contract:0
msgid "Job"
msgstr ""
msgstr "Práce"
#. module: hr_contract
#: view:hr.contract:0
msgid "Search Contract"
msgstr ""
msgstr "Hledat smlouvu"
#. module: hr_contract
#: help:hr.employee,contract_id:0
msgid "Latest contract of the employee"
msgstr ""
msgstr "Poslední smlouva zaměstnance"
#. module: hr_contract
#: field:hr.contract,advantages_net:0
msgid "Deductions"
msgstr ""
msgstr "Odpočty"
#. module: hr_contract
#: model:ir.module.module,description:hr_contract.module_meta_information
@ -163,33 +164,40 @@ msgid ""
" You can assign several contracts per employee.\n"
" "
msgstr ""
"\n"
" Přidává všechny informace zaměstnance ke správě smluv:\n"
" * Rodinný stav,\n"
" * Bezpečnostní číslo,\n"
" * Místo narození, datum narození, ...\n"
" Ke každému zaměstnanci můžete přiřadit několik smluv.\n"
" "
#. module: hr_contract
#: view:hr.contract:0
#: field:hr.contract,advantages:0
msgid "Advantages"
msgstr ""
msgstr "Výhody"
#. module: hr_contract
#: view:hr.contract:0
msgid "Valid for"
msgstr ""
msgstr "Platné pro"
#. module: hr_contract
#: view:hr.contract:0
msgid "Work Permit"
msgstr ""
msgstr "Pracovní povolení"
#. module: hr_contract
#: field:hr.employee,children:0
msgid "Number of Children"
msgstr ""
msgstr "Počet dětí"
#. module: hr_contract
#: model:ir.actions.act_window,name:hr_contract.action_hr_contract_type
#: model:ir.ui.menu,name:hr_contract.hr_menu_contract_type
msgid "Contract Types"
msgstr ""
msgstr "Typy smluv"
#. module: hr_contract
#: field:hr.contract,wage_type_id:0
@ -198,44 +206,44 @@ msgstr ""
#: model:ir.model,name:hr_contract.model_hr_contract_wage_type
#: model:ir.ui.menu,name:hr_contract.hr_menu_contract_wage_type
msgid "Wage Type"
msgstr ""
msgstr "Typ mzdy"
#. module: hr_contract
#: constraint:hr.employee:0
msgid "Error ! You cannot create recursive Hierarchy of Employees."
msgstr ""
msgstr "Chyba ! Nemůžete vytvořit rekurzivní Hiearchii zaměstnanců"
#. module: hr_contract
#: field:hr.contract,date_end:0
msgid "End Date"
msgstr ""
msgstr "Datum ukončení"
#. module: hr_contract
#: field:hr.contract,wage:0
msgid "Wage"
msgstr ""
msgstr "Mzda"
#. module: hr_contract
#: field:hr.contract,name:0
msgid "Contract Reference"
msgstr ""
msgstr "Odkaz smlouvy"
#. module: hr_contract
#: help:hr.employee,vehicle_distance:0
msgid "In kilometers"
msgstr ""
msgstr "V kilometrech"
#. module: hr_contract
#: view:hr.contract:0
#: field:hr.contract,notes:0
msgid "Notes"
msgstr ""
msgstr "Poznámky"
#. module: hr_contract
#: constraint:hr.employee:0
msgid ""
"Error ! You cannot select a department for which the employee is the manager."
msgstr ""
msgstr "Chyba ! Nemůžete vybrat oddělení, kterého je zaměstnance vedoucí."
#. module: hr_contract
#: view:hr.contract:0
@ -243,7 +251,7 @@ msgstr ""
#: model:ir.model,name:hr_contract.model_hr_contract
#: model:ir.ui.menu,name:hr_contract.next_id_56
msgid "Contract"
msgstr ""
msgstr "Smlouva"
#. module: hr_contract
#: view:hr.contract:0
@ -252,92 +260,92 @@ msgstr ""
#: field:hr.contract.type,name:0
#: model:ir.model,name:hr_contract.model_hr_contract_type
msgid "Contract Type"
msgstr ""
msgstr "Typ smlouvy"
#. module: hr_contract
#: view:hr.contract.wage.type.period:0
msgid "Search Wage Period"
msgstr ""
msgstr "Hledat mzdové období"
#. module: hr_contract
#: view:hr.contract:0
#: field:hr.contract,working_hours:0
msgid "Working Schedule"
msgstr ""
msgstr "Pracovní plán"
#. module: hr_contract
#: view:hr.employee:0
msgid "Job Info"
msgstr ""
msgstr "Pracovní informace"
#. module: hr_contract
#: field:hr.contract.wage.type,period_id:0
#: view:hr.contract.wage.type.period:0
#: model:ir.model,name:hr_contract.model_hr_contract_wage_type_period
msgid "Wage Period"
msgstr ""
msgstr "Mzdové období"
#. module: hr_contract
#: field:hr.contract,job_id:0
msgid "Job Title"
msgstr ""
msgstr "Název pozice"
#. module: hr_contract
#: field:hr.employee,manager:0
msgid "Is a Manager"
msgstr ""
msgstr "Je vedoucí"
#. module: hr_contract
#: field:hr.contract,date_start:0
msgid "Start Date"
msgstr ""
msgstr "Počáteční datum"
#. module: hr_contract
#: constraint:hr.contract:0
msgid "Error! contract start-date must be lower then contract end-date."
msgstr ""
msgstr "Chyba! Počáteční datum smlouvy musí být nižší než konečné datum."
#. module: hr_contract
#: view:hr.contract.wage.type:0
msgid "Search Wage Type"
msgstr ""
msgstr "Hledat typ mzdy"
#. module: hr_contract
#: field:hr.contract.wage.type,type:0
msgid "Type"
msgstr ""
msgstr "Typ"
#. module: hr_contract
#: field:hr.contract,trial_date_end:0
msgid "Trial End Date"
msgstr ""
msgstr "Zkušební koncové datum"
#. module: hr_contract
#: view:hr.contract:0
#: view:hr.contract.wage.type:0
msgid "Group By..."
msgstr ""
msgstr "Seskupit podle..."
#. module: hr_contract
#: field:hr.contract.wage.type.period,name:0
msgid "Period Name"
msgstr ""
msgstr "Název období"
#. module: hr_contract
#: view:hr.contract.wage.type:0
msgid "Period"
msgstr ""
msgstr "Období"
#. module: hr_contract
#: field:hr.employee,place_of_birth:0
msgid "Place of Birth"
msgstr ""
msgstr "Místo narození"
#. module: hr_contract
#: model:ir.actions.act_window,name:hr_contract.action_hr_contract_wage_type_period
#: model:ir.ui.menu,name:hr_contract.hr_menu_contract_wage_type_period
msgid "Wage period"
msgstr ""
msgstr "Mzdové období"
#. module: hr_contract
#: help:hr.contract.wage.type,factor_type:0
@ -346,28 +354,30 @@ msgid ""
"This field is used by the timesheet system to compute the price of an hour "
"of work wased on the contract of the employee"
msgstr ""
"Toto pole je použito časovým rozvrhem systému pro výpočet ceny za hodinu "
"práce vynaložené na smlouvu zaměstnance"
#. module: hr_contract
#: view:hr.contract:0
msgid "Duration"
msgstr ""
msgstr "Trvání"
#. module: hr_contract
#: field:hr.employee,medic_exam:0
msgid "Medical Examination Date"
msgstr ""
msgstr "Datum zdravotní prohlídky"
#. module: hr_contract
#: field:hr.contract,advantages_gross:0
msgid "Allowances"
msgstr ""
msgstr "Dávky"
#. module: hr_contract
#: view:hr.contract:0
msgid "Main Data"
msgstr ""
msgstr "Hlavní data"
#. module: hr_contract
#: view:hr.contract.type:0
msgid "Search Contract Type"
msgstr ""
msgstr "Hledat typ smlouvy"

View File

@ -204,14 +204,17 @@ class hr_holidays(osv.osv):
def onchange_sec_id(self, cr, uid, ids, status, context=None):
warning = {}
double_validation = False
obj_holiday_status = self.pool.get('hr.holidays.status')
if status:
brows_obj = self.pool.get('hr.holidays.status').browse(cr, uid, status, context=context)
if brows_obj.categ_id and brows_obj.categ_id.section_id and not brows_obj.categ_id.section_id.allow_unlink:
holiday_status = obj_holiday_status.browse(cr, uid, status, context=context)
double_validation = holiday_status.double_validation
if holiday_status.categ_id and holiday_status.categ_id.section_id and not holiday_status.categ_id.section_id.allow_unlink:
warning = {
'title': "Warning for ",
'message': "You won\'t be able to cancel this leave request because the CRM Sales Team of the leave type disallows."
}
return {'warning': warning}
return {'warning': warning, 'value': {'double_validation': double_validation}}
def set_to_draft(self, cr, uid, ids, *args):
self.write(cr, uid, ids, {

View File

@ -4,45 +4,46 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2009-02-03 20:59+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"Language-Team: \n"
"PO-Revision-Date: 2011-09-20 08:48+0000\n"
"Last-Translator: Jiří Hajda <robie@centrum.cz>\n"
"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-05 05:24+0000\n"
"X-Generator: Launchpad (build 13830)\n"
"X-Launchpad-Export-Date: 2011-09-21 04:50+0000\n"
"X-Generator: Launchpad (build 13996)\n"
"X-Poedit-Language: Czech\n"
#. module: hr_timesheet
#: model:product.template,name:hr_timesheet.product_consultant_product_template
msgid "Service on Timesheet"
msgstr ""
msgstr "SLužby v časovém rozvrhu"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Wed"
msgstr ""
msgstr "St"
#. module: hr_timesheet
#: view:hr.sign.out.project:0
msgid "(Keep empty for current_time)"
msgstr ""
msgstr "(Nechejte prázdné pro aktuální čas)"
#. module: hr_timesheet
#: code:addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py:132
#, python-format
msgid "No employee defined for your user !"
msgstr ""
msgstr "Pro vašeho uživatele nebyl určen zaměstnanec !"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Group By..."
msgstr ""
msgstr "Seskupit podle..."
#. module: hr_timesheet
#: model:ir.actions.act_window,help:hr_timesheet.action_hr_timesheet_sign_in
@ -52,16 +53,20 @@ msgid ""
"analytic account. This feature allows to record at the same time the "
"attendance and the timesheet."
msgstr ""
"Zaměstnanci mohou vkládat své časy strávené na různých projektech. Projekt "
"je analytický účet a čas strávený na projektu generuje ceny na na "
"analytickém účtu. Tato funkce umožňuje zaznamenat ve stejný čas docházku a "
"časový rozvrh."
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Today"
msgstr ""
msgstr "Dnes"
#. module: hr_timesheet
#: field:hr.employee,journal_id:0
msgid "Analytic Journal"
msgstr ""
msgstr "Analytický deník"
#. module: hr_timesheet
#: view:hr.sign.out.project:0
@ -72,31 +77,31 @@ msgstr "Ukončit práci"
#: model:ir.actions.act_window,name:hr_timesheet.action_hr_timesheet_employee
#: model:ir.ui.menu,name:hr_timesheet.menu_hr_timesheet_employee
msgid "Employee Timesheet"
msgstr ""
msgstr "Časový rozvrh zaměstnance"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "Work done stats"
msgstr ""
msgstr "Statistika dokončené práce"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
#: model:ir.ui.menu,name:hr_timesheet.menu_hr_reporting_timesheet
msgid "Timesheet"
msgstr ""
msgstr "Časový rozvrh"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "janvier"
msgstr ""
msgstr "leden"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Mon"
msgstr ""
msgstr "Po"
#. module: hr_timesheet
#: view:hr.sign.in.project:0
@ -111,27 +116,31 @@ msgid ""
"project generates costs on the analytic account. This feature allows to "
"record at the same time the attendance and the timesheet."
msgstr ""
"Zaměstnanci mohou vkládat své časy strávené na různých projektech, ke kterým "
"jsou přiřazeni. Projekt je analytický účet a čas strávený na projektu "
"generuje ceny na na analytickém účtu. Tato funkce umožňuje zaznamenat ve "
"stejný čas docházku a časový rozvrh."
#. module: hr_timesheet
#: field:hr.sign.out.project,analytic_amount:0
msgid "Minimum Analytic Amount"
msgstr ""
msgstr "Minimální analytická částka"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.employee:0
msgid "Monthly Employee Timesheet"
msgstr ""
msgstr "Měsíční časový rozvrh zaměstnance"
#. module: hr_timesheet
#: view:hr.sign.out.project:0
msgid "Work done in the last period"
msgstr ""
msgstr "Dokončená práce v minulém období"
#. module: hr_timesheet
#: constraint:hr.employee:0
msgid ""
"Error ! You cannot select a department for which the employee is the manager."
msgstr ""
msgstr "Chyba ! Nemůžete vybrat oddělení, kterého je zaměstnance vedoucí."
#. module: hr_timesheet
#: field:hr.sign.in.project,state:0
@ -143,39 +152,39 @@ msgstr "Současné datum"
#: field:hr.sign.in.project,name:0
#: field:hr.sign.out.project,name:0
msgid "Employees name"
msgstr ""
msgstr "Jméno zaměstnance"
#. module: hr_timesheet
#: model:ir.model,name:hr_timesheet.model_hr_analytical_timesheet_users
msgid "Print Employees Timesheet"
msgstr ""
msgstr "Tisknou časový rozvrh zaměstnance"
#. module: hr_timesheet
#: code:addons/hr_timesheet/hr_timesheet.py:174
#: code:addons/hr_timesheet/hr_timesheet.py:176
#, python-format
msgid "Warning !"
msgstr ""
msgstr "Varování !"
#. module: hr_timesheet
#: code:addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py:77
#: code:addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py:132
#, python-format
msgid "UserError"
msgstr ""
msgstr "UserError"
#. module: hr_timesheet
#: code:addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py:77
#, python-format
msgid "No cost unit defined for this employee !"
msgstr ""
msgstr "Pro tohoto zaměstnance nebyla určena cenová jednotka !"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Tue"
msgstr ""
msgstr "Út"
#. module: hr_timesheet
#: field:hr.sign.out.project,account_id:0
@ -186,32 +195,32 @@ msgstr "Analytický účet"
#: code:addons/hr_timesheet/wizard/hr_timesheet_print_employee.py:42
#, python-format
msgid "Warning"
msgstr ""
msgstr "Varování"
#. module: hr_timesheet
#: model:ir.module.module,shortdesc:hr_timesheet.module_meta_information
msgid "Human Resources (Timesheet encoding)"
msgstr ""
msgstr "Lidské zdroje (Kódování časových rozvrhů)"
#. module: hr_timesheet
#: view:hr.sign.in.project:0
#: view:hr.sign.out.project:0
msgid "Sign In/Out By Project"
msgstr ""
msgstr "Přihlášení/Odhlášení podle projektu"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Sat"
msgstr ""
msgstr "So"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Sun"
msgstr ""
msgstr "Ne"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.employee:0
@ -222,18 +231,18 @@ msgstr "Tisk"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Timesheet Lines"
msgstr ""
msgstr "Řádky časového rozvrhu"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "juillet"
msgstr ""
msgstr "červenec"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.users:0
msgid "Monthly Employees Timesheet"
msgstr ""
msgstr "Měsíční časový rozvrh zaměstnance"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -242,7 +251,7 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "July"
msgstr ""
msgstr "Červenec"
#. module: hr_timesheet
#: field:hr.sign.in.project,date:0
@ -253,13 +262,13 @@ msgstr "Počáteční datum"
#. module: hr_timesheet
#: view:hr.employee:0
msgid "Categories"
msgstr ""
msgstr "Kategorie"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "novembre"
msgstr ""
msgstr "listopad"
#. module: hr_timesheet
#: model:ir.actions.act_window,help:hr_timesheet.act_hr_timesheet_line_evry1_all_form
@ -267,6 +276,8 @@ msgid ""
"Through Working Hours you can register your working hours by project every "
"day."
msgstr ""
"Pomocí pracovních hodin můžete každý den registrovat vaše pracovní hodiny "
"podle projektu."
#. module: hr_timesheet
#: model:ir.module.module,description:hr_timesheet.module_meta_information
@ -283,6 +294,18 @@ msgid ""
"to set up a management by affair.\n"
" "
msgstr ""
"\n"
"Tento modul realizuje systém časového rozvrhu. Každý zaměstnanec může "
"zadávat a\n"
"sledovat svůj čas strávený na různých projektech. Projekt je \n"
"analytický účet a čas strávený na projektu generuje ceny na\n"
"analytickém účtu.\n"
"\n"
"Je poskytováno mnoho vykazování nad časem a sledováním zaměstnanců.\n"
"\n"
"Je celkově integrováno s module účtování cen. Umožňuje vám\n"
"nastavit správu podle poměru.\n"
" "
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -291,18 +314,18 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "March"
msgstr ""
msgstr "Březen"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Total cost"
msgstr ""
msgstr "Celková cena"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "décembre"
msgstr ""
msgstr "prosinec"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -311,22 +334,22 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "September"
msgstr ""
msgstr "Září"
#. module: hr_timesheet
#: model:ir.model,name:hr_timesheet.model_hr_analytic_timesheet
msgid "Timesheet Line"
msgstr ""
msgstr "Řádek časového rozvrhu"
#. module: hr_timesheet
#: field:hr.analytical.timesheet.users,employee_ids:0
msgid "employees"
msgstr ""
msgstr "zaměstnanci"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "Stats by month"
msgstr ""
msgstr "Statistika podle měsíce"
#. module: hr_timesheet
#: view:account.analytic.account:0
@ -343,25 +366,25 @@ msgstr "Popis práce"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "To be invoiced"
msgstr ""
msgstr "K fakturaci"
#. module: hr_timesheet
#: model:ir.actions.report.xml,name:hr_timesheet.report_user_timesheet
msgid "Employee timesheet"
msgstr ""
msgstr "Časový rozvrh zaměstnance"
#. module: hr_timesheet
#: model:ir.actions.act_window,name:hr_timesheet.action_hr_timesheet_sign_in
#: model:ir.actions.act_window,name:hr_timesheet.action_hr_timesheet_sign_out
msgid "Sign in / Sign out by project"
msgstr ""
msgstr "Přihlášení / Odhlášení podle projektu"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Fri"
msgstr ""
msgstr ""
#. module: hr_timesheet
#: view:hr.sign.in.project:0
@ -375,27 +398,29 @@ msgid ""
"Analytic journal is not defined for employee %s \n"
"Define an employee for the selected user and assign an analytic journal!"
msgstr ""
"Pro zaměstnance %s není určen Analytický deník \n"
"Určete zaměstnance pro vybraného uživatele a přiřaďte analxtický deník!"
#. module: hr_timesheet
#: view:hr.sign.in.project:0
msgid "(Keep empty for current time)"
msgstr ""
msgstr "(Nechejte prázdné pro aktuální čas)"
#. module: hr_timesheet
#: view:hr.employee:0
msgid "Timesheets"
msgstr ""
msgstr "Časové rozvrhy"
#. module: hr_timesheet
#: help:hr.employee,product_id:0
msgid "Specifies employee's designation as a product with type 'service'."
msgstr ""
msgstr "Určuje zařazení zaměstnance jako výrobek s typem 'služba'."
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "août"
msgstr ""
msgstr "srpen"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -404,7 +429,7 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "August"
msgstr ""
msgstr "Srpen"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -413,23 +438,23 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "June"
msgstr ""
msgstr "Červen"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.employee:0
msgid "Print My Timesheet"
msgstr ""
msgstr "Tisknout můj časový rozvrh"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "mars"
msgstr ""
msgstr "březen"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Date"
msgstr ""
msgstr "Datum"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -438,12 +463,12 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "November"
msgstr ""
msgstr "Listopad"
#. module: hr_timesheet
#: constraint:hr.employee:0
msgid "Error ! You cannot create recursive Hierarchy of Employees."
msgstr ""
msgstr "Chyba ! Nemůžete vytvořit rekurzivní Hierarchii zaměstnanců"
#. module: hr_timesheet
#: field:hr.sign.out.project,date:0
@ -457,7 +482,7 @@ msgstr "Koncové datum"
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "October"
msgstr ""
msgstr "Říjen"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -466,35 +491,35 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "January"
msgstr ""
msgstr "Leden"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "Key dates"
msgstr ""
msgstr "Klíčové dny"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:43
#: code:addons/hr_timesheet/report/users_timesheet.py:77
#, python-format
msgid "Thu"
msgstr ""
msgstr "Čt"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "Analysis stats"
msgstr ""
msgstr "Statistiká analýza"
#. module: hr_timesheet
#: model:ir.model,name:hr_timesheet.model_hr_analytical_timesheet_employee
msgid "Print Employee Timesheet & Print My Timesheet"
msgstr ""
msgstr "Tisknout Časový rozvrh zaměstnance & Tisknou můj časový rozvrh"
#. module: hr_timesheet
#: field:hr.sign.in.project,emp_id:0
#: field:hr.sign.out.project,emp_id:0
msgid "Employee ID"
msgstr ""
msgstr "ID zaměstnance"
#. module: hr_timesheet
#: view:hr.sign.out.project:0
@ -504,12 +529,12 @@ msgstr "Obecné informace"
#. module: hr_timesheet
#: model:ir.actions.act_window,name:hr_timesheet.action_hr_timesheet_my
msgid "My Timesheet"
msgstr ""
msgstr "Moje časové rozvrhy"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "Analysis summary"
msgstr ""
msgstr "Souhrn analýzy"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -518,7 +543,7 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "December"
msgstr ""
msgstr "Prosinec"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.employee:0
@ -526,7 +551,7 @@ msgstr ""
#: view:hr.sign.in.project:0
#: view:hr.sign.out.project:0
msgid "Cancel"
msgstr "Storno"
msgstr "Zrušit"
#. module: hr_timesheet
#: model:ir.actions.act_window,name:hr_timesheet.action_hr_timesheet_users
@ -534,30 +559,30 @@ msgstr "Storno"
#: model:ir.actions.wizard,name:hr_timesheet.wizard_hr_timesheet_users
#: model:ir.ui.menu,name:hr_timesheet.menu_hr_timesheet_users
msgid "Employees Timesheet"
msgstr ""
msgstr "Časové rozvrhy zaměstnanců"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "février"
msgstr ""
msgstr "únor"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Information"
msgstr ""
msgstr "Informace"
#. module: hr_timesheet
#: field:hr.analytical.timesheet.employee,employee_id:0
#: model:ir.model,name:hr_timesheet.model_hr_employee
msgid "Employee"
msgstr ""
msgstr "Zaměstnanec"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "avril"
msgstr ""
msgstr "duben"
#. module: hr_timesheet
#: field:hr.sign.in.project,server_date:0
@ -568,23 +593,23 @@ msgstr "Současné datum"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Anlytic account"
msgstr ""
msgstr "Analytický účet"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.employee:0
msgid "This wizard will print monthly timesheet"
msgstr ""
msgstr "Tento průvodce bude tisknout měsíční časový rozvrh"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
#: field:hr.employee,product_id:0
msgid "Product"
msgstr ""
msgstr "Výrobek"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Invoicing"
msgstr ""
msgstr "Fakturace"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -593,34 +618,34 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "May"
msgstr ""
msgstr "Květen"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Total time"
msgstr ""
msgstr "Celkový čas"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "juin"
msgstr ""
msgstr "červen"
#. module: hr_timesheet
#: view:hr.sign.in.project:0
msgid "(local time on the server side)"
msgstr "(lokální čas na serveru)"
msgstr "(místní čas na straně serveru)"
#. module: hr_timesheet
#: model:ir.actions.act_window,name:hr_timesheet.act_hr_timesheet_line_evry1_all_form
#: model:ir.ui.menu,name:hr_timesheet.menu_hr_working_hours
msgid "Working Hours"
msgstr ""
msgstr "Pracovní hodiny"
#. module: hr_timesheet
#: model:ir.model,name:hr_timesheet.model_hr_sign_in_project
msgid "Sign In By Project"
msgstr ""
msgstr "Přihlášení podle projektu"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -629,28 +654,28 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "February"
msgstr ""
msgstr "Únor"
#. module: hr_timesheet
#: field:hr.analytic.timesheet,line_id:0
msgid "Analytic line"
msgstr ""
msgstr "Analytický řádek"
#. module: hr_timesheet
#: model:ir.model,name:hr_timesheet.model_hr_sign_out_project
msgid "Sign Out By Project"
msgstr ""
msgstr "Odhlášení podle projektu"
#. module: hr_timesheet
#: view:hr.analytical.timesheet.users:0
msgid "Employees"
msgstr ""
msgstr "Zaměstnanci"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "octobre"
msgstr ""
msgstr "říjen"
#. module: hr_timesheet
#: code:addons/hr_timesheet/report/user_timesheet.py:40
@ -659,7 +684,7 @@ msgstr ""
#: selection:hr.analytical.timesheet.users,month:0
#, python-format
msgid "April"
msgstr ""
msgstr "Duben"
#. module: hr_timesheet
#: code:addons/hr_timesheet/hr_timesheet.py:176
@ -668,12 +693,14 @@ msgid ""
"No analytic account defined on the project.\n"
"Please set one or we can not automatically fill the timesheet."
msgstr ""
"U projektu nebyl určen analytický účet.\n"
"Prosíme nastavte jej nebo nemůžeme automaticky vyplnit časový rozvrh."
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "mai"
msgstr ""
msgstr "květen"
#. module: hr_timesheet
#: view:account.analytic.account:0
@ -689,13 +716,13 @@ msgstr "Začít pracovat"
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "Stats by user"
msgstr ""
msgstr "Statistiky podle uživatele"
#. module: hr_timesheet
#: code:addons/hr_timesheet/wizard/hr_timesheet_print_employee.py:42
#, python-format
msgid "No employee defined for this user"
msgstr ""
msgstr "Pro tohoto uživatele nebyl určen zaměstnanec"
#. module: hr_timesheet
#: field:hr.analytical.timesheet.employee,year:0
@ -706,23 +733,23 @@ msgstr "Rok"
#. module: hr_timesheet
#: view:hr.analytic.timesheet:0
msgid "Accounting"
msgstr ""
msgstr "Účetnictví"
#. module: hr_timesheet
#: field:hr.analytic.timesheet,partner_id:0
msgid "Partner Id"
msgstr ""
msgstr "Id partnera"
#. module: hr_timesheet
#: view:hr.sign.out.project:0
msgid "Change Work"
msgstr ""
msgstr "Změnit práci"
#. module: hr_timesheet
#: selection:hr.analytical.timesheet.employee,month:0
#: selection:hr.analytical.timesheet.users,month:0
msgid "septembre"
msgstr ""
msgstr "září"
#~ msgid "Choose Users"
#~ msgstr "Uživatelé"

View File

@ -8,44 +8,44 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2011-09-19 04:37+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"PO-Revision-Date: 2011-09-19 09:09+0000\n"
"Last-Translator: Phoxaysy <Unknown>\n"
"Language-Team: Lao <lo@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-19 04:41+0000\n"
"X-Generator: Launchpad (build 13955)\n"
"X-Launchpad-Export-Date: 2011-09-20 04:54+0000\n"
"X-Generator: Launchpad (build 13980)\n"
#. module: knowledge
#: model:ir.ui.menu,name:knowledge.menu_document
msgid "Knowledge"
msgstr ""
msgstr "ການຄຸ້ມຄອງເອກະສານ"
#. module: knowledge
#: help:knowledge.installer,wiki_quality_manual:0
msgid "Creates an example skeleton for a standard quality manual."
msgstr ""
msgstr "ສ້າງໂຄງຮ່າງຕົວຢ່າງເພື່ອຄູ່ມືທີ່່ມີມາດຕະຖານ"
#. module: knowledge
#: view:knowledge.installer:0
msgid "Share information within the company with these specific Addons."
msgstr ""
msgstr "ນຳໃຊ້ຂໍ້ມູນຮ່ວມກັນໄພໃນບໍລິສັດກັບ Addons ເຫລົ່ານີ້."
#. module: knowledge
#: field:knowledge.installer,document_ftp:0
msgid "Shared Repositories (FTP)"
msgstr ""
msgstr "ເກັບຂໍ້ມູນທີ່ໃຊ້ຮ່ວມກັນ(FTP)"
#. module: knowledge
#: model:ir.module.module,shortdesc:knowledge.module_meta_information
msgid "Knowledge Management System"
msgstr ""
msgstr "ລະບົບການຄຸ້ມຄອງເອກະສານ"
#. module: knowledge
#: field:knowledge.installer,wiki:0
msgid "Collaborative Content (Wiki)"
msgstr ""
msgstr "ເນື່ອໃນການເຮັດວຽກຮ່ວມກັນ(wiki)"
#. module: knowledge
#: help:knowledge.installer,document_ftp:0
@ -53,6 +53,9 @@ msgid ""
"Provides an FTP access to your OpenERP's Document Management System. It lets "
"you access attachments and virtual documents through a standard FTP client."
msgstr ""
"ນຳໃຊ້ໂປລແກລມ FTP ເຂົ້າຫາລະບົບການຄູ້ມຄອງອກະສານ OpenERP ຂອງທ່ານ. "
"ມັນຊ່ວຍໃຫ້ທ່ານເຂົ້າຫາຂໍ້ມູນ ແລະ ເອກະສານຕ່າງໆຄືກັນກັບທ່ານຢູ່ໃນໜ່ວຍ computer "
"ຂອງທ່ານເອງ"
#. module: knowledge
#: help:knowledge.installer,document_webdav:0
@ -61,16 +64,18 @@ msgid ""
"you access attachments and virtual documents through your standard file "
"browser."
msgstr ""
"ນຳໃຊ້ໂປລແກລມ WebDAV ເຂົ້າຫາລະບົບການຄູ້ມຄອງອກະສານ OpenERP ຂອງທ່ານ. "
"ມັນຊ່ວຍໃຫ້ທ່ານເຂົ້າຫາຂໍ້ມູນ ແລະ ເອກະສານຕ່າງໆຜ່ານ Browser ທີ່ມີມາດຕະຖານ."
#. module: knowledge
#: view:knowledge.installer:0
msgid "Configure"
msgstr ""
msgstr "ສ້ອມຕັ້້ງ"
#. module: knowledge
#: view:knowledge.installer:0
msgid "title"
msgstr ""
msgstr "ຫົວຂໍ້:"
#. module: knowledge
#: model:ir.module.module,description:knowledge.module_meta_information
@ -78,31 +83,33 @@ msgid ""
"Installer for knowledge-based tools\n"
" "
msgstr ""
"ຕິດຕັ້ງເຄື່ອງມືພື້ນຖານຂອງການຸ້ມຄອງເອກະສານ\n"
" "
#. module: knowledge
#: model:ir.ui.menu,name:knowledge.menu_document_configuration
msgid "Configuration"
msgstr ""
msgstr "ການກໍານົດຄ່າ"
#. module: knowledge
#: model:ir.actions.act_window,name:knowledge.action_knowledge_installer
msgid "Knowledge Modules Installation"
msgstr ""
msgstr "ການຕິດຕັ້ງໂມດຸນຂອງການຄຸ້ມຄອງເອກະສານ"
#. module: knowledge
#: field:knowledge.installer,wiki_quality_manual:0
msgid "Quality Manual"
msgstr ""
msgstr "ຄູ່ມືຄຸນນະພາບ"
#. module: knowledge
#: field:knowledge.installer,document_webdav:0
msgid "Shared Repositories (WebDAV)"
msgstr ""
msgstr "ເກັບຄືນຂໍ້ມູນທີ່ໃຊ້ຮ່ວມກັນ(WebDAV)"
#. module: knowledge
#: field:knowledge.installer,progress:0
msgid "Configuration Progress"
msgstr ""
msgstr "ຄວາມຕໍ່ເນື່ອງໃນການກຳນົດຄ່າ"
#. module: knowledge
#: help:knowledge.installer,wiki_faq:0
@ -110,37 +117,38 @@ msgid ""
"Creates a skeleton internal FAQ pre-filled with documentation about "
"OpenERP's Document Management System."
msgstr ""
"ສ້າງໂຄງຮ່າງຂ້າງໃນFAQ ກ່ອນທີ່ເຕັມດ້ວຍເອກະສານກ່ຽວກັບການຈັດການເອກະສານ ERP"
#. module: knowledge
#: field:knowledge.installer,wiki_faq:0
msgid "Internal FAQ"
msgstr ""
msgstr "ຂ້າງໃນFAQ"
#. module: knowledge
#: model:ir.ui.menu,name:knowledge.menu_document2
msgid "Collaborative Content"
msgstr ""
msgstr "ເນື້ອໃນການເຮັດວຽກຮ່ວມກັນ"
#. module: knowledge
#: field:knowledge.installer,config_logo:0
msgid "Image"
msgstr ""
msgstr "ຮູບພາບ"
#. module: knowledge
#: model:ir.actions.act_window,name:knowledge.action_knowledge_installer
#: view:knowledge.installer:0
msgid "Knowledge Application Configuration"
msgstr ""
msgstr "ການນຳໃຊ້ການຕັ້ງຄ່າເອກະສານ"
#. module: knowledge
#: model:ir.model,name:knowledge.model_knowledge_installer
msgid "knowledge.installer"
msgstr ""
msgstr "ການຕິດຕັ້ງເອກະສານ"
#. module: knowledge
#: view:knowledge.installer:0
msgid "Configure Your Knowledge Application"
msgstr ""
msgstr "ຕັ້ງຄ່າການນຳໃຊ້ເອກະສານຂອງທ່ານ"
#. module: knowledge
#: help:knowledge.installer,wiki:0
@ -148,8 +156,9 @@ msgid ""
"Lets you create wiki pages and page groups in order to keep track of "
"business knowledge and share it with and between your employees."
msgstr ""
"ສ້າງໜ້າWiki ແລະ ໜ້າກູ່ມເພື່ອຕິດຕາມເອກະສານທາງທລະກິດ ແລະ ລະຫວ່າງພະນັກງານຂອງທ່ານ"
#. module: knowledge
#: view:knowledge.installer:0
msgid "Content templates"
msgstr ""
msgstr "ເນື້ອໃນແມ່ແບບ"

View File

@ -1,8 +1,8 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
# Copyright (C) 2011 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@ -15,9 +15,7 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program. If not, see <http://www.gnu.org/licenses/>
#
##############################################################################
import hr_payroll_l10n_be
import hr_contract
import hr_payroll
import l10n_be_hr_payroll

View File

@ -1,8 +1,8 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
# Copyright (C) 2011 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@ -15,19 +15,18 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': 'hr_payroll_l10n_be',
'name': 'Belgian Payroll Rules',
'category': 'payroll',
'init_xml':[],
'author': 'OpenERP',
'author': 'OpenERP SA',
'depends': ['hr_payroll','hr_contract'],
'version': '1.0',
'description': """
Belgian Payroll system.
=======================
Belgian Payroll Rules
=====================
* Employee Details
* Employee Contracts
@ -41,12 +40,12 @@ Belgian Payroll system.
""",
'active': False,
'demo_xml': [
'hr_payroll_l10n_be_demo.xml',
'demo': [
'l10n_be_hr_payroll_demo.xml',
],
'update_xml':[
'hr_payroll_l10n_be_view.xml',
'hr_payroll_l10n_be_data.xml',
'data':[
'l10n_be_hr_payroll_view.xml',
'l10n_be_hr_payroll_data.xml',
'data/hr.salary.rule.csv',
],
'installable': True

View File

@ -2,8 +2,7 @@
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>). All Rights Reserved
# d$
# Copyright (C) 2011 OpenERP SA (<http://openerp.com>). All Rights Reserved
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@ -20,18 +19,7 @@
#
##############################################################################
import time
from datetime import date
from datetime import datetime
from datetime import timedelta
import netsvc
from osv import fields, osv
import tools
from tools.translate import _
import decimal_precision as dp
class hr_contract_be(osv.osv):
_inherit = 'hr.contract'

36
addons/l10n_br/i18n/ar.po Normal file
View File

@ -0,0 +1,36 @@
# Arabic translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-07 06:40+0000\n"
"PO-Revision-Date: 2011-09-22 02:56+0000\n"
"Last-Translator: kifcaliph <kifcaliph@hotmail.com>\n"
"Language-Team: Arabic <ar@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-22 04:48+0000\n"
"X-Generator: Launchpad (build 13996)\n"
#. module: l10n_br
#: model:ir.actions.todo,note:l10n_br.config_call_account_template_brazilian_localization
msgid ""
"Generate Chart of Accounts from a Chart Template. You will be asked to pass "
"the name of the company, the chart template to follow, the no. of digits to "
"generate the code for your accounts and Bank account, currency to create "
"Journals. Thus,the pure copy of chart Template is generated.\n"
" This is the same wizard that runs from Financial "
"Management/Configuration/Financial Accounting/Financial Accounts/Generate "
"Chart of Accounts from a Chart Template."
msgstr ""
#. module: l10n_br
#: model:ir.module.module,description:l10n_br.module_meta_information
#: model:ir.module.module,shortdesc:l10n_br.module_meta_information
msgid "Brazilian Localization"
msgstr "النظام للبرازيل"

View File

@ -46,6 +46,7 @@ class StockMove(osv.osv):
procurement_obj = self.pool.get('procurement.order')
product_obj = self.pool.get('product.product')
wf_service = netsvc.LocalService("workflow")
processed_ids = [move.id]
if move.product_id.supply_method == 'produce' and move.product_id.procure_method == 'make_to_order':
bis = bom_obj.search(cr, uid, [
('product_id','=',move.product_id.id),
@ -55,11 +56,10 @@ class StockMove(osv.osv):
factor = move.product_qty
bom_point = bom_obj.browse(cr, uid, bis[0], context=context)
res = bom_obj._bom_explode(cr, uid, bom_point, factor, [])
dest = move.product_id.product_tmpl_id.property_stock_production.id
state = 'confirmed'
if move.state == 'assigned':
state = 'assigned'
for line in res[0]:
for line in res[0]:
valdef = {
'picking_id': move.picking_id.id,
'product_id': line['product_id'],
@ -70,12 +70,12 @@ class StockMove(osv.osv):
'move_dest_id': move.id,
'state': state,
'name': line['name'],
'location_dest_id': dest,
'move_history_ids': [(6,0,[move.id])],
'move_history_ids2': [(6,0,[])],
'procurements': [],
}
mid = move_obj.copy(cr, uid, move.id, default=valdef)
processed_ids.append(mid)
prodobj = product_obj.browse(cr, uid, line['product_id'], context=context)
proc_id = procurement_obj.create(cr, uid, {
'name': (move.picking_id.origin or ''),
@ -92,7 +92,7 @@ class StockMove(osv.osv):
})
wf_service.trg_validate(uid, 'procurement.order', proc_id, 'button_confirm', cr)
move_obj.write(cr, uid, [move.id], {
'location_id': move.location_dest_id.id,
'location_dest_id': move.location_id.id, # dummy move for the kit
'auto_validate': True,
'picking_id': False,
'state': 'confirmed'
@ -100,7 +100,7 @@ class StockMove(osv.osv):
for m in procurement_obj.search(cr, uid, [('move_id','=',move.id)], context):
wf_service.trg_validate(uid, 'procurement.order', m, 'button_confirm', cr)
wf_service.trg_validate(uid, 'procurement.order', m, 'button_wait_done', cr)
return True
return processed_ids
def action_consume(self, cr, uid, ids, product_qty, location_id=False, context=None):
""" Consumed product with specific quatity from specific source location.
@ -156,16 +156,13 @@ class StockPicking(osv.osv):
#
# Explode picking by replacing phantom BoMs
#
def action_explode(self, cr, uid, picks, *args):
""" Explodes picking by replacing phantom BoMs
@param picks: Picking ids.
@param *args: Arguments
@return: Picking ids.
"""
def action_explode(self, cr, uid, move_ids, *args):
"""Explodes moves by expanding kit components"""
move_obj = self.pool.get('stock.move')
for move in move_obj.browse(cr, uid, picks):
move_obj._action_explode(cr, uid, move)
return picks
todo = move_ids[:]
for move in move_obj.browse(cr, uid, move_ids):
todo.extend(move_obj._action_explode(cr, uid, move))
return list(set(todo))
StockPicking()

View File

@ -77,7 +77,7 @@ class procurement_order(osv.osv):
report_later += 1
for proc in procurement_obj.browse(cr, uid, ids, context=context):
if proc.state == 'exception':
report.append('PROC %d: on order - %3.2f %-5s - %s' % \
report.append(_('PROC %d: on order - %3.2f %-5s - %s') % \
(proc.id, proc.product_qty, proc.product_uom.name,
proc.product_id.name))
report_except += 1
@ -100,7 +100,7 @@ class procurement_order(osv.osv):
report_total += 1
for proc in procurement_obj.browse(cr, uid, report_ids, context=context):
if proc.state == 'exception':
report.append('PROC %d: from stock - %3.2f %-5s - %s' % \
report.append(_('PROC %d: from stock - %3.2f %-5s - %s') % \
(proc.id, proc.product_qty, proc.product_uom.name,
proc.product_id.name,))
report_except += 1
@ -111,15 +111,15 @@ class procurement_order(osv.osv):
end_date = time.strftime('%Y-%m-%d, %Hh %Mm %Ss')
if uid:
request = self.pool.get('res.request')
summary = '''Here is the procurement scheduling report.
summary = _("""Here is the procurement scheduling report.
Start Time: %s
End Time: %s
Total Procurements processed: %d
Procurements with exceptions: %d
Skipped Procurements (scheduled date outside of scheduler range) %d
Start Time: %s
End Time: %s
Total Procurements processed: %d
Procurements with exceptions: %d
Skipped Procurements (scheduled date outside of scheduler range) %d
Exceptions:\n'''% (start_date, end_date, report_total, report_except, report_later)
Exceptions:\n""") % (start_date, end_date, report_total, report_except, report_later)
summary += '\n'.join(report)
request.create(cr, uid,
{'name': "Procurement Processing Report.",

1798
addons/purchase/i18n/da.po Normal file

File diff suppressed because it is too large Load Diff

View File

@ -293,7 +293,7 @@
<para style="terp_default_Right_9">[[ formatLang(line.price_unit, digits=get_digits(dp='Purchase Price') ) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line.price_subtotal, digits=get_digits(dp='Purchase Price') ) ]] [[ o.pricelist_id.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(line.price_subtotal, digits=get_digits(dp='Purchase Price'), currency_obj=o.pricelist_id.currency_id ) ]]</para>
</td>
</tr>
<tr>
@ -339,7 +339,7 @@
<para style="terp_default_9">Net Total :</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, digits=get_digits(dp='Purchase Price') ) ]] [[ o.pricelist_id.currency_id. symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, digits=get_digits(dp='Purchase Price'), currency_obj=o.pricelist_id.currency_id ) ]]</para>
</td>
</tr>
<tr>
@ -352,7 +352,7 @@
<para style="terp_default_9">Taxes :</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Purchase Price') ]] [[ o.pricelist_id.currency_id. symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Purchase Price', currency_obj=o.pricelist_id.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -365,7 +365,7 @@
<para style="terp_default_Bold_9">Total :</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(o.amount_total, digits=get_digits(dp='Purchase Price') ) ]] [[ o.pricelist_id.currency_id. symbol ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(o.amount_total, digits=get_digits(dp='Purchase Price') , currency_obj=o.pricelist_id.currency_id) ]]</para>
</td>
</tr>
</blockTable>

View File

@ -283,7 +283,7 @@
<para style="terp_default_Centre_9">[[ formatLang(line.discount) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line.price_subtotal, digits=get_digits(dp='Sale Price')) ]] [[ o.pricelist_id.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(line.price_subtotal, digits=get_digits(dp='Sale Price'), currency_obj=o.pricelist_id.currency_id) ]] </para>
</td>
</tr>
<tr>
@ -329,7 +329,7 @@
<para style="terp_default_9">Net Total :</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, dp='Sale Price') ]] [[ o.pricelist_id.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, dp='Sale Price', currency_obj=o.pricelist_id.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -342,7 +342,7 @@
<para style="terp_default_9">Taxes :</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Sale Price') ]] [[ o.pricelist_id.currency_id.symbol ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Sale Price', currency_obj=o.pricelist_id.currency_id) ]]</para>
</td>
</tr>
<tr>
@ -355,7 +355,7 @@
<para style="terp_default_Bold_9">Total :</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ formatLang(o.amount_total, dp='Sale Price') ]] [[ o.pricelist_id.currency_id.symbol ]] </para>
<para style="terp_default_Right_9_Bold">[[ formatLang(o.amount_total, dp='Sale Price', currency_obj=o.pricelist_id.currency_id) ]]</para>
</td>
</tr>
</blockTable>

View File

@ -322,6 +322,16 @@ class sale_order(osv.osv):
self.log(cr, uid, id, message)
return True
def onchange_pricelist_id(self, cr, uid, ids, pricelist_id, order_lines, context={}):
print order_lines
if (not pricelist_id) or (not order_lines):
return {}
warning = {
'title': _('Pricelist Warning!'),
'message' : _('If you change the pricelist of this order (and eventually the currency), prices of existing order lines will not be updated.')
}
return {'warning': warning}
def onchange_partner_id(self, cr, uid, ids, part):
if not part:
return {'value': {'partner_invoice_id': False, 'partner_shipping_id': False, 'partner_order_id': False, 'payment_term': False, 'fiscal_position': False}}

View File

@ -112,7 +112,7 @@
<field domain="[('partner_id','=',partner_id)]" name="partner_order_id"/>
<field domain="[('partner_id','=',partner_id)]" name="partner_invoice_id" groups="base.group_extended"/>
<field domain="[('partner_id','=',partner_id)]" name="partner_shipping_id" groups="base.group_extended"/>
<field domain="[('type','=','sale')]" name="pricelist_id" groups="base.group_extended"/>
<field domain="[('type','=','sale')]" name="pricelist_id" groups="base.group_extended" on_change="onchange_pricelist_id(pricelist_id,order_line)"/>
<field name="project_id" context="{'partner_id':partner_id, 'contact_id':partner_order_id, 'pricelist_id':pricelist_id, 'default_name':name}" groups="analytic.group_analytic_accounting" domain="[('parent_id','!=',False)]"/>
<newline/>
<field colspan="4" mode="tree,form,graph" name="order_line" nolabel="1" widget="one2many_list">
@ -492,7 +492,7 @@
</form>
<group colspan="4" col="8" position="replace">
<group colspan="8">
<separator string="How do you generate your costumer invoice ?"/>
<separator string="How do you generate your customer invoice ?"/>
</group>
<group colspan="8" col="2">
<label align="0.0" string="Based on Sales Orders" width="200"/>

View File

@ -1560,7 +1560,7 @@ class stock_move(osv.osv):
'scrapped': fields.related('location_dest_id','scrap_location',type='boolean',relation='stock.location',string='Scrapped', readonly=True),
}
def _check_location(self, cr, uid, ids, context=None):
for record in self.browse(cr, uid, ids, context=context or {}):
for record in self.browse(cr, uid, ids, context=context):
if (record.state=='done') and (record.location_dest_id.usage == 'view' or record.location_id.usage == 'view'):
return False
return True

View File

@ -20,7 +20,6 @@
##############################################################################
from osv import fields, osv
from tools.translate import _
import decimal_precision as dp
@ -186,7 +185,6 @@ class split_in_production_lot(osv.osv_memory):
"""
if context is None:
context = {}
res = super(split_in_production_lot, self).default_get(cr, uid, fields, context=context)
if context.get('active_id'):
move = self.pool.get('stock.move').browse(cr, uid, context['active_id'], context=context)
@ -198,6 +196,8 @@ class split_in_production_lot(osv.osv_memory):
res.update({'qty': move.product_qty})
if 'use_exist' in fields:
res.update({'use_exist': (move.picking_id and move.picking_id.type=='out' and True) or False})
if 'location_id' in fields:
res.update({'location_id': move.location_id.id})
return res
_columns = {
@ -207,6 +207,7 @@ class split_in_production_lot(osv.osv_memory):
'line_ids': fields.one2many('stock.move.split.lines', 'lot_id', 'Production Lots'),
'line_exist_ids': fields.one2many('stock.move.split.lines.exist', 'lot_id', 'Production Lots'),
'use_exist' : fields.boolean('Existing Lots', help="Check this option to select existing lots in the list below, otherwise you should enter new ones line by line."),
'location_id': fields.many2one('stock.location', 'Source Location')
}
def split_lot(self, cr, uid, ids, context=None):
@ -281,6 +282,7 @@ class split_in_production_lot(osv.osv_memory):
'name': line.name,
'product_id': move.product_id.id},
context=context)
move_obj.write(cr, uid, [current_move], {'prodlot_id': prodlot_id, 'state':move.state})
update_val = {}
@ -306,25 +308,11 @@ class stock_move_split_lines_exist(osv.osv_memory):
_defaults = {
'quantity': 1.0,
}
def onchange_lot_id(self, cr, uid, ids, prodlot_id=False, product_id=False,
product_qty=False, uom_id=False, context=None):
if not prodlot_id or not product_id:
return {}
prodlot_obj = self.pool.get('stock.production.lot')
product_obj = self.pool.get('product.product')
uom_obj = self.pool.get('product.uom')
uom = uom_obj.browse(cr, uid, uom_id, context=context)
product_uom = product_obj.browse(cr, uid, product_id, context=context).uom_id
warning = {}
lot_avail_qty = prodlot_obj.browse(cr, uid, prodlot_id, context=context)
quantity = uom_obj._compute_qty_obj(cr, uid, product_uom, lot_avail_qty.stock_available, uom, context=context)
if product_qty > quantity:
warning = {
'title': _('Wrong lot number !'),
'message': _('You are moving %.2f %s products but only %.2f %s are available in this lot.') % (product_qty, uom.name, quantity, uom.name)
}
return {'warning': warning}
def onchange_lot_id(self, cr, uid, ids, prodlot_id=False, product_qty=False,
loc_id=False, product_id=False, uom_id=False):
return self.pool.get('stock.move').onchange_lot_id(cr, uid, [], prodlot_id, product_qty,
loc_id, product_id, uom_id)
stock_move_split_lines_exist()

View File

@ -118,6 +118,7 @@
<field name="product_uom" readonly="1"/>
</group>
</group>
<field name="location_id" invisible="1"/>
<group colspan="4" attrs="{'invisible':[('use_exist','=',True)]}">
<field name="line_ids" colspan="4" nolabel="1">
@ -134,12 +135,12 @@
<group colspan="4" attrs="{'invisible':[('use_exist','!=',True)]}">
<field name="line_exist_ids" colspan="4" nolabel="1">
<tree string="Production Lot Numbers" editable="bottom">
<field name="prodlot_id" string="Lot number" on_change="onchange_lot_id(prodlot_id, parent.product_id, quantity, parent.product_uom)" domain="[('product_id','=',parent.product_id)]"/>
<field name="quantity" on_change="onchange_lot_id(prodlot_id, parent.product_id, quantity, parent.product_uom)"/>
<field name="prodlot_id" string="Lot number" domain="[('product_id','=',parent.product_id)]" on_change="onchange_lot_id(prodlot_id, quantity, parent.location_id, parent.product_id, parent.product_uom)"/>
<field name="quantity" on_change="onchange_lot_id(prodlot_id, quantity, parent.location_id, parent.product_id, parent.product_uom)" />
</tree>
<form string="Production Lot Number">
<field name="prodlot_id" string="Lot number" on_change="onchange_lot_id(prodlot_id, product_id, quantity, parent.product_uom)" domain="[('product_id','=',parent.product_id)]"/>
<field name="quantity" on_change="onchange_lot_id(prodlot_id, parent.product_id, quantity, parent.product_uom)"/>
<field name="prodlot_id" string="Lot number" domain="[('product_id','=',parent.product_id)]" on_change="onchange_lot_id(prodlot_id, quantity, parent.location_id, parent.product_id, parent.product_uom)"/>
<field name="quantity" on_change="onchange_lot_id(prodlot_id, quantity, parent.location_id, parent.product_id, parent.product_uom)" />
</form>
</field>
</group>

View File

@ -504,12 +504,12 @@ class survey_question(osv.osv):
def data_get(self, cr, uid, data, context):
if data and context:
if context.get('line_order',False) and data.get('sequence',0):
if context.get('line_order', False):
lines = context.get('line_order')
seq = data['sequence']
seq = data.get('sequence', 0)
for line in lines:
seq = seq + 1
data.update({'sequence': str(seq)})
data.update({'sequence': seq})
return data
def default_get(self, cr, uid, fields, context=None):

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
"PO-Revision-Date: 2010-10-30 12:31+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2011-09-20 02:17+0000\n"
"Last-Translator: wooer <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-05 05:38+0000\n"
"X-Generator: Launchpad (build 13830)\n"
"X-Launchpad-Export-Date: 2011-09-21 04:50+0000\n"
"X-Generator: Launchpad (build 13996)\n"
#. module: wiki
#: field:wiki.groups,template:0
@ -30,7 +30,7 @@ msgstr "Wiki stranice"
#. module: wiki
#: field:wiki.groups,method:0
msgid "Display Method"
msgstr ""
msgstr "Način prikaza"
#. module: wiki
#: view:wiki.wiki:0
@ -57,7 +57,7 @@ msgstr "Odlomak"
#. module: wiki
#: help:wiki.wiki,toc:0
msgid "Indicates that this pages have a table of contents or not"
msgstr ""
msgstr "Ukazuje da li ove stranice imaju tablicu sadržaja ili ne"
#. module: wiki
#: model:ir.model,name:wiki.model_wiki_wiki_history
@ -90,7 +90,7 @@ msgstr ""
#: view:wiki.wiki:0
#: field:wiki.wiki,write_uid:0
msgid "Last Contributor"
msgstr ""
msgstr "Zadnji suradnik"
#. module: wiki
#: field:wiki.create.menu,menu_parent_id:0
@ -117,7 +117,7 @@ msgstr "Naslov"
#. module: wiki
#: model:ir.model,name:wiki.model_wiki_create_menu
msgid "Wizard Create Menu"
msgstr ""
msgstr "Čarobnjak za stvaranje izbornika"
#. module: wiki
#: field:wiki.wiki,history_id:0
@ -127,13 +127,13 @@ msgstr "Redovi povijesti"
#. module: wiki
#: view:wiki.wiki:0
msgid "Page Content"
msgstr ""
msgstr "Sadržaj stranice"
#. module: wiki
#: code:addons/wiki/wiki.py:236
#, python-format
msgid "Warning !"
msgstr ""
msgstr "Upozorenje !"
#. module: wiki
#: code:addons/wiki/wiki.py:236
@ -159,7 +159,7 @@ msgstr "Opis"
#. module: wiki
#: field:wiki.wiki,review:0
msgid "Needs Review"
msgstr ""
msgstr "Potrebno pregledati"
#. module: wiki
#: help:wiki.wiki,review:0
@ -167,6 +167,7 @@ msgid ""
"Indicates that this page should be reviewed, raising the attention of other "
"contributors"
msgstr ""
"Ukazuje da ovu stranicu treba pregledati, skrećući pozornost drugih suradnika"
#. module: wiki
#: view:wiki.create.menu:0
@ -177,7 +178,7 @@ msgstr "Informacije o izborniku"
#. module: wiki
#: model:ir.actions.act_window,name:wiki.act_wiki_wiki_history
msgid "Page History"
msgstr ""
msgstr "Povijest stranice"
#. module: wiki
#: selection:wiki.groups,method:0