diff --git a/addons/account/account.py b/addons/account/account.py index 4aadaabe929..f05f72577ab 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -181,7 +181,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."""), - 'report_type': fields.function(_get_current_report_type, fnct_inv=_save_report_type, type='selection', string='P&L / BS Category', + 'report_type': fields.function(_get_current_report_type, fnct_inv=_save_report_type, type='selection', string='P&L / BS Category', store=True, selection= [('none','/'), ('income', _('Profit & Loss (Income account)')), ('expense', _('Profit & Loss (Expense account)')), @@ -838,6 +838,7 @@ class account_journal(osv.osv): """ if not ids: return [] + if isinstance(ids, (int, long)): ids = [ids] result = self.browse(cr, user, ids, context=context) diff --git a/addons/account/res_config.py b/addons/account/res_config.py index ee7eb17777f..ea903654a4e 100644 --- a/addons/account/res_config.py +++ b/addons/account/res_config.py @@ -51,10 +51,10 @@ class account_config_settings(osv.osv_memory): 'code_digits': fields.integer('# of Digits', help="No. of digits to use for account code"), 'tax_calculation_rounding_method': fields.related('company_id', 'tax_calculation_rounding_method', type='selection', selection=[ - ('round_per_line', 'Round per Line'), - ('round_globally', 'Round Globally'), + ('round_per_line', 'Round per line'), + ('round_globally', 'Round globally'), ], string='Tax calculation rounding method', - help="If you select 'Round per Line' : for each tax, the tax amount will first be computed and rounded for each PO/SO/invoice line and then these rounded amounts will be summed, leading to the total amount for that tax. If you select 'Round Globally': for each tax, the tax amount will be computed for each PO/SO/invoice line, then these amounts will be summed and eventually this total tax amount will be rounded. If you sell with tax included, you should choose 'Round per line' because you certainly want the sum of your tax-included line subtotals to be equal to the total amount with taxes."), + help="If you select 'Round per line' : for each tax, the tax amount will first be computed and rounded for each PO/SO/invoice line and then these rounded amounts will be summed, leading to the total amount for that tax. If you select 'Round globally': for each tax, the tax amount will be computed for each PO/SO/invoice line, then these amounts will be summed and eventually this total tax amount will be rounded. If you sell with tax included, you should choose 'Round per line' because you certainly want the sum of your tax-included line subtotals to be equal to the total amount with taxes."), 'sale_tax': fields.many2one("account.tax.template", "Default sale tax"), 'purchase_tax': fields.many2one("account.tax.template", "Default purchase tax"), 'sale_tax_rate': fields.float('Sales tax (%)'), @@ -72,40 +72,40 @@ class account_config_settings(osv.osv_memory): 'sale_refund_journal_id': fields.many2one('account.journal', 'Sale refund journal'), 'sale_refund_sequence_prefix': fields.related('sale_refund_journal_id', 'sequence_id', 'prefix', type='char', string='Credit note sequence'), 'sale_refund_sequence_next': fields.related('sale_refund_journal_id', 'sequence_id', 'number_next', type='integer', string='Next credit note number'), - 'purchase_journal_id': fields.many2one('account.journal', 'Purchase Journal'), + 'purchase_journal_id': fields.many2one('account.journal', 'Purchase journal'), 'purchase_sequence_prefix': fields.related('purchase_journal_id', 'sequence_id', 'prefix', type='char', string='Supplier invoice sequence'), 'purchase_sequence_next': fields.related('purchase_journal_id', 'sequence_id', 'number_next', type='integer', string='Next supplier invoice number'), 'purchase_refund_journal_id': fields.many2one('account.journal', 'Purchase refund journal'), 'purchase_refund_sequence_prefix': fields.related('purchase_refund_journal_id', 'sequence_id', 'prefix', type='char', string='Supplier credit note sequence'), 'purchase_refund_sequence_next': fields.related('purchase_refund_journal_id', 'sequence_id', 'number_next', type='integer', string='Next supplier credit note number'), - 'module_account_check_writing': fields.boolean('pay your suppliers by check', + 'module_account_check_writing': fields.boolean('Pay your suppliers by check', help="""This allows you to check writing and printing. This installs the module account_check_writing."""), - 'module_account_accountant': fields.boolean('full accounting features: journals, legal statements, chart of accounts, etc.', + 'module_account_accountant': fields.boolean('Full accounting features: journals, legal statements, chart of accounts, etc.', help="""If you do not check this box, you will be able to do invoicing & payments, but not accounting (Journal Items, Chart of Accounts, ...)"""), - 'module_account_asset': fields.boolean('assets management', + 'module_account_asset': fields.boolean('Assets management', help="""This allows you to manage the assets owned by a company or a person. It keeps track of the depreciation occurred on those assets, and creates account move for those depreciation lines. This installs the module account_asset. If you do not check this box, you will be able to do invoicing & payments, but not accounting (Journal Items, Chart of Accounts, ...)"""), - 'module_account_budget': fields.boolean('budget management', + 'module_account_budget': fields.boolean('Budget management', help="""This allows accountants to manage analytic and crossovered budgets. Once the master budgets and the budgets are defined, the project managers can set the planned amount on each analytic account. This installs the module account_budget."""), - 'module_account_payment': fields.boolean('manage payment orders', + 'module_account_payment': fields.boolean('Manage payment orders', help="""This allows you to create and manage your payment orders, with purposes to * serve as base for an easy plug-in of various automated payment mechanisms, and * provide a more efficient way to manage invoice payments. This installs the module account_payment."""), - 'module_account_voucher': fields.boolean('manage customer payments', + 'module_account_voucher': fields.boolean('Manage customer payments', help="""This includes all the basic requirements of voucher entries for bank, cash, sales, purchase, expense, contra, etc. This installs the module account_voucher."""), - 'module_account_followup': fields.boolean('manage customer payment follow-ups', + 'module_account_followup': fields.boolean('Manage customer payment follow-ups', help="""This allows to automate letters for unpaid invoices, with multi-level recalls. This installs the module account_followup."""), - 'group_proforma_invoices': fields.boolean('allow pro-forma invoices', + 'group_proforma_invoices': fields.boolean('Allow pro-forma invoices', implied_group='account.group_proforma_invoices', help="Allows you to put invoices in pro-forma state."), 'default_sale_tax': fields.many2one('account.tax', 'Default sale tax', @@ -114,7 +114,7 @@ class account_config_settings(osv.osv_memory): help="This purchase tax will be assigned by default on new products."), 'decimal_precision': fields.integer('Decimal precision on journal entries', help="""As an example, a decimal precision of 2 will allow journal entries like: 9.99 EUR, whereas a decimal precision of 4 will allow journal entries like: 0.0231 EUR."""), - 'group_multi_currency': fields.boolean('allow multi currencies', + 'group_multi_currency': fields.boolean('Allow multi currencies', implied_group='base.group_multi_currency', help="Allows you multi currency environment"), } diff --git a/addons/account/security/account_security.xml b/addons/account/security/account_security.xml index e1a29a6edfb..5ca9f26b96b 100644 --- a/addons/account/security/account_security.xml +++ b/addons/account/security/account_security.xml @@ -5,6 +5,7 @@ Invoicing & Payments + Accountant diff --git a/addons/account/security/ir.model.access.csv b/addons/account/security/ir.model.access.csv index a5049c0a345..28bedbf65a1 100644 --- a/addons/account/security/ir.model.access.csv +++ b/addons/account/security/ir.model.access.csv @@ -82,6 +82,7 @@ access_account_entries_report_invoice,account.entries.report,model_account_entri access_account_entries_report_employee,account.entries.report employee,model_account_entries_report,base.group_user,1,0,0,0 access_analytic_entries_report_manager,analytic.entries.report,model_analytic_entries_report,account.group_account_manager,1,0,0,0 access_account_cashbox_line,account.cashbox.line,model_account_cashbox_line,account.group_account_user,1,1,1,1 +access_account_journal_cashbox_line,account.journal.cashbox.line,model_account_journal_cashbox_line,account.group_account_user,1,1,1,0 access_account_journal_view_invoice,account.journal.view invoice,model_account_journal_view,account.group_account_invoice,1,1,1,1 access_account_journal_column_invoice,account.journal.column invoice,model_account_journal_column,account.group_account_invoice,1,1,1,1 access_account_invoice_tax_accountant,account.invoice.tax accountant,model_account_invoice_tax,account.group_account_user,1,0,0,0 diff --git a/addons/account_accountant/__openerp__.py b/addons/account_accountant/__openerp__.py index ea4d7887a15..3c391d8d885 100644 --- a/addons/account_accountant/__openerp__.py +++ b/addons/account_accountant/__openerp__.py @@ -26,15 +26,12 @@ 'sequence': 10, 'summary': 'Financial and Analytic Accounting', 'description': """ -Accounting Access Rights. -========================= +Accounting Access Rights +======================== +It gives the Administrator user access to all accounting features such as journal items and the chart of accounts. -This module gives the Admin user the access to all the accounting features -like the journal items and the chart of accounts. - -It assigns manager and user access rights to the Administrator and only -user rights to Demo user. - """, +It assigns manager and user access rights to the Administrator and only user rights to the Demo user. +""", 'website': 'http://www.openerp.com', 'depends' : ['account_voucher'], 'data': [ diff --git a/addons/account_accountant/account_accountant_data.xml b/addons/account_accountant/account_accountant_data.xml index 5b563017c62..d7ed9c1ad13 100644 --- a/addons/account_accountant/account_accountant_data.xml +++ b/addons/account_accountant/account_accountant_data.xml @@ -5,6 +5,7 @@ + @@ -14,10 +15,9 @@ reload - + - automatic - 100 + open diff --git a/addons/account_analytic_analysis/account_analytic_analysis.py b/addons/account_analytic_analysis/account_analytic_analysis.py index 1b4da45c30f..70beb41ac13 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis.py +++ b/addons/account_analytic_analysis/account_analytic_analysis.py @@ -465,7 +465,7 @@ class account_analytic_account(osv.osv): def open_sale_order_lines(self,cr,uid,ids,context=None): if context is None: context = {} - sale_ids = self.pool.get('sale.order').search(cr,uid,[('project_id','=',context.get('search_default_project_id',False)),('partner_id','=',context.get('search_default_partner_id',False))]) + sale_ids = self.pool.get('sale.order').search(cr,uid,[('project_id','=',context.get('search_default_project_id',False)),('partner_id','in',context.get('search_default_partner_id',False))]) names = [record.name for record in self.browse(cr, uid, ids, context=context)] name = _('Sale Order Lines of %s') % ','.join(names) return { diff --git a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml index ef993b4cd9e..ffbe48f0b19 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml @@ -73,16 +73,16 @@ account.analytic.account form tree,form,graph - {'default_type':'contract', 'search_default_draft':1, 'search_default_pending':1, 'search_default_open':1, 'search_default_renew':1} + {'default_type':'contract', 'search_default_open':1, 'search_default_pending':1} [('type','=','contract')]

Click to create a new contract.

- You can use the way you invoice each contract (timesheet, fixed price, charge employees expenses). -

- A template can be used to set automatically all invoicing information. + Use contracts to follow tasks, issues, timesheets or invoicing based on + work done, expenses and/or sales orders. OpenERP will automatically manage + the alerts for the renewal of the contracts to the right salesperson.

diff --git a/addons/account_analytic_analysis/account_analytic_analysis_view.xml b/addons/account_analytic_analysis/account_analytic_analysis_view.xml index 2e8aab6dcc1..b1ef852f12f 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_view.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_view.xml @@ -18,18 +18,8 @@ - -

-

-
-

- -

-
-
-